Đồ án Phân tích và thiết kế hệ thông quản lý thuốc được viết bằng ngôn ngữ lập trình C#

Chương trình dễ sử dụng,việc tìm kiếm cũng như cập nhật thông tin được dễ dàng, thuận tiện hơn rất nhiều,mối quan hệ giữa các thực thể được xác định chặt chẽ, tránh dư thừa thông tin đảm bảo tính chính xác khi xử lý thông tin. Do giới hạn về thời gian cũng như khả năng của người viết nên chương trình còn hạn chế, đề tài mới chỉ chạy qua lý thuyết,việc xây dựng một hệ thống quản lý thuốc hoàn chỉnh và đầy đủ là chưa thể hoàn thành.

doc60 trang | Chia sẻ: lylyngoc | Lượt xem: 8625 | Lượt tải: 5download
Bạn đang xem trước 20 trang tài liệu Đồ án Phân tích và thiết kế hệ thông quản lý thuốc được viết bằng ngôn ngữ lập trình C#, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Đồ án phân tích và thiết kế hệ thông quản lý thuốc được viết bằng ngôn ngữ lập trình C#. MỤC LỤC LỜI MỞ ĐẦU Hiện nay công nghệ thông tin được xem là một ngành mũi nhọn của các quốc gia, đặc biệt là các quốc gia đang phát triển, tiến hành công nghiệp hóa và hiện đại hóa như nước ta. Sự bùng nổ thông tin và sự phát triển mạnh mẽ của công nghệ kỹ thuật số, yêu cầu muốn phát triển thì phảI tin học hóa tất cả các ngành, các lĩnh vực. Cùng với sự phát triển nhanh chóng về phần cứng máy tính, các phần mềm ngày càng trở nên đa dạng, phong phú, hoàn thiện hơn và hỗ trợ hiệu quả cho con người. Các phần mềm hiện nay ngày càng mô phỏng được rất nhiều nghiệp vụ khó khăn, hỗ trợ cho người dụng thuận tiện sử dụng, thời gian xử lý nhanh chóng và một số nghiệp vụ được tự động hóa cao. Do vậy mà trong việc phát triển phần mềm sự đòi hỏi không chỉ là sự chính xác, xử lý được nhiều nghiệp vụ thực tế mà còn phảI đáp ứng các yêu cầu khác như về tốc độ, giao diện thân thiện, mô hình hóa được thực tế vào máy tính để người sử dụng tiện lợi, quen thuộc, tính tương thích cao, bảo mật cao (đối với các dữ liệu nhạy cảm),… Các phần mềm giúp tiết kiệm một lượng lớn thời gian, công sức của con người, và tăng độ chính xác và hiệu quả trong công việc (nhất là việc sửa lỗi và tự động đồng bộ hóa). Ví dụ như việc quản lý thuốc. Nếu không có sự hỗ trợ của tin học, việc quản lý này phải cần khá nhiều người, chia thành nhiều khâu, mới có thể quản lý được toàn bộ về số thuốc ( thông tin, chất lượng, nhập, xuất,….). Các công việc này đòi hỏi nhiều thời gian và công sức, mà sự chính xác và hiệu quả không cao vì đa số đều làm bằng thủ công rất ít tự động. Một số nghiệp vụ như tra cứu, thông kê, và hiệu chỉnh thông tin khá vất vả. Ngoài ra con có một số khó khăn về vấn đề lưu trữ khá đồ sộ, dễ bị thất lạc, tốn kém, … Trong khi đó các nghiệp vụ này hoàn toàn có thể tin học hóa một cách dễ dàng. Với sự giúp đỡ của tin học, việc quản lý thuốc trở nên đơn giản thuận tiện, nhanh chóng và hiệu quả hơn nhiều. Qua thời gian học tập ở trường chúng em đã đạt được những kiến thức cơ bản về tin học. Em xin đưa ra mô hình phân tích và thiết kế hệ thông quản lý thuốc được viết bằng ngôn ngữ lập trình C#. Vì thời gian và trình độ có hạn chưa qua kinh nghiệm thực tế do vậy báo cáo này chắc chắn có nhiều thiếu sót. Tuy vậy em rất mong nhận được sự ủng hộ của thầy cô giáo và các bạn để em đạt được kết quả tốt nhất. Em xin chân thành cảm ơn thầy giáo Trần Hải Thanh đã nhiệt tình hướng dẫn, giúp đỡ em trong suốt thời gian thực tập để em có thể hoàn thành báo cáo này. Em xin chúc tổ tin sẽ gặt hái được nhiều thành công trong giảng dạy và luôn là ngành thế mạnh của trường . Em xin chúc các thầy các cô luôn mạnh khỏe và công tác tốt. Em xin chân thành cảm ơn! Việt trì Ngày tháng năm2011 Sinh viên thực hiện Ngô Bá Khánh Ngọc CHƯƠNG 1 GIỚI THIỆU KHÁI QUÁT VỀ HỆ QUẢN TRỊ CSDL VÀ NGÔN NGỮ LẬP TRÌNH 1.1 Ngôn Ngữ Truy Vấn CSDL SQL Cơ sở dữ liệu (database) có thể hiểu là nơi chứa dữ liệu. Có nhiều loại cơ sở dữ liệu khác nhau như cơ sở dữ liệu quan hệ, CSDL hướng đối tượng, CSDL phân tán... CSDL quan hệ. Trong mô hình CSDL quan hệ, dữ liệu thường được chia thành các bảng có liên quan với nhau. VD: ta có 2 bảng: Bảng 1 chứa các thông tin về Mã hàng, tên hàng, ngày nhập hàng, giá nhập hàng Bảng 2 chứa các thông tin về Mã hàng, ngày bán hàng, giá bán. Hai bảng này có quan hệ với nhau thông qua mã hàng, tức là chỉ cần có mã hàng ở bảng 2, ta có thể tìm ra tên hàng dựa trên mối liên hệ giữa mã hàng và tên hàng lưu ở bảng 1. Hệ quản trị CSDL là chương trình dùng để quản lý một CSDL nào đó. Chẳng hạn như chương trình Access là một hệ quản trị CSDL để quản lý CSDL Access. Thông thường thì tên của hệ quản trị CSDL gắn liền với tên của loại CSDL. VD như: CSDL Access Hệ quản trị CSDL Access, CSDL MySQL Hệ quản trị CSDL MySQL, CSDL Oracle Hệ quản trị CSDL Oracle. Trong trường hợp này thì người ta thường nhầm lẫn giữa khái niệm CSDL và cấu trúc (dạng nhị phân) của một CSDL do hệ quản trị CSDL quy Người ta gọi các cột trong một bảng là các trường, các dòng trong một bảng là các bản ghi. Mỗi trường sẽ có một kiểu dữ liệu xác định. Đó có thể là kiểu số, kiểu chuỗi, kiểu ngày tháng... VD về một bảng có chứa thông tin người dùng. Bảng này sẽ có tên là NSD, các cột (trường) là: Ma_ND, Ten_ND, Tuoi_ND, Matkhau_ND; trong đó Ma_ND có kiểu nguyên, Ten_ND có kiểu chuỗi, Tuoi_ND có kiểu số, Matkhau_ND có kiểu chuỗi. SQL là một ngôn ngữ được sử dụng trong các ngôn ngữ lập trình để truy vấn thông tin trong CSDL. Điểm mạnh của ngôn ngữ này là cấu trúc đơn giản, có thể nhập lệnh vào dưới dạng các chuỗi văn bản, sau đó chuyển câu lệnh tới các chương trình điều khiển trung gian để truy vấn dữ liệu rồi trả về cho chương trình. Như vậy, mọi thao tác kết xuất, truy vấn hoàn tòan dễ dàng thông qua việc điều khiển chuỗi văn bản có chứa câu lệnh SQL. 1.2 Hệ Quản Trị CSDL Microsoft Access 1.2.1 Các khái niệm cơ bản Microsoft Access là hệ thống quản trị cơ sở dữ liệu trên môi trường Windows, trong đó có sẵn các công cụ hữu hiệu và tiện lợi để sản sinh chương trình cho hầu hết các bài toán thường gặp trong quản trị, thống kê, kế toán. Đối với Access, người dùng không phải viết từng câu lệnh cụ thể như trong Pascal, hay Foxpro mà chỉ cần tổ chức dữ liệu và thiết kế các yêu cầu,công việc cần giải quyết. Microsoft Access cung cấp cho chúng ta căn cứ vào các đối tượng: Bảng (Tables): Có cấu trúc như một tệp. DBF của Fox được dùng để lưu trữ dữ liệu của cơ sở dữ liệu. Một cơ sở dữ liệu thường gồm có nhiều bảng có mối quan hệ với nhau. Truy vấn (Query): Truy vấn là công cụ mạnh nhất của Access dùng để tổng hợp, sắp xếp, tìm kiếm dữ liệu trên các bảng. Khi thực hiện truy vấn sẽ nhận được một tập hợp kết quả thể hiện trên màn hình dưới dạng các bảng gọi là các dynaset. Dynaset chỉ là bảng kết quả trung gian không được ghi trên đĩa và nó sẽ bị xóa khi kết thúc truy vấn. Tuy nhiên, có thể sử dụng một dynaset như một bảng để xây dựng các truy vấn khác. Chỉ với truy vấn chúng ta có thể giải quyết khá nhiều các dạng toán trong quản trị cơ sở dữ liệu. Mẫu biểu (Form): Mẫu biểu thường được dùng để tổ chức cập nhật dữ liệu cho các bảng và thiết kế giao diện nhưng mẫu biểu cũng sẽ cung cấp nhiều khả năng nhập dữ liệu tiện lợi như: Nhập dữ liệu từ một danh sách, nhận các hình ảnh, nhập dữ liệu đồng thời trên nhiều bảng. Mẫu biểu còn cho phép nhập các giá trị riêng lẻ (Không liên quan đến bảng) từ bàn phím. Mẫu biểu còn có khả năng quan trọng khác là tổ chức giao diện, chương trình dưới dạng một bảng, nút lệnh hoặc một hệ thống Menu. Báo biểu (Report): Báo biểu là công cụ tuyệt vời phục vụ cho việc in ấn, nó cung cấp cho ta các khả năng: In dữ liệu dưới dạng bảng In dữ liệu dưới dạng biểu Sắp xếp dữ liệu trưới khi in Sắp xếp và phân nhóm dữ liệu tới 10 cấp. Cho phép thực hiện các phép toán để nhập dữ liệu tổng hợp trên mỗi nhóm. Ngoài ra, dữ liệu tổng hợp nhận được trên các nhóm lại có thể đưa vào các công thức để nhận được sự so sánh, đối chiếu trên toàn báo cáo. In dữ liệu của nhiều bảng có quan hệ trên một báo cáo. Việc lựa chọn font chữ, cỡ chữ, kiểu chữ và việc trình bày trên báo cáo được tiến hành rất đơn giản. Macro: Bao gồm một dãy các hành động (Action) dùng để tự động hóa một loạt các thao tác. Macro thường dùng với mẫu biểu để tổ chức giao diện chương trình. Module: Là nơi chứa các hàm, thủ tục viết bằng ngôn ngữ Basic Access Mặc dù các công cụ mà Access cung cấp đầy đủ, nhưng tất nhiên không thể bao quát được mọi vấn đề đa dạng của thực tế. Các hàm, thủ tục Access Basic sẽ trợ giúp giải quyết các phần việc khó mà công cụ không thể làm nổi. Cơ sở dữ liệu Access: Là một hệ chương trình do Access tạo ra, được lưu giữ trên một tệp có đôi là .mdb, một cơ sở dữ liệu bao gồm 6 đối tượng đã nêu ở trên bảng, truy vấn, mẫu biểu, báo cáo, Macro và Module. Một hệ chương trình do Access tạo ra (hệ chương trình Access) gọi là một Database (Cơ sở dữ liệu) trong các ngôn ngữ truyền thống như C, Pascal, Foxpro, … Một hệ chương trình bao gồm các tệp dữ liệu được tổ chức một cách riêng biệt. Nhưng trong Access thì toàn bộ chương trình và dữ liệu được chứa trong một tệp duy nhất (Tệp có đuôi là .mdb) như vậy thuật ngữ hệ chương trình hay CSDL được hiểu là một tổ chức bao gồm cả chương trình và dữ liệu (Người ta thường gọi ngắn là chương trình thay cho thuật ngữ hệ chương trình). Như vậy, trong Access khi nói đến chương trình hay CSDL thì cũng có nghĩa đó là một hệ phần mềm gồm cả chương trình và dữ liệu di Access tạo ra. Chương trình Access được xây dựng và thực hiện trong môi trường Access. Vì vậy để làm việc với các chương trình trong Access ta phải khởi động chương trình Access. Đối với chương trình quản lý thuốc, việc thiết kế cơ sở dữ liệu và các mối quan hệ bảng với Windows Form rất quan trọng, quyết định chính xác dữ liệu đến hệ thống .Các mối quan hệ của chúng được tạo trong hệ quản trị cơ sở dữ liệu Microsoft Access. 1.2.2 Tạo Bảng Để tạo bảng trong cơ sở dữ liệu Access, ta làm theo các bước sau: Mở cửa sổ Tables, chọn New\ Open \ Design để: Nút New: Dùng để tạo bảng mới Nút Open: Để mở nhập dữ liệu cho bảng được chọn Nút Design: Để xem, sửa cấu trúc bảng được chọn. Có hai cách để tạo bảng ứng với hai lựa chọn: Table Wizards và New Table. Nếu chọn Tables Wizards thì bảng được xây dựng bằng công cụ Wizards của Access và ta chỉ việc trả lời các câu hỏi mà Access yêu cầu. + Nếu chọn New Table thì bảng được thiết kế theo ý của người sử dụng để tạo bảng. Khi chọn New Table xuất hiện cửa sổ dưới đây: Hình 1- Cửa sổ tạo bảng Cửa sổ Tables được chia làm hai phần: Phần trên gồm có 3 cột Filename, Data Type, Description dùng để khai báo các trường của bảng, Mỗi trường khi khai báo trên một dòng. Phần dưới dùng để qui định thuộc tính của Trường. Có thể dùng chuột hoặc ấn phím F6 để di chuyển qua lại giữa hai phần. *Tên Trường (File Name): Là một dãy không khóa gồm 64 ký tự bao gồm chữ cái, chữ số, dấu cách. * Kiểu dữ liệu (Data Type): Gồm các kiểu sau: Text Kiểu kí tự 255 byte Memo Kiểu kí tự 65.535 byte Number Số nguyên, thực Dài: 1,2,4, hoặc 8 byte Data / time Ngày tháng / giờ Dài: 8 byte Currency Tiền tệ Dài: 8 byte Yes / No Logic 1 Bit Ole ĐTnhúng hình ảnh,nhị phân 1 GB Auto Number Số nguyên dài -2.147.483648 -> 2.147.483647 kí tự - Mô tả (Descreption): Để giải thích cho rõ hơn một trường nào đó để cho người đọc dễ hiểu: Văn bản mô tả sẽ được hiển thị khi nhập số liệu cho các trường. Phần dưới thể hiện thuộc tính của các trường được chọn trong phần trên: Tạo khóa chính Lưu bảng - Quan hệ giữa các bảng trong Access Access dùng quan hệ để đảm bảo những ràng buộc toàn vẹn giữa các bảng liên quan trong các phép toán thêm, sửa, xóa mẩu tin. Nguyên tắc đặt quan hệ là chỉ định một hoặc một nhóm trường chứa cùng giá trị trong các mẩu tin có liên quan. Thông thường, thường đặt mối quan hệ giữa khóa chính của một bảng với một trường nào đó của bảng khác, các trường này thường có cùng tên, cùng kiểu. Cách tạo quan hệ: Chọn Menu Tools \ Relationships Nếu thấy cửa sổ Add Table thì chọn Add Table từ Menu Relationships để mở cửa sổ này. Trong cửa sổ Add Table, Chọn các bảng cần tạo quan hệ \ Add \ Chọn Close. Bảng Relationship xuất hiện với các bảng được chọn. Các loại quan hệ: Để ràng buộc toàn ven dữ liệu được thực hiện cần quy định hai loại quan hệ: 1 ---> (Trường trong bảng chính là khóa chính) 1 --->1 (Cả hai trường quan hệ đều là khóa chính) Tính toàn ven tham chiếu: Tại mục Enforce Referential Intergrity Nếu: Trường trong bảng chính là khóa chính (quan hệ 1 ---> hoặc 1 --->1) Các trường quan hệ có cùng kiểu dữ liệu. Cả hình ảnh bao quát thuộc cùng dữ liệu. 1.2.3 : Giới Thiệu Về Ngôn Ngữ Lập Trình C# Như chúng ta biết, ngày nay đang tồn tại 3 phương pháp lập trình: Lập trình có cấu trúc (Programming Structure) Lập trình dựa trên đối tượng (Programming Laseon Object) Lập trình theo hướng đối tượng (Programming Orient Object) Đặc trưng của 3 phương pháp này là: Đặc trưng của lập trình có cấu trúc là phương pháp Top – Down, dữ liệu tách khỏi chương trình trong khi thực hiện chương trình một cách tuần tự. Hạn chế của nó là không sử dụng lại được vì vậy việc bảo trì gặp rất nhiều khó khăn. Đặc trưng của lập trình dựa trên đối tượng và hướng đối tượng là: Có thể phân tích bài toán theo nhiều hướng khác nhau Dễ sử dụng lại các khối dữ liệu Khi thực hiện chương trình, Quyền chủ động thuộc về người sử dụng. Một trong những ngôn ngữ lập trình điển hình cho việc lựa chọn đối tượng đó là ngôn ngữ C#. Nền tảng. Net Nền tảng . Net bao gồm 4 nhóm: Nhóm1: Tập hợp các ngôn ngữ lập trình như C#, VisualBasic. Net, Tập hợp các công cụ phát triển vs.net, Tập hợp các thư viện cho việc xây dựng và phát triển ứng dụng Win, Web. Ngoài ra gồm có Common Laguage Runtime (CLR), ngôn ngữ thực thi dùng chung, để thực hiện các đối tượng, dự án được xây dựng dựa trên bộ khung này. Nhóm2: Tập hợp các Server như SQL server 2000, Exchange 2000, BizTalk 2000, … Chúng cung cấp các chức năng cho việc lưu trữ dữ liệu, quan hệ, thư điện tử, thương mai điện tử… Nh óm 3: Các dịch vụ (.Web services) để phát triển nhanh hơn WebForm. Nhóm 4: Phần . Net dùng cho các thiết bị không phải là 1 máy tính, PC như điện thoại (Phone, Mobile…) các thiết bị game chuyên dụng (game giả tưởng, PS …). Net frame work Net frame work nằm ở tần trên hệ điều hành (bất kì hệ điều hành nào) không chỉ là windows. Net frame work bao gồm: Bốn ngôn ngữ chính thức: C#. VB.net, C++, và Java. Commom Language Runtime (CLR): Ngôn ngữ biên dịch hay ngôn ngữ chạy dùng chung Bộ thư viện Frame Work Classlibrary (FCL): Là các trình hỗ trợ và kiến trúc khung của .Net Windows platform là nền tảng windows, common Language Runtime là 1 ngôn ngữ dùng chung, dùng để gỡ lỗi, kiểm tra kiểu, chấp nhận chương trình, so sánh JIT. Frame Work Base Classes là phần pha cơ sở của các lớp trong bộ . Net. Nó dùng để thêm chuỗi, bảo mật, chấp thuận đối với lớp (class) Data and XML classes: Là tầng CSDL, nó bao gồm: ADO.NET: Là chuỗi liên kết với CSDL kiểu Windows (Access). SQL: Là chuỗi liên kết kiểu SQL Server XSLT: Dùng cho Web Tầng trên cùng là tầng ứng dụng, kiểu Win, Web, Services thực thi . CLR là 1 máy ảo (tương tự máy ảo của Java. CLR kích hoạt đối tượng thực hiện kiểm tra bảo mật cấp phát bộ nhớ, thực thi và khi kết thúc thì thu giọn). Ngôn ngữ trung gian Với .Net chương trình không biên dịch thành tập tin thực thi (EXE…) mà biên dịch thành ngôn ngữ trung gian MSIL (Microsoft Intermediate Language) gọi tắt là IL. Sau đó chúng mới được CRL thực thi. Các tập tin IL biên dịch từ ngôn ngữ C# đồng thời với 3 ngôn ngữ chính còn lại. Khi biên dịch đóng gói dự án, mã nguồn C# được chuyển thành tập tin IL trên đĩa. Và cuối cùng khi chạy chương trình IL được biên dịch lần nữa bằng chương trình JIT( Justf In Time) – Just In Time và khi này kết quả chương trình là mã máy và PC có thể thực thi được. Cấu hình và bảo mật * Cấu hình Là người lập trình yêu cầu máy tính cấp phát quyền và bộ nhớ cho chương trình Cấu hình ở đây có nghĩa là khi chạy chương trình hệ điều hành cần thay đổi hệ thống sao cho chương trình chạy ổn định nhất. Cấu hình bao gồm: Chọn nơi cài đặt nơi cấp phát bộ nhớ. Cấu hình ngôn ngữ sử dụng cho chương trình. VD: Chương trình tiền tệ, ngày tháng.. 1.2 (England) = 1,2 (France) Cấu hình Module, dll, template… gọi chung là tiện ích của chương trình. Cấu hình đăng kí với Windows để sử dụng chương trình. * Bảo mật Bảo mật cho chương trình (Sercutity) là quá trình đóng gói, đặt pass, mã hóa… Đóng gói: Là quá trình đóng mã lệnh thành: Control, class, … Thành DLL để hỗ trợ chương trinh. Chú ý: Các DLL là không thể thiếu trong 1 chương trình lớn nó đã được đóng gói nên không thể mở, sửa chữa, mà chỉ có thể sử dụng cho chương trình nhất định. Đóng gói còn bao gồm: Việc đóng chương trình đã được biên dịch và với các thành phần hỗ trợ (Icon, Data, Picture…) Mã hóa: Dùng trong những chương trình bảo mật cao, những chương trình login nhiều khách hàng… Mã hóa là quá trình mã hóa String, Text, Number (Dưới dạng nhị phân thành 1 chuỗi nhị phân khác không mang giá trị ban đầu, luôn có khóa để giải mã). Một số chức năng C# * Biên dịch và chạy chương trình C# Sau khi có đầy đủ mã nguồn ta tiến hành biên dịch chương trình bằng cách: Sử dụng Phím Ctrl+ Shift + B. Menu \ Build \ BuildSolution và Xem chương trình có lỗi hay không ở cửa sổ output ở cuối màn hình. Khi biên dịch thành công (Không có lỗi) thì nó sẽ lưu lại đuôi cs. Chạy chương trình bằng cách: Ctrl + F5 Hay Debug -> Start without Debugging Chạy chương trình chế độ gỡ rối Cách1: F5 Cách 2: Debug \ Start Muốn chạy từng bước lệnh ấn F11, Muốn chạy vượt qua phương thức F10 * Các kiểu định sẵn Kiểu Kích Thước Kiểu .Net Mô tả- Giá Trị Byte 1 Byte Không dấu (0 … 255) Char 1 Char Mã kí tự unicode Bool 1 Bolean True hoặc False Sbyte 1 Sbyte -127… 127 Short 2 Int16 Có dẫu -32767 … 32767 Ushort 2 Uint16 Không dấu 0 … 65535 Int 4 Int32 Kiểu Int có dấu -214748 … 214748 Uint 4 Uint32 Không dấu 0 … 4294967295 Float 4 Single Số thực (≈ ±1.5*10-45 .. ≈ ±3.4*1038) Double 8 Double Số thực(≈±5.0*10-324.. ≈ ±1.7*10308) Decimal 8 Decimal Số dấu chấm tĩnh 28 kí tự và dấu chấm Long 8 Int64 Sốnguyêndấu23372036…92233 ULong 8 Uint64 Số nguyên không dấu từ 0 … 0*fffffff * Biến và Hằng Biến dùng để lưu dữ liệu mỗi biến thuộc về 1 kiểu DL nào đó. Hằng là 1 biến nhưng giá trị không thay đổi theo thời gian. Biến: Trong C# trước khi dùng 1 biến thì biến đó phải được khởi tạo nếu không trình biên dịch sẽ báo lỗi. Hằng: Khi cần thao tác trên 1 giá trị không đổi ta dùng hằng và khai báo hằng tương tự khai báo biến nhưng có thêm từ khóa const đằng trước. Một khi hằng khởi tạo thì ta không thể thay đổi được nữa. Một số câu lệnh * Lệnh rẽ nhánh không điều kiện Loại 1: Lệnh gọi phương thức Loại 2: Dùng từ khóa goto, break, continue, return, catch, throw * Lệnh rẽ nhánh có điều kiện Các từ khóa: If – Else, While - Do\ While, For – Switch case Lệnh IF – Then – Else Cú pháp: +If (Biểu thức logic) Khối lệnh; + If(Biểu thức logic) – { Khối lệnh 1;} Else – {Khối lệnh 2}; Lệnh Swich Cú pháp: Switch (Biểu thức lựa chọn) { Case Biểu thức hằng. Khối lệnh; Lệnh nhảy; [Default: Khối lệnh; Lệnh nhảy;] } * Lệnh Lặp Lệnh Goto(Tạo bước nhảy) Vòng lặp while Cú pháp: While (Biểu thức Logic) Khối lệnh; Vòng Lặp Do – While Cú pháp: Do Khối lệnh; While (Biểu thức điều kiện) Vòng lặp For Dùng để lặp số lần bằng trong vùng biến đếm cho phép. Cú pháp: Khởi tạo biến đếm; For bien dem; Gia tăng biến đếm; * Toán tử Nhóm Toán Tử Tnsoán Tử Ý nghĩa Toán Học +, -, *, /, % Viết lần lượt +, -, * , / lấy phần dư Logic & | ^ ! ~ && || true false Phép toán logic và thao tác trên bit Ghép chuỗi + Ghép nối 2 chuỗi Tăng (giảm) ++, -- Tăng, giảm toán hạng lên hoặc xuống 1 đ.vị. Dịch bit > Dịch trái, dịch phải Quan hệ = =; !=; ; Bằng, khác, lớn hơn, nhỏ hơn, Gán =, +=, = = Là cách gán( bằng, cộng, trừ, nhân, chia) Chỉ số [ ] Là cách truy xuất phần tử của mảng Ép kiểu ( ) Là ép kiểu của biến… Địa chỉ và đường dẫn ->, [ ], & Là dùng trong con trỏ chỉ tới địa chỉ và đường dẫn của DL * Bộ từ truy xuất Từ Khóa Giả Thích Public Cộng cộng (Truy xuất mọi nơi trong chương trình) Protected Là truy xuất trong nội bộ lớp hoặc các lớp con Internal Là truy xuất trong nội bộ trong chương trình (assembly) Protexted Internal Truy xuất nội trong chương trình(assembly) và trong các lớp con Private Chỉ được truy xuất trong nội bộ lớp 1.3 Bộ Phát Triển .Net Visual Studio 2005 (Graphic User InterfaceConcepts) 1.3.1: Khái niệm Form : Là đối tượng quan trọng nhất trong lập trình windows. Nó là 1 cửa sổ, 1 thông báo lỗi, 1 văn bản,… Form được quản lý bởi System.Exception. Form hoạt động được nhờ System. Exception.Handing. 1.3.2: Windows Do C# được phát triển bởi microsoft nên nó thừa kế và sử dụng Window. - Window là cửa sổ ứng dụng do Microsoft định nghĩa. Window căn bản bao gồm 3 nút bấm hệ thống Minimize, close. - Ngoài ra mỗi 1 ứng dụng Window người lập trình có thể thêm vào các đối tượng của Window. Một số ứng dụng thông dụng hay có ở chương trình. Label TextBox Button MenuBar ListBox Combobox … 1. Label: - Định Nghĩa: Nhãn là những kí tự để chú thích cho những đối tượng hoạt động khác như TextBox, Button, Groupbox… Thuộc Tính: Name: (lbl)Là tên của nhãn không được trùng với bất kì tên của đối tượng nào khác trong Form Text: Thuộc tính kí tự là những gì mà nhãn hiển thị lên cho người dùng Visible (ẩn/ hiện): Nếu giá trị là True thì nhìn thấy nhãn, False: thì không nhìn thấy nhãn (ẩn chứ không mất đi). Ngoài ra, Còn có các thuộc tính chung với các control. 2. TextBox: Định Nghĩa: Hộp văn bản dùng để hiển thị, dùng để người dùng nhập kí tự sau đó chương trình xử lý. Thuộc Tính: Name: (txt) Tên của hộp văn bản không được trùng với bất kì tên nào khác của đối tượng trong Form. Text: Là kí tự xuất hiện trong văn bản: Thuộc tính này dùng để người lập trình quản lý Text để xử lý trong mã lệnh. Visible (Giống với Label) Enable: Nếu giá trị False người dùng không thao tác được với TextBox Password \ Password Chars: Mặc định là False. Nếu đặt là False thì hộp nhập Password. Khi đó nhập kí tự vào Password chars để hiển thị kí tự đó thay cho kí tự người dùng nhập vào. Focus: Là thuộc tính đặt thiết lập con trỏ có xuất hiện đầu tiên tại đó hay không. Ngoài ra, Còn có các thuộc tính chung với các control. 3. Button (Nút Bấm) Định Nghĩa: Là 1 đối tượng văn bản trong Windows Form. Nút bấm dùng để điều khiển chương trình làm 1 điều gì đó khi người dùng bấm nút hoặc nhả nút, kích nút. Thuộc Tính: (btn) Là tên của nút bấm không được trùng bất kì tên nào khác trong Form. Text: Là kí tự được ghi trên nút bấm có tác dụng chú thích cho người dùng tác dụng của nút bấm. Thuộc tính này là ReadOnly. Visible, Enable (giống TextBox). Ngoài ra, Còn có các thuộc tính chung với các control. 4. MenuBar (Thanh Thực Đơn) Định nghĩa: là đối tượng căn bản với Windows. Lập trình Windows sử dụng thuộc tính menu để lập ra thanh thực đơn. Menu là khi kéo thả nó vào Form nó không nằm trên Form trong mà nó nằm như 1 đối tượng dữ liệu tương đương với ADO: Kết nối CSDL, Dataset… Thuộc Tính: + Name (giống TextBox) Text của Button trong Menu: về bản chất Menu là tập hợp các nút bấm xếp thành 1 thực đơn vì vậy thuộc tính Text là mô tả của mỗi nút bấm trong thực đơn được viết theo qui ước chuẩn. VD: mnufile Đối tượng còn lại nút bấm tương tự với các đối tượng khác. ListBoxes (Hộp Danh Sách): Định Nghĩa: Hộp Danh sách là 1 đối tượng của Form đưa ra danh sách các biến đầu vào. Công Dụng: Dùng để liệt kê và cho phép sử dụng lựa chọn trong danh sách Thuộc Tính: + Name: Tên của hộp liệt kê không được trùng bất kì đối tượng nào trong Form được đặt theo qui ước chuẩn VD: lbx sothich; Items: Đối tượng trong ListBox do người lập trình lập vào hoặc đổ từ CSDL Sorted: Sắp xếp trong listbox mang 2 giá trị True \ False Selection Mode: Kiểu chọn lựa Items trong listbox mang 4 giá trị. None: Không chọn lựa One: Chọn lựa 1 giá trị MultiExtended: Chọn lựa nhiều giá trị mở rộng. Các thuộc tính khác tương tự với đối tượng khác. 6. ComBobox (Hộp Kết Hợp): Khái Niệm: Là đối tượng trong lập trình WinDows Form nó chứa các Item như ListBox, thường được khi người lập trình sử dụng chọn 1 đối tượng. Thuộc Tính: + Name: Tên ComBoBox không được trùng với bất kì đối tượng nào khác trong Form. Được đặt theo qui ước chuẩn. VD: cmb sothich Thuộc tính khác tương tự với đối tượng khác. Ngoài ra còn có các ứng dụng đối tượng khác…. CHƯƠNG 2 KHẢO SÁT VÀ PHÂN TÍCH HỆ THỐNG Hiện Trạng Thực Tế: 2.1.1 Giới thiệu chung về công ty thuốc Hoàng Công – Việt Trì – Phú Thọ Hệ thống quản lý thuốc chúng tôi khảo sát thực tế tại Công Ty Cổ Phần Thương Mại Dịch Vụ Dược Phẩm Hoàng Công- Việt Trì- Phú Thọ Sau 1 thời gian thực tế khảo sát, nghiên cứu hệ thống trên những nhân tố cụ thể. Thông tin thực tế thu được: Đơn vị: Công Ty Cổ Phần Thương Mại Dịch Vụ Dược Phẩm Hoàng Công a. Mức lãnh đạo: Ban Giám đốc Công ty có 20 nhân viên Bao gồm: 3 bộ phận: Bộ phận kinh doanh Bộ phận kho Bộ phận bán lẻ Mức quản lý: Ban Giám đốc. Mức điều phối: Thủ kho, người quản lý, người bán thuốc Phạm vi hoạt động của Công ty: Hoạt động phân phối: Cung cấp thuốc cho các đơn vị: Bệnh viện. Trạm y tế xã phường. Các đại lý thuốc. Hoạt động bán hàng. Nhóm thuốc STT Tên Nhóm 1 Nhóm thuốc Đường Hô Hấp. 2 Nhóm thuốc Mắt. 3 Nhóm thuốc Kháng Sinh. 4 Nhóm thuốc Tiêu Hoá,Gan, Mật. 5 Nhóm thuốc Tai, Mũi, Họng, Răng. 6 Nhóm thuốc Tim Mạch. 7 Nhóm thuốc Vitamin. 8 Nhóm thuốc Xương Khớp, Ngoài Da. Mỗi nhóm thuốc được chia theo thể loại STT Tên loại 1 Thực Phẩm Chức Năng 2 Đông Dược 3 Thuốc Kê Đơn 4 Thuốc Không Kê Đơn Mức điều phối (Thủ kho, Người quản lý, Người bán thuốc) Bộ phận bán hàng: Bán lẻ chỉ có 1 dược sỹ bán thuốc. Người bán thuốc lập dự trụ về hàng gửi tới bộ phận kinh doanh. Sơ đồ quy trình bán thuốc Giao tiếp khách hàng (tiếp nhận đơn thuốc) Kiểm soát đơn thuốc (hình thức, nội dung đơn) Hướng dẫn, tư vấn sử dụng thuốc Bán thuốc Ghi chép, lưu tài liệu Bộ phận kinh doanh. Các đơn vị lập dự trù yêu cầu mua thuốc đến Công ty. Bộ phận kinh doanh sẽ dựa vào phiếu dự trù lập phiếu nhập hàng. Yêu cầu hàng phải nguyên đai, nguyên kiện, tem bảo hành ... Sau 2 đến 4 hôm thì hàng về có kèm theo chứng từ hoá đơn Bộ phận quản lý kho gồm: Thủ kho và Tổ đóng hàng Khi hàng về thủ kho cùng với bộ phận kinh doanh làm nhiệm vụ kiểm hàng sau đó nhận hàng và nhập hàng vào kho. Tổ đóng hàng và thủ kho phân loại thuốc và thiết bị rồi đóng gói. Thủ kho lập phiếu xuất gửi cho bộ phận kinh doanh để làm hóa đơn. Sau đó khớp hoá đơn với phiếu xuất. Xuất hàng có kèm theo chứng từ hoá đơn Các chứng từ hoá đơn được lưu 2 bản 2.2.2 Mục Đích Đề Tài Cùng với sự phát triển của xã hội thì công nghệ thông tin đã và đang phát triển khai thác các ứng dụng trên địa bàn toàn quốc, dần tiến tới tin học hoá tất cả mọi hoạt động trong mọi lĩnh vực của các ngành nghề. Máy tính thật sự là công cụ đáng tin cậy. Không thể thiếu được trong mọi hoạt động của xã hội trong thời đại thông tin hiện nay. Chính vì vậy, việc quản lý thuốc cũng phải được tin học hóa toàn bộ. Dựa vào việc khảo sát thực tế đã thu được em nhân thấy việc quản lý vẫn theo lối thủ công để quản lý sổ sách, giấy tờ chậm chạp trong việc khai báo thông tin và chiếm nhiều thời gian lưu trữ . Vì vậy mục đích xây dựng đề tài này là Giảm bớt thời gian ghi chép, không gây nhầm lẫn Thực hiện tìm kiếm sửa dữ liệu rất nhanh Mọi công việc cập nhật, điều chỉnh, tìm kiếm tra cứu đều được thực hiện nhanh chóng, chính xác, tiết kiệm thời gian. Người bán thuốc không phải nhớ nhiều khi tư vấn thuốc cho khách hàng Công việc của nhà quản lý thuốc không còn vất vả mà hiêu suất công việc lại cao 2.2.3 Phương Pháp Tiếp Cận Và Lựa Chọn Công Nghệ. Một phần của nghệ thuật lập trình là việc lựa chọn một trong những ngôn ngữ phù hợp nhất với bài toán cần giải quyết. Các ngôn ngữ lập trình khác nhau đòi hỏi lập trình viên phải xử lý các chi tiết ở các mức độ khác nhau khi cài đặt các thuật toán. Lập trình hướng đối tượng, công nghệ visual đã cho lập trình viên một lựa chọn lí tưởng để triển khai ứng dụng. Trong rất nhiều sự lựa chọn này Visual C#.NET là một bước đột phá mới của Microsoft. Visual C#.NET  là một ngôn ngữ lập trình đơn giản, hiện đại, hướng đối tượng an toàn kiểu (type-safe) và có nguồn gốc từ các ngôn ngữ C và C++, rất thân thiện với người lập trình. C# là kết quả của việc kết hợp hiệu nǎng cao của Visual Basic và sức mạnh của C++. 2.2.4 Tính Khả Dụng Của Chương Trình Việc cập nhật dữ liệu nhập, xuất trên sổ sách giấy tờ, rất chậm chạp mất nhiều thời gian, ảnh hưởng đến chất lượng của thuốc. Vì vậy cần dựa vào những đặc điểm cơ bản của hệ thống quản lý thuốc của công ty, để thực hiện Quản lý những thông tin sau: Quản lý chất lượng của thuốc: Kiểm tra được hạn sử dụng Đưa ra được danh sách thuốc hết hạn Quản lý việc nhập thuốc Quản lý việc xuất thuốc Đưa ra được danh sách thuốc nên xuất để tránh việc thuốc hết hạn Quản lý kho Đáp ứng được việc bán thuốc nhanh nhất Giảm được việc nhớ nội dung thuốc cho người bán hàng khi tư vấn cho khách hàng Thống kê được việc nhập, xuất thuốc và thiết bị theo thời gian Tìm kiếm thông tin về thuốc, về thiết bị, về nhà cung cấp Báo cáo việc nhập, xuất thuốc và thiết bị bằng biểu đồ 2.2.5 Nhiệm Vụ Và Kết Quả Đạt Được * Nhiệm vụ Xây dựng chương trình quản lý thuốc * Công việc Công việc Khảo sát hệ thống Phân tích thiết kế hệ thống ở mức khung cảnh, mức đỉnh Thiết kế chức năng ở mức dưới đỉnh và thiết kế sơ đồ luồng dữ liệu Thiết kế cơ sở dữ liệu Thiết kế chương trình Thiết kế Form Viết Code Kiểm thử chương trình * Các kết quả đạt được sau khi thực tập đề tài Tìm hiểu được quy trình quản lý thuốc và quản lý việc nhập xuất Từ đó đưa công nghệ thông tin vào quản lý hệ thống nhằm giảm bớt nhân lực và tiết kiệm thời gian Tìm hiểu thêm ,bổ sung kiến thức về tin học Xây dựng cơ sở dữ liệu Access Lập trình bằng ngôn ngữ C# Đóng gói chương trình bằng dự án đóng gói có trong phần mềm Visual Studio. 2.3 Mô Tả Bài Toán Bài toán Quản Lý Thuốc ở Công Ty Cổ Phần Thương Mại Dịch Vụ Dược Phẩm Hoàng Công Các đơn vị lập bản dự trù (Phiếu dự trù) yêu cầu mua thuốc và thiết bị gửi đến công ty. Công ty tổng hợp số liệu viết phiếu nhập (Phiếu nhập) gửi đến nhà cung cấp (Nhà CC). Sau 2 đến 4 hôm thì hàng về. Khi hàng về thủ kho và người quản lý kiểm tra hàng sau đó nhận hàng và nhập hàng vào kho. Thủ kho phân loại thuốc theo nhóm thuốc, thể loại. Sau đó nhập chi tiết về số lô, số sêri, nhà cung cấp, ngày sản xuất, hạn sử dụng, dạng thuốc, đơn vị tính, đơn giá Tổ đóng hàng đóng gói trong khi đó thủ kho lập phiếu xuất gửi cho người quản lý Khách hàng yêu cầu mua thuốc có thể là thuốc kê đơn (hoặc không kê đơn). Người bán thuốc tìm thuốc theo yêu cầu rồi tư vấn. Khách hàng có thể chọn lựa thuốc phù hợp với mình để mua. Người bán hàng tính tiền và lưu thông tin về thuốc đã bán vào kho dữ liệu. Đến cuối tháng tổng hợp số lượng thuốc đã nhập, số lượng thuốc đã xuất. Sau đó cứ mỗi quý tổng hợp lại để có thể đánh giá được tình hình kinh doanh của công ty. 2.4 PHÂN TÍCH THIẾT KẾ HỆ THỐNG Quản lý thuốc 2.4.1 Sơ đồ phân cấp chức năng Tìm kiếm Thống kê Bán hàng Cập nhật thông tin Quản lý nhập,xuất Thống kê Cập nhật TT về Thuốc Tìm kiếm Thuốc và T/bị Bán thuốc Xuất hàng Nhập hàng Kiểm tra hạn sử dụng Tư vấn Cập nhật TT Nhóm thuốc Tìm kiếm Nhà cung cấp Cập nhật TT về Thiết bị Cập nhật TT Nhà cung cấp 2.4.2 Sơ đồ mức ngữ cảnh Hệ thống quản lý Cửa Hàng Thuốc Cấp hàng theo Y/C Nhà Cung Cấp Y/C Quản Lý Quản Lý Cửa Hàng Thuốc Đáp ứng yêu cầu Báo Cáo Đáp ứng yêu cầu Y/C mua thuốc Khách Hàng Thủ kho 2.4.3. Sơ đồ phân rã mức đỉnh Cập nhật thông tin Bán hàng Thống kê Quản lý nhập,xuất Tìm kiếm Nhập Xuất Thuốc Nhà cung cấp Số liệu thuốc Nhập Xuất Nhà cung cấp thuốc Báo cáo KQ Y/C TKiếm Báo cáo KQ Yêu cầu TKê Báo cáo KQ Yêu cầu bán Trả về TT Y/cầu cập nhật Y/cầu nhập, xuất Báo cáo KQ Bộ Phận Quản Lý Cửa Hàng Thuốc Thuốc 2.5 Sơ đồ luồng dữ liệu mức dưới đỉnh 2.5.1 Chức năng Nhập xuất Bộ Phận Quản Lý Cửa hàng thuốc Nhập hàng Xuất hàng Y/c SL nhập hợp số Thông tin Báo cáo KQ hợp số Thông tin Y/c số liệu xuất hợp số Thông tin Báo cáo KQ hợp số Thông tin xuất Y/c nhập dự trù hợp số Thông tin Báo cáo KQ Nhập Dự trù Dự trù hàng 2.5.2 Chức năng cập nhật thông tin Thuốc thông tin thuốc thông tin nhóm thuốc Bộ Phận Quản Cửa hàng Thuốc Y/cầu cập nhật hợp số Thông tin Báo cáo KQ hợp số Thông tin Y/cầu cập nhật hợp số Thông tin Báo cáo KQ hợp số Thông tin Nhóm thuốc Thông tin thiết bị nhà cung cấp Thiết bị nhà cung cấp Y/cầu cập nhật hợp số Thông tin Báo cáo KQ hợp số Thông tin Y/cầu cập nhật hợp số Thông tin Báo cáo KQ hợp số Thông tin 2.5.3 Chức năng bán hàng Tư vấn khách hàng Tư liệu Thuốc bán hàng Bộ phận Quản Lý cửa hàng Thuốc Y/c bán Báo cáo KQ hợp số Thông tin số liệu hợp số Thông tin 2.5.4 Chức năng thống kê Bộ Phận Quản Lý Cửa hàng Thuốc TKê số lượng nhập TKê số lượng xuất Y/cầu thống kê Y/cầu thống kê Đáp ứng Y/cầu Đáp ứng Y/cầu Y/cầu thống kê TKê Thuốc hết hạn Nhập Xuất Thuốc Đáp ứng Y/cầu 2.5.5 Chức năng tìm kiếm Tim kiếm thuốc,thiết bị Tìm kiếm nhà cung cấp Y/c tìm kiếm Thông tin Đưa ra KQ Thông tin Bộ Phận Quản Lý Cửa hàng Thuốc Đưa ra KQ Y/cầu thống kê hợp số Thông tin Thuốc Thiết bị nhà cung cấp 2.6 Lập Bảng Cơ Sở Dữ Liệu 2.6.1 Thiết kế và xây dựng bảng BẢNG 1: Tạo Đăng Nhập BẢNG 2: Tạo Bảng Hoá Đơn Nhập BẢNG 3: Tạo Bảng Hoá Đơn Xuất BẢNG 4: Tạo Bảng Nhà Cung Cấp BẢNG 5: Tạo Bảng Nhóm Thuốc BẢNG 6 : Tạo Bảng Dự Trù BẢNG 7: Tạo Bảng Thể Loại BẢNG 8: Tạo Bảng Thiết Bị BẢNG 9: Tạo Bảng Thuốc 2.7 Tạo liên kết giữa các bảng: CHƯƠNG 3 GIỚI THIỆU HOẠT ĐỘNG CỦA PHẦN MỀM 3.1 Quy Trình Thực Thi Phần Mềm Khi chạy, chương trình sẽ tự động vào Form (Form chính của chương trình ) Luôn không cần phải đăng nhập vì mặc định người dùng vào là khách. Nhập thuốc, xuất thuốc, nhập thông tin của thuốc, thiết bị, nhà cung cấp, nhóm thuốc,bán lẻ, nội dung thuốc yêu cầu phải đăng nhập tên và mật khẩu. 3.2 Giao Diện Chính (MAIN FORM) Trong Menu Hệ thống có các chức năng như sau: Trong Menu Quản lý nhập xuất có chức năng như sau: Trong Menu Cập nhật thông tin có chức năng như sau: Trong Menu Bán hàng có chức năng sau: Trong Menu Thống kê có chức năng sau: Trong Menu Tìm kiếm có chức năng sau: 3.3Giới Thiệu Các Form Làm Việc Form Đăng nhập: Form Kiểm Tra Hạn Sử Dụng Form Nhập Hàng Form xuất hàng Form Thêm Mới Thuốc Form Thêm Nội Dung Thuốc Form Thêm Mới Nhà Cung Cấp Form Thêm Mới Thiết Bị Form Nhóm Thuốc Form Bán Hàng Form Tư Vấn Form Thống Kê Form Tìm Kiếm KẾT LUẬN Qua thời gian học tập tại trường đã thu được những kiến thức cơ bản về Tin học.Cùng với sự giúp đỡ nhiệt tình của các thầy cô và các bạn. Đặc biệt là thầy Trần Hải Thanh,Em đã hoàn thành báo cáo thực tập tốt nghiệp với đề tài "Chương Trình Quản Lý Thuốc"của công ty cổ phần thương mại Khánh Ngọc. 1. Ưu, Nhược Điểm Của Chương Trình. Chương trình dễ sử dụng,việc tìm kiếm cũng như cập nhật thông tin được dễ dàng, thuận tiện hơn rất nhiều,mối quan hệ giữa các thực thể được xác định chặt chẽ, tránh dư thừa thông tin đảm bảo tính chính xác khi xử lý thông tin. Do giới hạn về thời gian cũng như khả năng của người viết nên chương trình còn hạn chế, đề tài mới chỉ chạy qua lý thuyết,việc xây dựng một hệ thống quản lý thuốc hoàn chỉnh và đầy đủ là chưa thể hoàn thành. 2. Hướng Phát Triển Của Đề Tài. Mặc dù chương tình dựa trên lý thuyết là chủ yếu, chưa qua thực tế, còn đơn giản và có nhiều thiếu sót nhưng đồ án này có thể làm tiền đề để mở rộng cho một chương trình hoàn chỉnh về Quản Lý Thuốc trong thực tế, hệ thống phải lưu trữ số lượng lớn về thông tin thuốc, thiết bị, nhóm thuốc,.. 3. Những Bài Học Rút Ra Trong Quá Trình Thực Tập Tốt Nghiệp. Tuy nhiên qua quá trình học hỏi, tìm hiều, phân tích thiết kế cũng như xây dựng chương trình em đã cố gắng đê xây dựng một chương trình tương đối xác thực. Đây cũng là thành công của em trước khi kết thúc khoá học. Mặc dù vẫn còn mắc rất nhiều khuyết điểm, em rất mong được sự giúp đỡ, quan tâm và chỉ bảo tận tình của các thầy cô giáo và các bạn để báo cáo được thành công hơn. Một lần nữa em xin chân thành cảm ơn các thầy cô giáo và các bạn đã nhiệt tình giúp đỡ em trong thời gian qua. Điện thoại: 090 22 33 909

Các file đính kèm theo tài liệu này:

  • docbaocaongobakhanhngoc_8019.doc