Phân tích và thiết kế hệ thống thông tin quản lý bệnh nhân tại bệnh viện đa khoa tỉnh Khánh Hòa

Lời nói đầu Ngày này cùng với sự phát triển vượt bậc của khoa học kỹ thuật thì công nghệ thông tin là một trong những lĩnh vực có nhiều đóng góp thiết thực nhất, công nghệ thông tin có mặt trong hầu hết các lĩnh vực của cuộc sống đặc biệt công nghệ thông tin là một công cụ hỗ trợ rất đắc lực trong công tác quản lý. Chúng ta dễ dàng thấy được việc đưa tin học vào trong quản lý kinh doanh là một trong những ứng dụng quan trọng trong rất nhiều ứng dụng cơ sở dữ liệu. Nhờ vào công tác tin học hóa mà công việc quản lý và điều hành doanh nghiệp tỏ ra rất nhanh chóng và hiệu quả. Chính vì lẽ đó mà cơ sở dữ liệu như là một giải pháp hữu hiệu nhất cho các doanh nghiệp có thể tồn tại và phát triển một cách nhanh chóng. Bệnh viện đa khoa tỉnh Khánh Hòa là một trong những trung tâm khám chữa bệnh lớn nhất tỉnh Khánh Hòa. Do đó nhu cầu ứng dụng cơ sở dữ liệu trong việc quản lý bệnh nhân là hết sức thiết thực. Vì vậy em chọn đề tài Phân tích và thiết kế hệ thống thông tin quản lý bệnh nhân tại bệnh viện đa khoa tỉnh Khánh Hòa làm đề tài thực tập tốt nghiệp. Hệ thống được phân tích và thiết kế theo phương pháp có cấu trúc và được cài đặt trên môi trường Visual Basic 6.0 và được thiết kế dữ liệu dựa trên ngôn ngữ SQL Server 2000, các chương tiếp theo sẽ nói rõ hơn về vấn đề này Mặc dù có nhiều cố gắng nhưng vốn kiến thức chưa sâu nên không thể tránh khỏi những thiếu sót. Rất mong được sự góp ý của quý thầy cô,anh chị cùng các bạn để báo cáo được hoàn thiện hơn. Tôi xin chân thành cảm ơn phòng Kế Hoạch Tổng Hợp bệnh viện đa khoa tỉnh Khánh Hòa, quý thầy cô và các bạn đã tận tình giúp đỡ tôi hoàn thành báo cáo này đặc biệt là cô Nguyễn Kim Anh người trực tiếp hướng dẫn em trong suốt thời gian thực tập vừa qua.

doc47 trang | Chia sẻ: lvcdongnoi | Lượt xem: 2685 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Phân tích và thiết kế hệ thống thông tin quản lý bệnh nhân tại bệnh viện đa khoa tỉnh Khánh Hòa, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
®Çy ®ñ ®Ó t¹o b¶ng nh­ sau: CREATE TABLE [Database_name.[owner].table_name ( [[DEFAULT ] [[IDENTITY (seed, increament) [NOT FOR REPLICATION]]]] [ROWGUIDCOL] [NULL | NOT NULL] [] [column_name as computed_columns_expression ..... ) ON {> | DEFAULT} Tªn cét (Column name): Tªn cét còng gièng nh­ tªn b¶ng vµ tªn c¬ së d÷ liÖu kh«ng cã kho¶ng tr¾ng, kh«ng b¾t ®Çu b»ng ch÷ sè vµ c¸c ký tù ®Æc biÖt, ... tuy nhiªn chóng ta nªn ®Æt tªn ng¾n gän dÔ nhí KiÓu d÷ liÖu (Data type): Khi x©y dùng c¬ së d÷ liÖu tÊt c¶ c¸c tr­êng trong b¶ng cÇn ph¶i cã kiÓu d÷ liÖu cô thÓ. VÊn ®Ò lµ chän d÷ liÖu nµo cho phï hîp víi d÷ liÖu mµ ng­êi dïng sÏ nhËp vµo. Gi¸ trÞ mÆc nhiªn (Default): G¸n gi¸ trÞ mÆc nhiªn cho nh÷ng cét kh«ng cã gi¸ trÞ. IDENTITY: §©y lµ gi¸ trÞ cùc kú quan träng trong SQL Server. Khi chóng ta muèn mét cét cã gi¸ trÞ tù ®éng t¨ng. NULL | NOT NULL: Lµ tr¹ng th¸i cña mét cét cã cho phÐp null hay kh«ng. Rµng buéc (Column constrain): KiÓm tra d÷ liÖu khi d÷ liÖu míi ®­îc ®­a vµo cét hoÆc d÷ liÖu bÞ thay ®æi. Rµng buéc b¶ng d÷ liÖu (TABLE CONSTRAINTS): Rµng buéc b¶ng còng gièng nh­ rµng buéc cét trong b¶ng, lµ kiÓm tra d÷ liÖu nhËp vµo b¶ng theo mét quy luËt ®· ®Þnh s½n. Song còng cã thÓ t¹o b¶ng b»ng giao diÖn ®å häa nh­ t¹o c¬ së d÷ liÖu. Trong khi x©y dùng b¶ng d÷ liÖu cÇn chó ý ®Õn c¸c tr­êng khãa c. T¹o view View lµ b¶ng ¶o vµ còng nh­ víi b¶ng view còng cã thÓ t¹o ®­îc b»ng m· lÖnh còng nh­ giao diÖn ®å häa View cho phÐp kÕt nèi nhiÒu b¶ng víi nhau ®Ó hiÓn thi th«ng tin. d. T¹o thñ tôc l­u tr÷ (Stored Procedure hay sp) Stored Procedure lµ mét phÇn cùc kú quan träng trong c¬ së d÷ liÖu SQL Server. NÕu biÕt SQL Server mµ kh«ng biÕt Stored Procedure lµ mét thiÕu sãt rÊt lín. Có ph¸p ®Ó t¹o mét Stored Procedure nh­ sau: CREATE PROCEDURE | PRO [ [VARYING] [=][OUT PUT], [ [VARYING] [=][OUT PUT][, ............ ............ [WITH RECOMPILE | ENCRIPTION | RECOMPILE, ENCRIPTION] [FOR REPLICATION] AS GO §ã lµ có ph¸p ®Çy ®ñ ®Ó t¹o mét Stored Procedure song ta cã thÓ t¹o Stored Procedure b»ng giao diÖn ®å häa VÝ dô t¹o mét Stored Procedure ®¬n gi¶n USE dbBENHNHAN GO Create proc Sp_NhapXa @MaXa nchar(9), @TenXa char(30), @MaHuyen nchar(6) AS Insert Into tblXa ( MaXa, TenXa,MaHuyen ) Values ( @MaXa,@TenXa,@MaHuyen ) --------------------------------------------------- GO Trªn ®©y ta tr×nh bµy mét Stored Procedure dïng ®Ó nhËp mét x· vµo b¶ng tblXa. e. T¹o hµm (Function) T­¬ng tù nh­ Stored Procedure hµm còng cã thÓ t¹o b»ng giao diÖn ®Ò häa còng nh­ m· lÖnh, song víi hµm gi¸ trÞ tr¶ vÒ lµ ®a d¹ng h¬n vµ gi¸ trÞ tr¶ vÒ nµy cã thÓ lµ mét b¶ng. VÝ dô t¹o hµm thèng kª bÖnh nh©n theo tØnh, hµm nµy tr¶ vÒ mét b¶ng chøa th«ng tin vÒ c¸c bÖnh nh©n trong tØnh CREATE FUNCTION udf_ThongKeBenhNhanTheoTinh (@TenTinh Char(30)) RETURNS Table ------------------------------------- AS --------------------- Return Select * From tblBenhNhan Where tblBenhNhan.MaXa in -- thuoc xa (Select MaXa From tblXa Where tblXa.MaHuyen in --thuoc huyen (Select MaHuyen From tblHuyen Where tblHuyen.MaTinh in -- thuoc tinh ( Select MaTinh From tblTinh Where tblTinh.TenTinh=@TenTinh))) ---------------------------------------------- II. giíi thiÖu vÒ Visual Basic 6.0 vµ c¬ së d÷ liÖu trong Visual Basic 6.0. II.1 Giíi thiÖu chung vÒ Visua Basic Visua Basic lµ mét trong nh÷ng ng«n ng÷ lËp tr×nh bËc cao th«ng dông nhÊt hiÖn nay, lµ mét s¶n phÈm cña Microsoft. Nã còng gièng nh­ hÇu hÕt c¸c ng«n ng÷ lËp tr×nh bËc cao kh¸c, trong Visua Basic chøa ®Çy ®ñ c¸c c©u lÖnh cÇn thiÕt, c¸c hµm x©y dùng s½n,… Ngoµi ra Visual Basic chøa mét sè ph­¬ng tiÖn gióp cho viÖc ¸p dông kü thuËt h­íng ®èi t­îng trong viÖc truy cËp d÷ liÖu. Trong Visual Basic cã rÊt nhiÒu ph­¬ng ph¸p truy còng nh­ c¸c ®èi t­îng truy cËp d÷ liÖu nh­: ADO, ADODB, DAO, ... nãi chung c¸c ®èi t­îng nµy cã nh÷ng thuéc tÝnh t­¬ng ®èi gièng nhau. Trong luËn v¨n nµy em chñ yÕu ®i s©u vµo ®èi t­îng ADO. V× ADO lµ mét c«ng cô truy cËp d÷ liÖu rÊt h÷u hiÖu vµ ADO còng ®­îc cµi ®Æt trong ch­¬ng tr×nh. II.2 ADO lµ g× ? ADO (Activex Data Object hay ®èi t­îng d÷ liÖu ActiveX). Ta cã thÓ h×nh dung r»ng ADO lµ mét m« h×nh lµm gi¶m kÝch th­íc cña m« h×nh RDO (§èi t­îng d÷ liÖu tõ xa). M« h×nh ®èi t­îng d÷ liÖu ActiveX rÊt gän. Nã ®­îc thiÕt kÕ ®Ó cho phÐp lËp tr×nh viªn lÊy ®­îc mét tËp c¸c Record tõ nguån d÷ liÖu mét c¸ch nhanh nhÊt nÕu cã thÓ. Tèc ®é vµ tÝnh ®¬n gi¶n lµ mét trong nh÷ng môc tiªu cèt lâi cña ADO, m« h×nh nµy ®­îc thiÕt kÕ ®Ó cho phÐp t¹o ra mét ®èi t­îng Recordset mµ kh«ng cÇn ph¶i di chuyÓn qua c¸c ®èi t­îng trung gian kh¸c trong qu¸ tr×nh lËp tr×nh. Thùc tÕ chØ cã ba ®èi t­îng chÝnh trong m« h×nh: Connection: §¹i diÖn kÕt nèi thùc sù. Command: §­îc sö dông ®Ó thùc thi c¸c query dùa vµo kÕt nèi d÷ liÖu. Recordset: §¹i diÖn cho mét tËp c¸c Record ®­îc chän query th«ng qua ®èi t­îng Command. §èi t­îng Connection chøa mét tËp c¸c ®èi t­îng cßn gäi lµ c¸c ®èi t­îng Errors ®èi t­îng nµy gi÷ l¹i bÊt kú mét th«ng tin lçi nµo cã liªn quan ®Õn kÕt nèi. §èi t­îng Command cã mét tËp c¸c ®èi t­îng con lµ Paramenters ®Ó gi÷ bÊt cø tham sè nµo cã thÓ thay thÕ cho query. Recordset còng cã mét tËp c¸c ®èi t­îng con Properties ®Ó l­u c¸c th«ng tin chi tiÕt vÒ ®èi t­îng. Connection Command Parameter Recorset Fields Error S¬ ®å m« h×nh ActiveX Data Object II.3 C¸c thuéc tÝnh ®Æc biÖt cña ®èi t­îng ADO M« h×nh ADO cã mét sè thuéc tÝnh mµ c¸c m« h×nh c¬ së d÷ liÖu kh¸c nh­ DAO vµ RDO kh«ng cã. C¸c thuéc tÝnh nµy ®iÒu khiÓn c¸ch thøc t¹o ra Dataset vµ quyÒn h¹n truy cËp trong mét kÕt nèi d÷ liÖu, cã b¶y thuéc tÝnh nh­ sau: Connection String (Chuçi kÕt nèi) Command Texxt (V¨n b¶n c©u lÖnh) Command Type (KiÓu c©u lÖnh) Cursor Location (§Þnh vÞ con trá) Cursor Type (KiÓu con trá) Look Type (KiÓu khãa) Mode Type (KiÓu chÕ ®é lµm viÖc) VÝ dô: §Ó t¹o kÕt nèi ®Õn c¬ së d÷ liÖu SQL Server víi tªn c¬ së d÷ liÖu dbBenhNhan ta cã m· lÖnh nh­ sau: Public Sub OpenConnection() ' T¹o kÕt nèi ®Õn nguån d÷ liÖu Set cn = New ADODB.Connection cn.Provider = "SQLOLEDB.1;" cn.ConnectionString = " Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=dbBenhNhan" cn.Open End Sub Ngoµi ra trong Visual Basic cßn chøa mét sè kiÓu d÷ liÖu th«ng dông kh¸c còng nh­ Visual Basic cho phÐp lËp tr×nh viªn tù ®Þnh nghÜa kiÓu vµ còng nh­ hÇu hÕt c¸c ng«n ng÷ lËp tr×nh kh¸c, ngoµi ra Visual Basic cßn cã c¸c c©u lÖnh chuÈn kh¸c, ... Ch­¬ng III. Ph©n TÝch Vµ ThiÕt KÕ HÖ Thèng I. Ph©n tÝch hÖ thèng vÒ chøc n¨ng I.1 BiÓu ®å ph©n cÊp chøc n¨ng 1. BiÓu ®å ph©n cÊp chøc n¨ng lµ g× ? Lµ mét lo¹i biÓu ®å diÔn t¶ sù ph©n r· dÇn dÇn c¸c chøc n¨ng tõ ®¹i thÓ ®Õn chi tiÕt. Mçi nót trong biÓu ®å lµ mét chøc n¨ng, vµ quan hÖ duy nhÊt gi÷a c¸c chøc n¨ng, diÔn t¶ bëi c¸c cung nèi liÒn c¸c nót, lµ quan hÖ bao hµm. nh­ vËy biÓu ®å ph©n cÊp chøc n¨ng t¹o thµnh mét cÊu tróc c©y Sau khi t×m hiÓu vµ ph©n tÝch hÖ th«ng qu¶n Lý bÖnh nh©n t¹i bÖnh viÖn tØnh Kh¸nh Hßa em ®· ®­a ra ®­îc biÓu ®å ph©n cÊp chøc n¨ng nh­ sau: Qu¶n lý bÖnh nh©n 0 CÊp sè 1 Kh¸m bÖnh 2 Thu viªn phÝ 3 Thu t¹m øng BN 3.1 Thanh to¸n víi BHYT 3.2 CÊp thuèc 2.1 TiÕp nhËn BN 2.2 Cung cÊp DV 2.3 LËp bÖnh ¸n 2.4 2. §Æc ®iÓm cña biÓu ®å ph©n cÊp chøc n¨ng: Cho mét c¸ch nh×n kh¸i qu¸t, dÔ hiÓu, tõ ®¹i thÓ ®Õn chi tiÕt vÒ c¸c chøc n¨ng, nhiÖm vô cÇn thùc hiÖn (th­êng ë møc diÔn t¶ logic) RÊt dÔ thµnh lËp, b»ng c¸ch ph©n r· dÇn c¸c chøc n¨ng tõ trªn xuèng Cã tÝnh chÊt tÜnh, bëi chóng chØ cho thÊy c¸c chøc n¨ng mµ kh«ng cho thÊy tr×nh tù xö lý. ThiÕu v¾ng sù trao ®æi th«ng tin gi÷a c¸c chøc n¨ng. V× nh÷ng lý do trªn nªn biÓu ®å ph©n cÊp chøc n¨ng th­êng ®­îc sö dông lµm m« h×nh chøc n¨ng trong b­íc ®Çu ph©n tÝch, hoÆc cho c¸c hÖ thèng ®¬n gi¶n. NÕu hÖ thèng phøc t¹p th× biÓu ®å ph©n cÊp chøc n¨ng lµ qu¸ s¬ l­îc vµ cßn thiÕu sãt nªu trªn nªn kh«ng thÓ ch©m tr­íc ®­îc. Khi ®ã chóng ta th­êng dïng biÓu ®å luång d÷ liÖu I.2 BiÓu ®å luång d÷ liÖu 1. BiÓu ®å luång d÷ liÖu lµ g× ? BiÓu ®å luång d÷ liÖu lµ mét lo¹i biÓu ®å nh»m môc ®Ých diÔn t¶ mét qu¸ tr×nh xö lý th«ng tin víi c¸c yªu cÇu sau: Sù diÔn t¶ ë møc logic, nghÜa lµ nh»m tr¶ lêi c©u hái “Lµm g×”, mµ bá qua c©u hái “lµm nh­ thÕ nµo ?”. ChØ râ c¸c chøc n¨ng (con) ph¶i thùc hiÖn ®Ó hoµn tÊt qu¸ tr×nh xö lý cÇn m« t¶ ChØ râ c¸c th«ng tin ®­îc chuyÓn giao gi÷a c¸c chøc n¨ng ®ã, vµ qua ®ã phÇn nµo thÊy ®­îc tr×nh tù thùc hiÖn cña chóng. 2. Kü thuËt ph©n møc Kü thuËt nµy cßn ®­îc gäi lµ “Ph©n tÝch tõ trªn xuèng” (top-down analysis) tiÕn hµnh ph©n tÝch chøc n¨ng cña hÖ thèng b»ng c¸ch ®i dÇn tõ mét m« t¶ ®¹i thÓ ®Õn nh÷ng m« t¶ chi tiÕt th«ng qua nhiÒu møc. Sù chuyÓn dÞch tõ mét møc tíi møc tiÕp theo thùc chÊt lµ ph©n ra mét chøc n¨ng thµnh mét sè chøc n¨ng con ë møc d­íi. Víi biÓu ®å luång d÷ liÖu th× qu¸ tr×nh ph©n tÝch trªn xuèng l¹i lµ qu¸ tr×nh thµnh lËp dÇn dÇn c¸c biÓu ®å luång d÷ liÖu diÔn t¶ c¸c chøc n¨ng cña hÖ thèng theo tõng møc. Mçi møc lµ mét tËp hîp c¸c biÓu ®å luång d÷ liÖu. Møc 0, hay møc bèi c¶nh chØ gåm biÓu ®å luång d÷ liÖu, trong ®ã chØ cã mét chøc n¨ng duy nhÊt, trao ®æi c¸c luång th«ng tin víi c¸c ®èi t¸c. Møc 1, cßn gäi lµ møc ®Ønh, còng chØ dïng mét biÓu ®å luång d÷ liÖu, vµ møc 2, 3, ..., mçi møc gåm nhiÒu h¬n 1 biÓu ®å luång d÷ liÖu ®­îc thµnh lËp nh­ sau: - Cø mçi chøc n¨ng ë møc trªn, ta thµnh lËp mét biÓu ®å luång d÷ liÖu, ë møc d­íi, gäi lµ biÓu ®å luång d÷ liÖu ®Þnh nghÜa chøc n¨ng ®ã theo c¸ch sau: + Ph©n r· chøc n¨ng ®ã thµnh nhiÒu chøc n¨ng con. + VÏ l¹i luång d÷ liÖu vµo vµ ra chøc n¨ng trªn, nh­ng nay ph¶i vµo hay ra chøc n¨ng con thÝch hîp. + Nghiªn cøu c¸c quan hÖ vÒ d÷ liÖu gi÷a c¸c chøc n¨ng con, nhê ®ã bæ sung c¸c luång d÷ liÖu néi bé hoÆc c¸c kho d÷ liÖu néi bé. - C¸c chøc n¨ng ®­îc ®¸nh sè theo ký ph¸p chÊm, cho phÐp theo dâi vÖt triÓn khai trªn xuèng Th«ng qua t×m hiÓu hÖ thèng qu¶n lý bÖnh nh©n t¹i bÖnh viÖn tØnh Kh¸nh Hßa ta cã biÓu ®å luång d÷ liÖu cña hÖ thèng nh­ sau: BiÓu ®å luång d÷ liÖu møc bèi c¶nh: Trong biÓu ®å luång d÷ liÖu møc bèi c¶nh chØ cã mét chøc n¨ng 0 (chøc n¨ng qu¶n lý bÖnh nh©n), c¸c t¸c nh©n cña hÖ thèng gåm: BÖnh nh©n, khoa ®iÒu trÞ vµ phßng tµi chÝnh. bÖnh nh©n Qu¶n lÝ bÖnh nh©n 0 Yªu cÇu KB KÕt qu¶ Chi phÝ kh¸m ch÷a bÖnh BiÓu ®å luång d÷ liÖu møc bèi c¶nh Phßng tµi chÝnh Khoa ®iÒu trÞ Chi phÝ cña BN Danh s¸ch BN ®iÒu trÞ BÖnh ¸n KÕt qu¶ Danh s¸ch BN nhËp viÖn BiÓu ®å luång d÷ liÖu møc ®Ønh: Chøc n¨ng qu¶n lý bÖnh nh©n ®­îc ph©n ra thµnh c¸c chøc n¨ng cÊp sè, kh¸m bÖnh, thanh to¸n viÖn phÝ. Ngoµi ra ë ®©y trong biÓu ®å cßn xuÊt hiÖn thªm c¸c t¸c nh©n nh­ khoa ®iÒu trÞ, phßng tµi chÝnh vµ toµn bé kÕt qu¶ kh¸m bÖnh cña bÖnh nh©n ®­îc l­u vµo mét tÖp cã tªn lµ hå s¬ bÖnh nh©n tÊt c¶ nh÷ng th«ng tin vÒ bÖnh nh©n ®­îc l­u tr÷ t¹i ®©y. Th«ng qua tÖp nµy phßng tµi chÝnh sÏ göi giÊy thanh to¸n viÖn phÝ ®Õn cho bÖnh nh©n vµ b¶o hiÓm y tÕ . bÖnh nh©n CÊp sè 1 Yªu cÇu KB VÞ trÝ KB Kh¸m bÖnh 2 Y/C KB t¹i vÞ trÝ bÖnh nh©n KÕt qu¶ Phßng Tµi ChÝnh Thanh to¸n V/P 3 X¸c nhËn TT §ãng t¹m øng Danh s¸ch BN ®iÒu trÞ Khoa §iÒu TrÞ KÕt qu¶ KÕt qu¶ Hå s¬ bÖnh nh©n Danh s¸ch BN ®· ®ãng T.¦ BiÓu ®å luång d÷ liÖu møc ®Ønh Danh s¸ch BN nhËp viÖn BÖnh ¸n BiÓu ®å luång d÷ liÖu biÓu diÔn chøc n¨ng kh¸m bÖnh: Lóc nµy chøc n¨ng kh¸m bÖnh ®­îc ph©n r· thµnh bèn chøc n¨ng: CÊp thuèc, cung cÊp dÞch vô, tiÕp nhËn bÖnh nh©n nhËp viÖn, lËp bÖnh ¸n. ló nµy bÖnh nh©n ®· cã ®­îc kÕt qu¶ kh¸m bÖnh. Trong biÓu ®å trªn hÇu hÕt c¸c chøc n¨ng ®­îc thùc hiÖn mét c¸ch thñ c«ng vµ ®­îc l­u l¹i trong tÖp Hå S¬ bÖnh nh©n nh­ vËy khi bÖnh nh©n mua thuèc th× t¹i phßng cÊp thuèc sÏ l­u l¹i ®¬n thuèc cña bÖnh nh©n ®· mua vµ t­¬ng tù nh­ vËy khi bÖnh nh©n dïng dÞch vô còng ®­îc l­u l¹i th«ng tin ®ã ®Ó phôc vô viÖc l­u tr÷ vµ thanh to¸n t¹m øng sau nµy. Song khi bÖnh nh©n ph¶i nhËp viÖn th× t¹i khoa ®iÒu trÞ sÏ lËp bÖnh ¸n cho bÖnh nh©n ®ã vµ còng ®­îc l­u l¹i trong bÖnh ¸n ghi ®Çy ®ñ th«ng tin vÒ bÖnh nh©n qu¸ tr×nh ®iÒu trÞ t¹i bÖnh viÖn. Hå s¬ Bªnh Nh©n BÖnh nh©n CÊp thuèc 2.1 §¬n thuèc Thuèc cÊp Khoa ®iÓu trÞ Cung cÊp dÞch vô 2.3 Yªu cÇu DÞc vô dïng LËp bÖnh ¸n 2.4 D/SBN nhËp viÖn BÖnh ¸n TiÕp nhËn BN N/V 2.2 GiÊy NV TiÕp nhËn BiÓu ®å luång d÷ liÖu biÓu diÔn chøc n¨ng kh¸m bÖnh GiÊy NV §èi víi biÓu ®å luång d÷ liÖu ph©n cÊp chøc n¨ng thanh to¸n viÖn phÝ: T­¬ng tù chøc n¨ng kh¸m bÖnh víi chøc n¨ng thanh to¸n t¹m øng viÖn phÝ cña bÖnh nh©n ®­îc ph©n ra thµnh hai chøc n¨ng lµ: thu t¹m øng, vµ thanh to¸n víi b¶o hiÓm y tÕ . Theo quy ®Þnh cña bÖnh viÖn cø ba ngµy bÖnh viÖn l¹i yªu cÇu bÖnh nh©n thanh to¸n t¹m øng viÖn phÝ mét lÇn vµ theo chu kú mçi th¸ng bÖnh viÖn l¹i in danh s¸ch bÖnh nh©n cã b¶o hiÓm y tÕ ®· ®iÒu trÞ t¹i bÖnh viÖn trong th¸ng ®Ó thanh to¸n víi b¶o hiÓm y tÕ. §èi víi bÖnh nh©n cã b¶o hiÓm y tÕ còng ph¶i ®ãng mét phÇn viÖn phÝ theo quy ®Þnh phÇn tr¨m trªn b¶o hiÓm y tÕ. C¶ hai chøc n¨ng nµy ®Òu ®­îc thùc hiÖn mét c¸ch tù ®éng. bÖnh nh©n Thu t¹m øng 3.1 Thanh to¸n viÖn phÝ PhiÕu thanh to¸n Hå s¬ Bªnh Nh©n Phßng tµi chÝnh Thanh to¸n víi BHYT 3.2 Danh s¸ch BN ®iÒu trÞ cã BHYT Danh s¸ch bÖnh nh©n ®iÒu trÞ X¸c nhËn thanh to¸n Danh s¸ch BN ®· ®ãng T.¦ BiÓu ®å luång d÷ liÖu biÓu diÔn chøc n¨ng thanh to¸n viÖn phÝ II. Ph©n tÝch hÖ thèng vÒ d÷ liÖu II.1 M« h×nh thùc thÓ/liªn kÕt 1. Kh¸i niªm m« h×nh thùc thÓ/liªn kÕt M« h×nh thùc thÓ/ liªn kÕt (Entity/Association Model) lµ m« h×nh d÷ liÖu do P.P. Chen ®­a ra n¨m 1976 vµ sau ®ã ®­îc dïng kh¸ phæ biÕn trªn thÕ giíi. Nã cã ®Æc ®iÓm kh¸ ®¬n gi¶n vµ gÇn víi t­ duy kh¸ch quan. Khi xem xÐt c¸c th«ng tin, ng­êi ta th­êng gom côm chóng xung quanh c¸c vËt thÓ C¸c lo¹i m« h×nh E/A M« h×nh E/A kinh ®iÓn M« h×nh E/A kinh ®iÓn xuÊt ph¸t tõ ba kh¸i niÖm c¬ b¶n: thùc thÓ, liªn kÕt vµ thuéc tÝnh. + C¸c thùc thÓ: Lµ mét vËt thÓ cô thÓ hay trõu t­îng, tån t¹i thùc sù vµ kh¸ æn ®Þnh trong thÕ giíi thùc, mµ ta muèn ph¶n ¸nh nã trong hÖ thèng th«ng tin. + C¸c thuéc tÝnh: Thuéc tÝnh (Property hay attribute) lµ mét gi¸ trÞ dïng ®Ó m« t¶ khÝa c¹nh nµo ®ã cña thùc thÓ. + C¸c liªn KÕt: Mét liªn kÕt (association) lµ mét sù gom nhãm c¸c thùc thÓ trong ®ã mçi thùc thÓ cã mét vai trß nhÊt ®Þnh. - M« h×nh thùc thÓ/ Liªn kÕt më réng. §èi víi nh÷ng hÖ thèng phøc t¹p khi ph©n tÝch vµ thiÕt kÕ ng­êi ta th­¬ng dïng ®Õn m« h×nh E/A më réng. Do c¸c ®iÓm më réng nµy chÞu ¶nh h­ëng tõ xu h­íng hiÖn ®¹i cña m« h×nh hãa h­íng ®èi t­îng, còng nh­ c¸c hÖ qu¶n trÞ c¬ së d÷ liÖu h­íng ®èi t­îng. C¸c ®Æc ®iÓm cña m« h×nh E/A më réng + C¸c kiÓu thuéc tÝnh ®a trÞ: Cho phÐp nhËn gi¸ trÞ cã thÓ lµ mét tËp c¸c gi¸ trÞ. + C¸c kiÓu thuéc tÝnh phøc hîp: Cho phÐp sö dông c¸c kiÓu thuéc tÝnh lµ tæ hîp. + C¸c kiÓu thùc thÓ con: xuÊt hiÖn bëi yªu cÇu chuyªn biÖt hãa vµ kh¸i qu¸t hãa khi cÇn ph©n cÊp c¸c sù vËt - M« h×nh E/A h¹n chÕ M« h×nh E/A h¹n chÕ tuy bÞ h¹n chÕ nhiÒu vÒ c¸c h×nh thøc diÔn t¶ (khã vËn dông), nh­ng l¹i rÊt gÇn víi m« h×nh quan hÖ do ®ã l¹i dÔ dµng chuyÓn sang cµi ®Æt víi hÖ qu¶n trÞ c¬ së d÷ liÖu quan hÖ h¬n. C¸c ®Æc ®iÓm cña m« h×nh E/A h¹n chÕ. + Trong m« h×nh E/A h¹n chÕ chØ cã kiÓu liªn kÕt 1-nhiÒu vµ ®­îc biÓu diÔn nh­ sau: A B + Trong m« h×nh E/A h¹n chÕ c¸c kiÓu liªn kÕt 0/1-nhiÒu ®­îc coi lµ tr­êng hîp ®Æc biÖt cña 1-nhiÒu Trong b¸o c¸o nµy Em chi sö dông m« h×nh E/A h¹n chÕ. V× bÊt cø m« h×nh E/A kinh ®iÓn hay E/A më réng nµo còng cã thÓ biÕn ®æi thµnh m« h×nh E/A h¹n chÕ ®­îc, h¬n n÷a m« h×nh E/A h¹n chÕ lµ m« h×nh gÇn víi m« h×nh c¬ së d÷ liÖu quan hÖ nhÊt. Sau khi ph©n tÝch hÖ thèng em ®· ®­a ra m« h×nh E/A h¹n chÕ cña bµi to¸n nh­ sau (trang sau): TØnh M· tØnh Tªn tØnh HuyÖn M· huyÖn Tªn huyÖn M· tØnh X· M· x· Tªn x· M· huyÖn Khoa M· khoa Tªn khoa Chuyªn m«n M· CM Tªn CM Chøc vô M· CV Tªn CV BÖnh M· bÖnh Tªn bÖnh Nh©n viªn M· Nh©n viªn Hä tªn NV Ngµy sinh NV Giíi tÝnh NV Sè nhµ NV §iÖn tho¹i NV M· x· M· khoa M· CM M· CV VÞ TrÝ M· vÞ trÝ Tªn vÞ trÝ Dßng kh¸m bÖnh M· kh¸m bÖnh M· nh©n viªn M· bÖnh nh©n M· bÖnh M· vÞ trÝ Ngµy KB Néi dung KB Chi phÝ KB BÖnh nh©n M· bªnh nh©n Hä bÖnh nh©n Tªn bÖnh nh©n Ngµy sinh BN Giíi tÝnh BN M· x· b¶o hiÓm y tÕ M· bÖnh nh©n Sè thÎ BHYT Ngµy b¾t ®Çu Ngµy kÕt thóc PhÇn tr¨m C¸n bé M· bÖnh nh©n M· c¬ quan C¬ quan M· c¬ quan Tªn c¬ quan §iÖn tho¹i CQ Fax CQ T¹m øng M· t¹m øng LÇn t¹m øng Sè tiÒn Ngµy t¹m øng M· bÖnh nh©n BÖnh ¸n M· kh¸m bÖnh M· nh©n viªn M· bÖnh nh©n M· bÖnh M· vÞ trÝ M· n¬i §.T Ngµy vµo Ngµy ra T×nh tr¹ng ra N¬i ®iÒu trÞ M· n¬i §.T Tªn n¬i §.T §¬n gi¸ Thuèc dïng M· kh¸m bÖnh M· nh©n viªn M· bÖnh nh©n M· bÖnh M· vÞ trÝ M· thuèc Sè l­îng LiÒu dïng Thuèc M· thuèc Tªn thuèc §¬n gi¸ DÞch Vô Dïng M· kh¸m bÖnh M· nh©n viªn M· bÖnh nh©n M· bÖnh M· vÞ trÝ M· n¬i §.T M· dÞch Vô LÇn dïng DÞch vô M· dÞch vô Tªn dÞch vô §¬n gi¸ II. M« h×nh quan hÖ 1. Kh¸i niÖm M« h×nh quan hÖ do Codd ®Ò xuÊt n¨m 1970, víi ­u ®iÓm nh­ sau: + §¬n gi¶n: c¸c d÷ liÖu ®­îc biÓu diÔn d­íi mét d¹ng duy nhÊt, lµ quan hÖ, tøc lµ c¸c b¶ng gi¸ trÞ, kh¸ tù nhiªn vµ dÔ hiÓu ®èi víi ng­êi dïng kh«ng chuyªn tin häc. + ChÆt chÏ: c¸c kh¸i niÖm ®­îc h×nh thøc hãa cao, cho phÐp ¸p dông c¸c c«ng cô to¸n häc, c¸c thuËt to¸n. + Trõu t­îng hãa cao: m« h×nh chØ dõng ë møc quan niÖm, nghÜa lµ ®éc lËp víi møc vËt lý, víi sù cµi ®Æt, víi c¸c thiÕt bÞ. Nhê ®ã lµm cho tÝnh ®éc lËp gi÷a d÷ liÖu vµ ch­¬ng tr×nh cao. + Cung cÊp ng«n ng÷ truy nhËp d÷ liÖu ë møc cao, dÔ sö dông vµ trë thµnh chuÈn. 2. C¸c d¹ng chuÈn cña l­îc ®å quan hÖ Mét l­îc ®å quan hÖ R lµ ë d¹ng chuÈn 1 (1NF) nÕu c¸c miÒn thuéc tÝnh cña nã ®Òu lµ c¸c miÒn ®¬n (nghÜa lµ kh«ng cÊu thµnh tõ nhiÒu miÒn kh¸c). Mét l­îc ®å quan hÖ R lµ ë d¹ng chuÈn 2 (2NF) nÕu nã lµ 1NF vµ c¸c phô thuéc hµm gi÷a khãa vµ mçi thuéc tÝnh ngoµi khãa ®Òu lµ phô thuéc hµm s¬ ®¼ng. Nãi c¸ch kh¸c, mäi thuéc tÝnh ngoµi khãa ®Òu kh«ng phô thuéc bé phËn vµo khãa. Mét l­îc ®å quan hÖ R lµ ë d¹ng chuÈn 3 (3NF) nÕu nã lµ 2NF vµ c¸c phô thuéc hµm gi÷a khãa vµ mçi thuéc tÝnh ngoµi khãa ®Òu lµ phô thuéc hµm trùc tiÕp. Nãi c¸ch kh¸c lµ kh«ng tån t¹i phô thuéc hµm gi÷a c¸c thuéc tÝnh ngoµi khãa. C¸c l­îc ®å quan hÖ cña hÖ thèng Tõ m« h×nh thùc thÓ liªn kÕt (m« h×nh E/A h¹n chÕ ë trªn) ta chuyÓn sang c¸c l­îc ®å quan hÖ nh­ sau: TØnh (M· tØnh, Tªn tØnh) HuyÖn (M· huyÖn, Tªn huyÖn, M· tØnh) X· (M· x·, Tªn x·, M· huyÖn) Khoa (M· khoa, Tªn khoa) Chuyªn m«n (M· chuyªn m«n, Tªn chuyªn m«n) Chøc Vô (M· chøc vô, Tªn chøc vô) BÖnh (M· bÖnh, Tªn bÖnh) VÞ trÝ (M· vÞ trÝ, Tªn vÞ trÝ) Nh©n viªn (M· NV, Hä tªn NV, Ngµy sinh NV, Giíi tÝnh NV, Sè nhµ NV, §iÖn tho¹i NV, M· x·, M· khoa, M· CM, M· CV) Dßng kh¸m bÖnh (M· kh¸m bÖnh, M· nh©n viªn, M· bÖnh nh©n, M· bÖnh, M· vÞ trÝ, Ngµy KB, Néi dung KB, Chi phÝ KB) BÖnh nh©n (M· bÖnh nh©n, Hä bÖnh nh©n, Tªn bÖnh nh©n, Ngµy sinh BN, Giíi tÝnh BN, M· x·) B¶o hiÓm y tÕ (M· bÖnh nh©n, Sè thÎ BHYT, Ngµy b¾t ®Çu, Ngµy kÕt thóc, PhÇn tr¨m) C¬ quan (M· c¬ quan, Tªn c¬ quan, §iÖn tho¹i CQ, Fax c¬ quan) C¸n bé (M· bÖnh nh©n, M· c¬ quan) T¹m øng (M· T.øng, LÇn T.øng, Sè tiÒn, Ngµy T.øng, M· bÖnh nh©n) BÖnh ¸n (M· kh¸m bÖnh, M· nh©n viªn, M· bÖnh nh©n, M· bÖnh, M· vÞ trÝ, M· n¬i §.T, Ngµy vµo, Ngµy ra, T×nh tr¹ng ra) N¬i §iÒu TrÞ (M· n¬i §.T, Tªn n¬i §.T, §¬n gi¸) DÞch Vô Dïng (M· kh¸m BÖnh, M· nh©n viªn, M· bÖnh nh©n, M· bÖnh, M· vÞ trÝ, M· n¬i §.T, M· dÞch Vô, LÇn dïng) DÞch Vô (M· dÞch vô, Tªn dÞch vô, §¬n gi¸ D.V) Thuèc Dïng (M· kh¸m BÖnh, M· nh©n viªn, M· bÖnh nh©n, M· bÖnh, M· vÞ trÝ, M· thuèc, Sè l­îng, LiÒu dïng) Thuèc (M· thuèc, Tªn thuèc, §¬n gi¸) Danh S¸ch C¸c B¶ng B¶ng TØnh TØnh (M· tØnh, Tªn tØnh) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· tØnh Char M· tØnh Len()=2 Tªn tØnh Char Tªn tØnh 30 Gi¶i ThÝch + B¶ng tØnh l­u tr÷ th«ng tin vÒ tØnh mµ bÖnh nh©n vµ Nh©n Viªn ®ang sèng B¶ng HuyÖn HuyÖn (M· HuyÖn, Tªn HuyÖn, M· TØnh) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· huyÖn Char M· huyÖn Len()=4 Tªn huyÖn Char Tªn huyÖn 30 M· tØnh Char M· tØnh Len()=2 Gi¶i ThÝch + B¶ng huyÖn l­u tr÷ th«ng tin vÒ huyÖn mµ bÖnh nh©n vµ Nh©n Viªn ®ang sèng Tr­êng m· huyÖn gåm cã 4 ký tù 2 ký tù ®Çu lµ m· tØnh mµ huyÖn ®ã trùc thuéc hai ký tù tiÕp theo lµ thø tù huyÖn trong tØnh. Tr­êng m· tØnh lµ khãa ngoµi cña b¶ng huyÖn tr­êng nµy nhËn th«ng m· tØnh tõ b¶ng tØnh 4.3 B¶ng X· X· (M· x·, Tªn x·, M· huyÖn) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· x· Char M· x· Len()=6 Tªn x· Char Tªn x· 30 M· huyÖn Char M· huyÖn Len()=4 Gi¶i thÝch + B¶ng x· cïng víi b¶ng huyÖn vµ b¶ng tØnh l­u tr÷ th«ng tin ®Þa chØ cña bÖnh nh©n còng nh­ nh©n viªn Tr­êng m· x· gåm cã 6 ký tù 4 ký tù ®Çu lµ m· huyÖn mµ x· trùc thuéc cßn hai ký tù sau lµ thø tù x· trong huyÖn. Tr­êng m· huyÖn lµ khãa ngoµi cña b¶ng x·, tr­êng nµy nhËn th«ng tin tõ tr­êng m· huyÖn cña b¶ng huyÖn 4.4 B¶ng KHOA KHOA(M· khoa, Tªn khoa) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· khoa Char M· khoa Len()=2 Tªn khoa Char Tªn khoa 30 Gi¶i thÝch + B¶ng Khoa l­u tr÷ th«ng tin vÒ khoa mµ nh©n viªn (B¸c sÜ) ®ang lµm viÖc 4.5 B¶ng CHUY£N M¤N CHUY£N M¤N (M· chuyªn m«n, Tªn chuyªn m«n) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· chuyªn m«n Char M· chuyªn m«n Len()=2 Tªn chuyªn m«n Char Tªn chuyªn m«n 30 Gi¶i thÝch + B¶ng chuyªn m«n l­u tr÷ th«ng tin vÒ chuyªn m«n cña nh©n viªn 4.6. B¶ng Chøc Vô Chøc Vô (M· chøc vô, Tªn chøc vô) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· chøc vô Char M· chøc vô Len()=2 Tªn chøc vô Char Tªn chøc vô 30 Gi¶i thÝch + B¶ng chøc vô l­u tr÷ th«ng tin vÒ chøc vô cña Nh©n Viªn 4.7. B¶ng BÖnh BÖnh (M· bÖnh, Tªn bÖnh) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· bÖnh Char M· bÖnh Len()=4 Tªn bÖnh Char Tªn bÖnh 30 Gi¶i thÝch + B¶ng nµy l­u tr÷ tÊt c¶ c¸c bÖnh hiÖn cã 4.8. B¶ng VÞ TrÝ VÞ TrÝ (M· vÞ trÝ, Tªn vÞ trÝ) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· vÞ trÝ Char M· vÞ trÝ Len()=2 Tªn vÞ trÝ Char Tªn vÞ trÝ 30 Gi¶i ThÝch + B¶ng nµy l­u tr÷ th«ng tin vÒ vÞ trÝ mµ bÖnh nh©n ®­îc kh¸m bÖnh 4.9. B¶ng Nh©n Viªn Nh©n Viªn (M· NV, Hä Tªn NV, Ngµy Sinh NV, Giíi TÝnh NV, Sè Nhµ NV, §iÖn Tho¹i NV, M· X·, M· Khoa, M· CM, M· CV) Tªn Tr­êng Lo¹i D÷ LiÖu M« T¶ KÝch Th­íc M· NV Char M· nh©n viªn Len()=5 Hä Tªn NV Char Hä tªn nh©n viªn 30 Ngµy Sinh NV Date Ngµy sing nh©n viªn Giíi TÝnh NV Boolear Giíi tÝnh nh©n viªn Sè Nhµ NV Char Sè nhµ nh©n viªn 30 §iÖn Tho¹i NV Char §iÖn tho¹i nh©n viªn 15 M· X· Char M· x· Len()=6 M· Khoa Char M· khoa Len()=2 M· CM Char M· chuyªn m«n Len()=2 M· CV Char M· chøc vô Len()=2 Gi¶i thÝch + B¶ng nh©n viªn l­u tr÷ tÊt c¶ th«ng tin vÒ nh©n viªn (B¸c sÜ) Tr­êng ngµy sinh Nh©n Viªn nhËn d÷ liÖu sao cho tuæi cña nh©n viªn kh«ng ®­îc lín h¬n 65 vµ kh«ng ®­îc nhá h¬n 18 Tr­êng giíi tÝnh nh©n viªn nhËn kiÓu d÷ liÖu Boolear (True t­¬ng øng víi nam, False t­¬ng øng víi n÷). Tr­êng sè nhµ nh©n viªn ®Ó x¸c ®Þnh chç ë cña nh©n viªn. B¶ng Nh©n Viªn nhËn M· X·, M· Khoa, M· CM, M· CV lµm khãa ngoµi c¸c tr­êng nµy nhËn gi¸ trÞ t­¬ng øng tõ c¸c b¶ng X·, Khoa, Chuyªn m«n, Chøc vô. 4.10. B¶ng Dßng Kh¸m BÖnh Dßng Kh¸m BÖnh (M· Kh¸m BÖnh, M· Nh©n Viªn, M· bÖnh nh©n, M· BÖnh, M· VÞ trÝ, Ngµy KB, Néi Dung KB, Chi PhÝ KB) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· kh¸m bÖnh Char M· kh¸m bÖnh Len()=9 M· nh©n viªn Char M· nh©n viªn Len()=5 M· bÖnh nh©n Char M· bÖnh nh©n Len()=9 M· bÖnh Char M· bÖnh Len()=5 M· VÞ TrÝ Char M· vÞ trÝ Len()=2 Ngµy KB Date Ngµy kh¸m bÖnh Néi dung KB Char Néi dung kh¸m bÖnh 50 Chi phÝ KB Money Chi phÝ kh¸m bÖnh >0 Gi¶i thÝch + B¶ng dßng kh¸m bÖnh lµ mèi kÕt hîp gi÷a c¸c thùc thÓ nh©n viªn, bÖnh nh©n, bÖnh, vÞ trÝ nªn nã nhËn tÊt c¶ c¸c khãa cña c¸c theca thÓ tham gia vµo mèi kÕt hîp lµm khãa chÝnh, c¸c gi¸ trÞ cña c¸c tr­êng nµy ®­îc lÊy t­¬ng øng tõ c¸c b¶ng t­¬ng øng. Ngoµi ra nã cßn cã khãa riªng lµ M· kh¸m bÖnh Ngµy KB kh«ng ®­îc sau ngµy hiÖn t¹i Chi phÝ KB lµ kho¶n tiÒn mµ bÖnh nh©n ph¶i tr¶ sau khi kh¸m bÖnh kho¶n nµy kh«ng ®­îc nhá h¬n 0. 4.11. B¶ng bÖnh nh©n bÖnh nh©n (M· Bªnh Nh©n, Hä bÖnh nh©n, Tªn bÖnh nh©n, Ngµy Sinh BN, Giíi TÝnh BN, M· X·) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· bÖnh nh©n Char M· bÖnh nh©n Len()=9 Hä bÖnh nh©n Char Hä bÖnh nh©n 20 Tªn bÖnh nh©n Char Tªn bÖnh nh©n 10 Ngµy sinh BN Date Ngµy sinh bÖnh nh©n Giíi tÝnh BN Boolear Giíi tÝnh bÖnh nh©n M· x· Char M· x· Len()=6 Gi¶i thÝch + B¶ng bÖnh nh©n l­u tr÷ tÊt c¶ c¸c th«ng tin vÒ bÖnh nh©n M· bÖnh nh©n gåm 9 ký tù 4 ký tù ®Çu lµ n¨m mµ bÖnh nh©n ®ã kh¸m, cßn l¹i 5 ký tù sau lµ thø tù bÖnh nh©n ®ã ®Õn kh¸m trong n¨m Ngµy sinh bÖnh nh©n kh«ng ®­îc sau ngµy hiÖn t¹i vµ tuæi bÖnh nh©n kh«ng ®­îc lín h¬n 150 Giíi tÝnh bÖnh nh©n lµ True t­¬ng øng víi Nam, False t­¬ng øng víi N÷ B¶ng bÖnh nh©n nhËn m· x· lµm khãa ngoµi, tr­êng nµy nhËn gi¸ trÞ tõ b¶ng X· 4.12 B¶ng b¶o hiÓm y TÕ b¶o hiÓm y tÕ (M· bÖnh nh©n, Sè thÎ BHYT, Ngµy b¾t ®Çu, Ngµy kÕt thóc, PhÇn tr¨m) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· bÖnh nh©n Char M· bÖnh nh©n Len()=9 Sè thÎ BHYT Char Sè thÎ b¶o hiÓm y tÕ Len()=9 Ngµy b¾t ®Çu Date Ngµy b¾t ®Çu Ngµy kÕt thóc Date Ngµy kÕt thóc PhÇn tr¨m Int PhÇn tr¨m Gi¶i thÝch + B¶ng B¶o hiÓm y tÕ l­u th«ng tin vÒ BHYT cña c¸c bÖnh nh©n cã thÎ BHYT Thùc thÓ b¶o hiÓm y tÕ lµ thùc thÓ chuyªn biÖt hãa cña thùc thÓ bÖnh nh©n nªn nhËn khãa cña thùc thÓ bÖnh nh©n lµ m· bÖnh nh©n lµm khãa chÝnh Tr­êng Sè ThÎ BHYT lµ sè thÎ b¶o hiÓm y tÕ ®Ó x¸c ®Þnh thÎ ®ã lµ cña ai Tr­êng ngµy b¾t ®Çu lµ ngµy mµ thÎ b¶o hiÓm y tÕ cã hiÖu lùc ngµy nµy kh«ng ®­îc sau ngµy kÕt thóc vµ sau ngµy hiÖn t¹i Tr­êng ngµy kÕt thóc lµ ngµy mµ thÎ b¶o hiÓm y tÕ kh«ng cßn hiÖu lùc (ngµy nµy th­êng c¸ch ngµy b¾t ®Çu mét n¨m). Tr­êng phÇn tr¨m lµ mét sè nguyªn n»m trong kho¶ng (1..100) 4.13. B¶ng C¬ Quan C¬ Quan (M· c¬ quan, Tªn c¬ quan, §iÖn tho¹i CQ, Fax c¬ quan) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· c¬ quan Char M· c¬ quan Len()=6 Tªn c¬ quan Char Tªn c¬ quan 30 §iÖn tho¹i CQ Char ®iÖn tho¹i c¬ quan 15 Fax c¬ quan Char Fax c¬ quan 15 Gi¶i thÝch + Bang c¬ quan l­u tr÷ th«ng tin vÒ c¬ quan mµ nh÷ng bÖnh nh©n cã BHYT thuéc mét c¬ quan nµo ®ã - Tr­êng ®iÖn tho¹i c¬ quan vµ tr­êng fax c¬ quan chøa ®iÖn tho¹i vµ fax c¬ quan vµ hai tr­êng nµy cho phÐp Null 4.14. B¶ng C¸n Bé C¸n Bé (M· bÖnh nh©n, M· C¬ Quan) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· bÖnh nh©n Char M· bÖnh nh©n Len()=9 M· c¬ quan Char Ma c¬ quan Len()=6 Gi¶i thÝch + B¶ng c¸n bé lµ thùc thÓ chuyªn biÖt hãa cña thùc thÓ b¶o hiÓm y tÕ nªn nã nhËn thuéc tÝnh khãa cña thùc thÓ nµy lµm khãa ngoµi ra ®Ó x¸c ®Þnh C¸n Bé ®ã thuéc c¬ quan nµo thi b¶ng nµy ph¶i nhËn thªm khãa cña thùc thÓ c¬ quan lµm khãa chÝnh. Hai tr­êng nµy lÊy gi¸ trÞ tõ tr­êng M· bÖnh nh©n trong b¶ng bÖnh nh©n vµ tr­êng M· C¬ Quan trong b¶ng C¬ Quan 4.15 B¶ng T¹m øng T¹m øng (M· t¹m øng, LÇn T.¦, Sè TiÒn, Ngµy T.¦, M· bÖnh nh©n) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· t¹m øng Char M· t¹m øng Len()=11 LÇn t¹m øng Int LÇn t¹m øng Sè tiÒn Money Sè tiÒn t¹m øng Ngµy t¹m øng Date Ngµy t¹m øng M· bÖnh nh©n Char M· bÖnh nh©n Len()=9 Gi¶i thÝch + B¶ng T¹m øng l­u tr÷ th«ng tin vÒ sè tiÒn mµ bÖnh nh©n ®· t¹m øng cho bÖnh viÖn, sè lÇn t¹m øng, mçi lÇn sè tiÒn lµ bao nhiªu,... - M· t¹m øng gåm cã 11ký tù 9 ký tù ®Çu lµ m· bÖnh nh©n lÊy tõ b¶ng bÖnh nh©n, hai ký tù tiÕp theo lµ sè lÇn mµ bÖnh nh©n ®ã t¹m øng. LÇn t¹m øng lµ lÇn mµ bÖnh nh©n ®ãng mét phÇn viÖn phÝ trong thêi gian ®iÒu trÞ t¹i bÖnh viÖn. Tr­êng sè tiÒn lµ sè tiÒn bÖnh nh©n t¹m øng t­¬ng øng víi lÇn ë trªn Ngµy t¹m øng lµ ngµy mµ bÖnh nh©n ®ãng t¹m øng, ngµy nµy ph¶i sau ngµy nhËp viÖn, vµ ph¶i tr­íc hoÆc trïng víi ngµy hiÖn t¹i. §Ó x¸c ®Þnh lÇn t¹m øng ®ã lµ cña ai th× b¶ng nµy nhËn M· bÖnh nh©n lµm khãa ngoµi 4.16 B¶ng BÖnh ¸n BÖnh ¸n (M· kh¸m bÖnh, M· nh©n viªn, M· bÖnh nh©n, M· bÖnh, M· vÞ trÝ, M· n¬i §.T, Ngµy vµo, Ngµy ra, T×nh tr¹ng ra) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· kh¸m bÖnh Char M· kh¸m bÖnh Len()=9 M· nh©n viªn Char M· nh©n viªn Len()=5 M· bÖnh nh©n Char M· bÖnh nh©n Len()=9 M· bÖnh Char M· bÖnh Len()=5 M· vÞ trÝ Char M· vÞ trÝ Len()=2 M· n¬i §.T Char M· n¬i ®iÒu trÞ Len()=2 Ngµy vµo Date Ngµy bÖnh nh©n nhËp viÖn Ngµy ra Date Ngµy bÖnh nh©n ra viÖn T×nh tr¹ng ra Char T×nh ra viÖn cña bÖnh nh©n 50 Gi¶i thÝch + BÖnh ¸n lµ mèi kÕt hîp ®­îc sinh ra tõ mèi kÕt hîp Dßng Kh¸m BÖnh nªn nã nhËn tÊt c¶ c¸c khãa chÝnh cña b¶ng Dßng Kh¸m BÖnh vµ nã cã Khãa riªng cña nã (M· BÖnh ¸n) ngoµi ra thùc thÓ N¬i §iÒu TrÞ còng tham gia vµo mèi kÕt hîp nµy nªn nã nhËn thªm khãa cña thùc thÓ nµy lµm khãa Ngµy vµo lµ ngµy mµ bÖnh nh©n nhËp viªn ngµy nµy kh«ng ®­îc sau ngµy ra hoÆc sau ngµy hiÖn t¹i Ngµy ra lµ ngµy mµ bÖnh nh©n ®­îc xuÊt viÖn ngµy nµy còng ph¶i tr­íc hoÆc trïng víi ngµy hiÖn t¹i T×nh tr¹ng ra lµ nhËn xÐt cña b¸c sÜ khi bÖnh nh©n xuÊt viÖn 4.17 B¶ng N¬i §iÒu TrÞ N¬i §iÒu TrÞ (M· n¬i §.T, Tªn n¬i §.T, §¬n gi¸) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· n¬i §.T Char M· n¬i ®iÒu trÞ Len()=2 Tªn n¬i §.T Char Tªn n¬i ®iÒu trÞ 30 §¬n gi¸ Money §¬n gi¸ n¬i ®iÒu trÞ Gi¶i thÝch + N¬i ®iÒu trÞ lµ n¬i mµ bÖnh nh©n ®iÒu trÞ khi ë bÖnh viÖn. - §¬n gi¸ nãi ®iÒu trÞ lu«n nhËn gi¸ trÞ lín h¬n 0 4.18 DÞch Vô Dïng DÞch Vô Dïng (M· kh¸m bÖnh, M· nh©n viªn, M· bÖnh nh©n, M· bÖnh, M· vÞ trÝ, M· n¬i §.T, M· dÞch vô, LÇn dïng) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· kh¸m bÖnh Char M· kh¸m bÖnh Len()=9 M· nh©n viªn Char M· nh©n viªn Len()=5 M· bÖnh nh©n Char M· bÖnh nh©n Len()=9 M· bÖnh Char M· bÖnh Len()=5 M· vÞ trÝ Char M· vÞ trÝ Len()=2 M· n¬i §.T Char M· n¬i ®iÒu trÞ Len()=2 M· dÞch vô Char M· dÞch vô Len()=2 LÇn dïng Int LÇn dïng dÞch vô Gi¶i thÝch + Thùc thÓ dÞch vô dïng lµ chuyÓn tõ mèi kÕt hîp gi÷a BÖnh ¸n víi dïng dÞch vô nªn nã ph¶i nhËn tÊt c¶ c¸c khãa cña bÖnh ¸n lµm khãa chÝnh ngoµi ra nã cßn nhËn khãa cña thùc thÓ DÞch Vô lµm khãa chÝnh (M· DÞch Vô). - LÇn dïng lµ lÇn mµ bÖnh nh©n ®ã dïng mét lo¹i dÞch vô 4.19. B¶ng DÞch Vô DÞch Vô (M· dÞch vô, Tªn dÞch vô, §¬n gi¸ DV) Tªn tr­êng Lo¹i d÷ liÖu M« t¶ KÝch th­íc M· dÞch vô Char M· dÞch vô Len()=2 Tªn dÞch vô Char Tªn dÞch vô 30 §¬n gi¸ D.V Money §¬n gi¸ dÞch vô Gi¶i thÝch + B¶ng dÞch vô l­u tr÷ nh÷ng th«ng tin vÒ nh÷ng dÞch vô mµ bÖnh viÖn cã - §¬n gi¸ dÞch vô kh«ng ®­îc nhá h¬n 0 4.20. B¶ng Thuèc Dïng Thuèc Dïng (M· kh¸m BÖnh, M· nh©n viªn, M· bÖnh nh©n, M· bÖnh, M· vÞ trÝ, M· thuèc, Sè l­îng, LiÒu dïng) Tªn Tr­êng Lo¹i D÷ LiÖu M« T¶ KÝch Th­íc M· kh¸m bÖnh Char M· kh¸m bÖnh Len()=9 M· nh©n viªn Char M· nh©n viªn Len()=5 M· bÖnh nh©n Char M· bÖnh nh©n Len()=9 M· bÖnh Char M· bÖnh Len()=5 M· vÞ trÝ Char M· vÞ trÝ Len()=2 M· thuèc Char M· thuèc Len()=4 Sè l­îng Int Sè l­îng thuèc dïng LiÒu dïng Char LiÒu l­îng thuèc dïng Gi¶i thÝch + b¶ng thuèc dïng lµ mèi kÕt hîp ®­îc sinh ra tõ mèi kÕt hîp kh¸m bÖnh (thùc thÓ dßng kh¸m bÖnh) nªn nã nhËn khãa cña thùc thÓ dßng kh¸m bÖnh lµm khãa ®ång thêi nã nhËn thuéc tÝnh khãa cña thùc thÓ thuèc lµm khãa. + Thùc thÓ nµy kÕt hîp víi thùc thÓ dßng kh¸m bÖnh vµ thùc thÓ thuèc ®Ó t¹o thµnh ®¬n thuèc. Sè l­¬ng lµ sè l­îng mét lo¹i thuèc ®­îc cÊp trong mét ®¬n thuèc LiÒu dïng c«ng thøc dïng thuèc 4.21 B¶ng Thuèc Thuèc (M· Thuèc, Tªn Thuèc, §¬n Gi¸) Tªn Tr­êng Lo¹i D÷ LiÖu M« T¶ KÝch Th­íc M· Thuèc Char M· thuèc Len()=9 Tªn Thuèc Char Tªn thuèc 30 §¬n Gi¸ Money §¬n gi¸ thuèc Gi¶i thÝch + B¶ng thuèc l­u tr÷ th«ng tin vÒ thuèc Ch­¬ng IV. Thùc hiÖn Cµi ®Æt hÖ thèng i. c¸ch kÕt nèi d÷ liÖu Trong ch­¬ng tr×nh em thùc hiÖn kÕt nèi th«ng qua ®èi t­îng ADO (ActiveX Data Object), ®èi t­îng nµy cung cÊp hÇu hÕt c¸c c«ng cô ®Ó thùc hiÖn kÕt nèi víi c¬ së d÷ liÖu ADO Interface: C¸c ®èi t­¬ng ADO giao tiÕp víi d÷ liÖu th«ng qua ODBC (Open Database Connectivity), chóng cã thÓ giao tiÕp víi bÊt kú lo¹i d÷ liÖu nÕu nh­ ODBC driver hç trî. Thùc hiÖn kÕt nèi víi c¬ së d÷ liÖu: Nh­ phÇn tæng quan ng«n ng÷ ta ®· nãi ®Ó ®èi t­îng ADO kÕt nèi ®­îc víi c¬ së d÷ liÖu (hay ®Ó øng dông cã thÓ ho¹t ®éng xö lý trªn c¬ së d÷ liÖu) ta ph¶i viÕt m· lÖnh cho c«ng cô nµy kÕt nèi víi c¬ së d÷ liÖu. Cô thÓ ®Ó kÕt nèi víi c¬ së d÷ liÖu dbBenhNhan ta lµm nh­ sau: Public cn As ADODB.Connection Public Sub OpenDb() Set Cn = New ADODB.Connection Cn.Provider = "SQLOLEDB.1;" Cn.ConnectionString = " Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DbBenhNhan" Cn.Open End Sub Trong modul trªn ta khai b¸o biÕn Cn lµ toµn côc cÊp modul, Cn cã kiÓu ®èi t­îng ADODB.Connection tøc ®èi t­îng nµy dïng ®Ó kÕt nèi víi c¬ së d÷ liÖu vµ ®èi t­îng nµy cã thÓ ®­îc gäi ë mäi n¬i trong ch­¬ng tr×nh. II. c¸c ph­¬ng thøc ®èi t­îng ADODb - Open method: §­îc sö dông ®Ó më mét liªn kÕt víi Database. Ngay sau khi t¹o instance cho conection object ta cã thÓ më mét kÕt nèi víi datasour ®Ó truy suÊt d÷ liÖu. - Execute method: Cho phÐp thùc thi mét c©u lÖnh t¸c ®éng trªn datasour. Trong ®ã commandText lµ chuçi lÖnh cÇn thùc hiÖn, th«ng qua tham sè option c¸c gi¸ trÞ kh¸c nhau quy ®Þnh lo¹i commandText. Gi¸ trÞ Danh hiÖu h»ng t­¬ng øng Lo¹i cña CommandText 0 AdCmdUnknown MÆc ®Þnh khi ®Þnh nghÜa 1 AdCmdText Lµ mét c©u lÖnh, VD: c©u lÖnh SQL 2 AdCmdTable Tªn cña table mµ ta sÏ t¹o Recordset 3 AdCmdStoreProc Mét Stor Procedure trong datasour Th«ng th­êng c¸c gi¸ trÞ trªn ®­îc g¾n s½n vµo c¸c danh hiÖu h»ng vµ ®­îc l­u tr÷ trong file Include cã tªn lµ adovbs.inc. Trong ch­¬ng tr×nh nµy em sö dông gi¸ trÞ mÆc ®Þnh tøc adCmdUnknown Close method: ph­¬ng thøc nµy dïng ®Ó ®ãng c¸c kÕt nèi ®­îc chØ ra sau c©u lÖnh. Ta còng cã thÓ set ®èi t­îng nµy vÒ nothing Ngoµi ra Visual Basic cßn cung cÊp mét dÞch vô kÕt nèi b»ng Data Environment rÊt tiÖn lîi ®©y còng lµ mét d¹ng kÕt nèi ADO rÊt dÔ sö dông, tÊt c¶ hÇu nh­ ®­îc thùc hiÖn qua giao diÖn ®å häa. Trong Data Environment cã thÓ l­u tr÷ c¸c b¶ng (Table), l­u tr÷ c¸c thñ tôc l­u tr÷ (Stor Procedure) còng nh­ c¸c hµm (Function) vµ c¸c b¶ng ¶o (View) kh¸c III. Mét sè modul chÝnh cña ch­¬ng tr×nh §Ó hiÓn thÞ d÷ liÖu trong trong mét Table ta sö dông ®èi t­ëng Listview ®èi t­îng nµy t­¬ng ®èi tiÖn lîi ®Ó hiÓn thÞ d÷ liÖu cô thÓ nh­ sau: Private Sub Display_Listview() Dim rs As New ADODB.Recordset Dim Str Dim mItem As listItem listItem.ListItems.Clear Str = "select * from tblTinh order by Matinh asc" Set rs = cn.Execute(Str) 'Thuc Hien Mot Lenh SQL duoc chi ra boi str If rs.EOF = False Then While Not rs.EOF Set mItem = listItem.ListItems.Add(, , rs!MaTinh) mItem.SubItems(1) = rs!TenTinh rs.MoveNext Wend End If End Sub Trong ®ã listItem lµ ®èi t­îng Listview cã chøc n¨ng hiÓn thÞ d÷ liÖu, biÕn rs cã kiÓu Recordset ®Ó l­u tr÷ d÷ liÖu trong mét Recor (d÷ liÖu trong b¶ng). Trong ®o¹n ch­¬ng tr×nh trªn ta cßn sö dông ph­¬ng thøc Set rs = cn.Execute(Str) ®Ó thùc hiÖn c©u truy vÊn (SQL) trong ngoÆc, c©u truy vÊn nµy lÊy vÒ d÷ liÖu ®­îc cÊt trong biÕn Record (rs) vµ ®­îc hiÓn thÞ trªn Listview. §Ó thªm míi d÷ liÖu vµo mét Table trong ch­¬ng tr×nh ta sö dông ®èi t­îng Data Environment ®èi t­îng nµy cho phÐp gäi c¸c hµm hoÆc c¸c thñ tôc nh­ c¸ch gäi cña Visual Basic. D­íi ®©y lµ vÝ dô c¸ch gäi mét hµm cã tªn Sp_NhapTinh cã chøc n¨ng thªm mét tØnh míi DE.Sp_NhapTinh MaTinh, TenTinh Trong ®ã DE lµ ®èi t­îng Data Environment vµ hµm Sp_NhapTinh lµ hµm (cã thÓ lµ c¸c thñ tôc thËm chÝ lµ mét View) ®­îc viÕt vµ l­u trong c¬ së d÷ liÖu. T­¬ng tù víi c¸c thñ tôc kh¸c còng ®­îc thùc hiÖn b»ng c¸ch gäi nh­ trªn, tuy nhiªn ®èi víi thñ tôc xãa d÷ liÖu trong mét Table l¹i lµ mét viÖc kh¸ phøc t¹p bëi viÖc nµy cßn liªn quan ®Õ mét sè rµng buéc vÒ khãa. VÝ dô viÖc xãa mét tØnh thµnh, ta ph¶i ®i xãa toµn bé c¸c huyÖn, x· trùc thuéc tØnh ®ã, kh«ng nh÷ng vËy ta cßn ph¶i xãa tÊt c¶ c¸c bÖnh nh©n vµ nh©n viªn cïng c¸c giÊy tê cã liªn quan, cô thÓ ta cã m· lÖnh nh­ sau: CREATE PROCEDURE Sp_XoaTinh @MaTinh Char(2) AS ------------------------------------------- -- Xoa Tat ca can bo la benh nhan truc thuoc tinh Delete From tblCanBo Where tblCanBo.MaBenhNhan in( Select MaBenhNhan From tblBenhNhan Where tblBenhNhan.MaXa in(Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.MaTinh=@MaTinh))) ------------------------------------------------------------------------------------------- -- Xoa Tat ca cac bao hiem y te cua benh nhan thuoc tinh Delete From tblBaoHiemYTe Where tblBaoHiemYte.MaBenhNhan in( Select MaBenhNhan From tblBenhNhan Where tblBenhNhan.MaXa in(Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.MaTinh=@MaTinh))) ------------------------------------------------------------------------------------------- -- Xoa tam ung cua cac benh nhan thuoc tinh Delete From tblTamUng Where tblTamUng.MaBenhNhan in(Select MaBenhNhan From tblBenhNhan Where tblBenhNhan.MaXa in(Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.MaTinh=@MaTinh))) ------------------------------------------------------------------------------------------- -- Xoa Dung dich vu ma benh an dung Delete From tblDichVuDung Where tblDichVuDung.MaBenhNhan in(Select MaBenhNhan From tblBenhNhan Where tblBenhNhan.MaXa in(Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.MaTinh=@MaTinh))) ------------------------------------------------------------------------------------------- -- Xoa Dung Dich Vu Delete From tblDichVuDung Where tblDichVuDung.MaNhanVien in (Select MaNhanVien From tblNhanVien Where tblNhanVien.MaXa in (Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.matinh=@MaTinh))) ------------------------------------------------------------------------------------------- -- Xoa Benh An cua Benh Nhan thuoc tinh tren Delete From tblBenhAn Where tblBenhAn.MaBenhNhan in(Select MaBenhNhan From tblBenhNhan Where tblBenhNhan.MaXa in(Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.MaTinh=@MaTinh))) ------------------------------------------------------------------------------------------- -- Xoa Benh An ma Nhan Vien lap Delete From tblBenhAn Where tblBenhAn.MaNhanVien in (Select MaNhanVien From tblNhanVien Where tblNhanVien.MaXa in (Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.matinh=@MaTinh))) ------------------------------------------------------------------------------------------- --Xoa dong kham benh cua benh nhan Delete From tblDongKhamBenh Where tblDongKhamBenh.MaBenhNhan in(Select MaBenhNhan From tblBenhNhan Where tblBenhNhan.MaXa in(Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.MaTinh=@MaTinh))) ------------------------------------------------------------------------------------------- -- Xoa Dong Kham Benh Ma Nhan Vien kham Delete From tblDongKhamBenh Where tblDongKhamBenh.MaNhanVien in (Select MaNhanVien From tblNhanVien Where tblNhanVien.MaXa in (Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.matinh=@MaTinh))) ------------------------------------------------------------------------------------------- --- Xoa Thuoc ma Nhan vien cap cho don thuoc Delete From tblThuocDung Where tblThuocDung.MaNhanVien in (Select MaNhanVien From tblNhanVien Where tblNhanVien.MaXa in (Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.matinh=@MaTinh))) ------------------------------------------------------------------------------------------- -- Xoa thuoc dung cho benh nhan thuoc tinh Delete From tblThuocDung Where tblThuocDung.MaBenhNhan in(Select MaBenhNhan From tblBenhNhan Where tblBenhNhan.MaXa in(Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.MaTinh=@MaTinh))) ------------------------------------------------------------------------------------------- -- Xoa benh nhan thuoc tinh Delete From tblBenhNhan Where tblBenhNhan.MaXa in(Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.MaTinh=@MaTinh)) ------------------------------------------------------------------------------------------- -- Xoa Nhan Vien thuoc tinh Delete From tblNhanVien Where tblNhanVien.MaXa in(Select MaXa From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.MaTinh=@MaTinh)) ------------------------------------------------------------------------------------------- -- Xoa Xa truc thuoc tinh Delete From tblXa Where tblXa.MaHuyen in(Select MaHuyen From tblHuyen Where tblHuyen.MaTinh=@Matinh) ------------------------------------------------------------------------------------------- -- Xoa Huyen trong tinh Delete From tblHuyen Where tblHuyen.MaTinh=@MaTinh ------------------------------------------------------------------------------------------- -- Xoa Tinh can Xoa Delete From tblTinh Where tblTinh.MaTinh=@Matinh ------------------------------------------------------------------------------------------- GO §èi víi c¸c thñ tôc xãa huyÖn, x· còng t­¬ng tù nh­ viÖc xãa mét tØnh nªn còng ph¶i xãa tÊt c¶ c¸c d÷ liÖu cã liªn quan. §Ó tr×nh bµy d÷ liÖu em dïng view ®Ó kÕt nèi c¸c b¶ng. VÝ dô ®èi víi view ®Þa chØ la sù kÕt nèi cña ba b¶ng TØnh, HuyÖn, X· nh­ sau: CREATE VIEW dbo.vwDiaChi AS SELECT dbo.tblTINH.TenTinh, dbo.tblHUYEN.TenHuyen, dbo.tblXA.TenXa, dbo.tblXA.Maxa FROM dbo.tblHUYEN INNER JOIN dbo.tblTINH ON dbo.tblHUYEN.MaTinh = dbo.tblTINH.MaTinh INNER JOIN dbo.tblXA ON dbo.tblHUYEN.MaHuyen = dbo.tblXA.MaHuyen §Ó t×m kiÕm d÷ liÖu trong ch­ng tr×nh em sö dông hµm t×m kiÕm ®­îc x©y dùng s½n trong c¬ së d÷ liÖu vÝ dô t×m kiÕm mét bÖnh nh©n ta cã ®o¹n truy vÊn sau: CREATE FUNCTION udf_TimBenhNhanTheoHoTen (@HoBenhNhan Char(20), @TenBenhNhan char(20)) RETURNS Table ------------------------------------- AS --------------------- Return Select * From tblBenhNhan Where (tblBenhNhan.HoBenhNhan= @HoBenhNhan) and (tblBenhNhan.TenBenhNhan= @TenBenhNhan) GO Hµm nµy tr¶ vÒ mét Table vµ c¸c tiªu chÝ t×m kiÕm ®­îc chØ ra trong d÷ liÖu ®Çu vµo lµ @HoBenhNhan vµ @TenBenhNhan. T­¬ng tù nh­ vËy ta cã thÓ t×m kiÕm bÊt kú d÷ liÖu nµo cã trong c¬ së d÷ liÖu vµ víi c¸c tiªu chÝ ®­îc ®­a ra ë ®Çu vµo. Tho¹t tiªn ta cã c¶m gi¸c mét hµm (Function) h¬i gièng víi mét view song víi view kh«ng cã d÷ liÖu ®Çu vµo, song víi hµm th× ng­îc l¹i. Do ®ã ®Ó truy xuÊt d÷ liÖu th× víi hµm lµ linh ho¹t h¬n rÊt nhiÒu so víi view. Iv mét sè form chÝnh cña ch­¬ng tr×nh Form chÝnh cña ch­¬ng trinh, khi ch¹y ch­¬ng tr×nh form nµy ®­îc gäi ®Çu tiªn vµ tõ form nµy cã thÓ gäi bÊt kú form nµo kh¸c Form chÝnh cña ch­¬ng tr×nh Form th«ng tin bÖnh nh©n cã chøc n¨ng hiÓn thÞ tÊt c¶ c¸c th«ng tin vÒ bÖnh nh©n, ngoµi ra ta cßn cã thÓ thªm mét bÖnh nh©n, söa, xãa mét bÖnh nh©n trªn form nµy tÊt nhiªn lµ ng­êi thay ®æi th«ng tin lµ ng­êi ®­îc trao quyÒn truy xuÊt vµ thay ®æi d÷ liÖu. Trong form nµy khi ta click vµo mét bÖnh nh©n bÊt kú th× mäi th«ng tin vÒ bÖnh nh©n ®ã ®Òu ®­îc hiÓn thÞ lªn trªn. Ngoµi ra ta cã thÓ thay ®æi còng nh­ xem chi tiÕt mét sè th«ng tin kh¸c vÒ bÖnh nh©n nh­ bÖnh ¸n, b¶o hiÓm y tÕ, ... Form nh©n viªn: T¹i ®©y hiÓn thi tÊt c¶ c¸c th«ng tin vÒ nh©n viªn Form t×m kiÕm bÖnh nh©n form nµy cho phÐp t×m kiÕm bÖnh nh©n theo nh÷ng tiªu chÝ ®­îc chØ ra trong hép combobox (tiªu chÝ cã thÓ lµ t×m theo tªn, hä tªn, …) vµ th«ng tin cÇn t×m kiÕm ®­îc nhËp vµo trong hép textbox. Sau khi t×m kiÕm cã thÓ cho mét hoÆc mét sè bÖnh nh©n thËm chÝ cã thÓ ch¼ng t×m thÊy bÖnh nh©n nµo nªn ta cã thÓ xem chi tiÕt tõng bÖnh nh©n, vµ cã thÓ in chi tiÕt ®ã ra giÊy, chóng ta còng cã thÓ in ra toµn bé danh s¸ch bÖnh nh©n ®· t×m kiÕm ®­îc. Form t×m kiÕm bÖnh nh©n Form thèng kª bÖnh nh©n còng t­¬ng tù nh­ víi t×m kiÕm ta còng cã thÓ thèng kª theo bÖnh cña bÖnh nh©n. Sau khi t×m kiÕm th«ng th­êng ta t×m ®­îc mét danh s¸ch bÖnh nh©n vµ ta còng cã thÓ in ra danh s¸ch ®ã. Form thèng kª bÖnh nh©n. Trong ch­¬ng tr×nh cßn mét sè form kh¸c song em kh«ng tiÖn tr×nh bµy ra. Ch­¬ng V. kÕt luËn vµ ®Ò xuÊt ý kiÕn I. KÕt luËn §øng tr­íc xu h­íng ph¸t triÓn nhanh vµ m¹nh cña nÒn c«ng nghÖ th«ng tin thÕ giíi còng nh­ nÒn c«ng nghÖ th«ng tin n­íc nhµ, th× tin häc hãa qu¶n lý hµnh chÝnh lµ v« cïng quan träng vµ bøc thiÕt hiÖn nay. Nã sÏ gióp cho c¸c c¬ quan hµnh chÝnh gi¶i quyÕt nh÷ng c«ng viÖc mét c¸ch nhanh chãng vµ Ýt sai sãt nhÊt, ®Æc biÖt lµ trong lÜnh vùc qu¶n lý sæ s¸ch chøng tõ. Nh÷ng øng dông vÒ c¬ së d÷ liÖu ®· gi¶i quyÕt ®­îc nh÷ng vÊn ®Ò bøc thiÕt nªu trªn. Trong ®ît thùc tËp nµy em ®· ®­îc giao thùc hiÖn ph©n tÝch vµ thiÕt kÕ hÖ thèng qu¶n lý bÖnh nh©n t¹i bÖnh viÖn ®a khoa tØnh Kh¸nh Hßa. Tuy ch­¬ng tr×nh ch­a ®­îc hoµn thiÖn c¸c chøc n¨ng, song nã ®· cho em thÊy ®­îc vÊn ®Ò quan träng trong lÜnh vùc qu¶n lý, víi ch­¬ng tr×nh qu¶n lý bÖnh nh©n khi hoµn thiÖn sÏ gióp cho nh©n viªn qu¶n lý bÖnh nh©n còng nh­ qu¶n lý mét sè th«ng tin vÒ nh©n viªn trong bÖnh viÖn mét c¸ch nhanh chãng vµ hiÖu qu¶. h¹n chÕ cña ch­¬ng tr×nh Do thêi gian thùc hiÖn ph©n tÝch vµ thiÕt kÕ hÖ thèng lµ t­¬ng ®èi h¹n chÕ so víi mét ®Ò tµi t­¬ng ®èi réng vµ phong phó nªn kh«ng thÓ tr¸nh khái nh÷ng thiÕu sãt nhÊt ®Þnh. Bªn c¹nh ®ã ch­¬ng tr×nh cßn cã mét sè chøc n¨ng ch­a hoµn thiÖn vµ chÝnh x¸c. H¬n n÷a viÖc t×m hiÓu ng«n ng÷ cµi ®Æt (SQL Server vµ Visual Basic) cßn nhiÒu h¹n chÕ nªn viÖc tËn dông ®­îc nh÷ng thÕ m¹nh cña ng«n ng÷ lµ ch­a mang l¹i hiÖu qu¶ cao. III. h­íng ph¸t triÓn cña ®Ò tµi HÖ thèng qu¶n lý bÖnh nh©n sau khi ®­îc ph©n tÝch thiÕt kÕ vµ ®­îc cµi ®Æt hoµn thiÖn sÏ gãp phÇn quan träng trong viÖc qu¶n lý chøng tõ sæ s¸ch vÒ bÖnh nh©n t¹i bÖnh viÖn. Song nhÊt thiÕt cÇn ph¶i cã sù qu¶n lý song song gi÷a bÖnh nh©n vµ nh©n viªn trong bÖnh viÖn. NÕu ch­¬ng tr×nh ®­îc cµi ®Æt trªn m«i tr­êng m¹ng hay cã mét trang web cña bÖnh viÖn trªn m¹ng internet ®Ó gióp cho ng­êi th©n cña bÖnh nh©n cã thÓ theo dâi qu¸ tr×nh ®iÒu trÞ cña ng­êi nhµ m×nh mµ kh«ng nhÊt thiÕt ph¶i ®Õn bÖnh viÖn. §iÒu quan trong h¬n n÷a lµ ®èi víi nh÷ng bÖnh nh©n ph¶i chuyÓn bÖnh viÖn (vÝ dô bÖnh nh©n ph¶i chuyÓn tõ Nha Trang ®i thµnh phè Hå ChÝ Minh), trong nh÷ng tr­êng hîp cÊp b¸ch nh­ vËy kh«ng thÓ ®em theo hå s¬ bÖnh ¸n ngay ®­îc khi ®ã t¹i n¬i bÖnh nh©n ®­îc chuyÓn ®Õn cã thÓ truy cËp ®Õn trang web mµ bÖnh nh©n ®Õn tõ ®ã, xem th«ng tin vÒ bÖnh nh©n vµ ®­a ra ph­¬ng ¸n ®iÒu trÞ h÷u hiÖu nhÊt. Ngoµi ra ®èi víi nh÷ng tr­êng hîp khã c¸c b¸c sÜ cã thÓ héi chuÈn ngay trªn m¹ng (m¹ng liªn bÖnh viÖn). Tµi liÖu tham kh¶o [1]. Ph¹m H÷u Khang(Chñ biªn) LËp tr×nh øng dông chuyªn nghiÖp SQL Server 2000 tËp 1,2,3 [2]. NguyÔn V¨n Hoµng vµ nhãm t¸c gi¶ Elicom Tù häc Microsoft SQL Server 7.0 [3]. TS.TrÇn V¨n T­ - Phó Thµnh - Thiªn Tr­êng vµ nhãm kü s­ tin häc øng dông Microsoft SQL Server 7.0 [4]. TS §ç Trung TuÊn M« H×nh C¬ Së D÷ LiÖu [5]. PTS NguyÔn TiÕn (Dòng chñ biªn) biªn dÞch TrÇn ThÕ San - Vò H÷u T­êng Kü N¨ng LËp Tr×nh Visual Basic 6.0 [6]. C¸t V¨n Thµnh - H¹nh Nguyªn Nh÷ng bµi thùc hµnh c¬ së d÷ liÖu Visual Basic c¨n b¶n [7]. NguyÔn ThÞ Ngäc Mai LËp tr×nh c¬ së d÷ liÖu víi Visual Basic 6.0 [8]. ThS.NguyÔn H÷u Träng Bµi gi¶ng c¬ së d÷ liÖu vµ ph©n tÝch thiÕt kÕ hÖ thèng th«ng tin qu¶n lý [9]. TrÇn Thµnh Trai Ph©n tÝch vµ thiÕt kÕ hÖ thèng th«ng tin qu¶n lý [10]. NguyÔn §×nh Tª LËp tr×nh c¬ së d÷ liÖu víi Visual Basic trong 21 ngµy tËp 1,2,3 [11]. NguyÔn V¨n Ba Ph©n tÝch vµ thiÕt kÕ hÖ thèng th«ng tin Môc lôc Trang Lêi nãi ®Çu 1 Ch­¬ng I: Giíi ThiÖu Néi Dung §Ò Tµi 2 Giíi thiÖu hÖ thèng 2 NhiÖm vô cña hÖ thèng qu¶n lý bÖnh viÖn 2 Tæ chøc cña bÖnh viÖn ®a khoa tØnh Kh¸nh Hßa 2 3. Nh÷ng yªu cÇu cÇn gi¶i quyÕt 3 4. H­íng ph¸t triÓn cña hÖ thèng qu¶n lý bÖnh nh©n hiÖn nay. 4 H­íng thùc thi ®Ò tµi 4 Ch­¬ng II. Giíi thiÖu ng«n ng÷ cµi ®Æt hÖ thèng 5 I. Giíi thiÖu chung vÒ hÖ qu¶n trÞ c¬ së d÷ liÖu vµ SQL Server 2000 5 I.1 HÖ qu¶n trÞ c¬ së d÷ liÖu lµ g×? 5 I.2 Giíi thiÖu chung vÒ SQL Server 2000 5 1. C¸c thµnh phÇn cña SQL Server 2000. 6 2. C¸c ®èi t­îng c¬ së d÷ liÖu 6 3. Giíi thiÖu mét sè ®èi t­îng c¬ së d÷ liÖu SQL Server 8 4. KiÓu d÷ liÖu - Data Type 9 5. Mét sè ph¸t biÓu c¬ b¶n cña T-SQL 9 6. Kh¸i niÖm vÒ ®èi t­îng trong SQL vµ c¸ch t¹o ®èi t­îng trong SQL Server 2000 10 II. giíi thiÖu vÒ Visual Basic 6.0 vµ c¬ së d÷ liÖu trong Visual Basic 6.0. 14 II.1 Giíi thiÖu chung vÒ Visua Basic 14 II.2 ADO lµ g× ? 14 II.3 C¸c thuéc tÝnh ®Æc biÖt cña ®èi t­îng ADO 15 Ch­¬ng III. Ph©n TÝch Vµ ThiÕt KÕ HÖ Thèng 16 I. Ph©n tÝch hÖ thèng vÒ chøc n¨ng 16 I.1BiÓu ®å ph©n cÊp chøc n¨ng 16 1. BiÓu ®å ph©n cÊp chøc n¨ng lµ g× ? 16 2. §Æc ®iÓm cña biÓu ®å ph©n cÊp chøc n¨ng: 16 I.2 BiÓu ®å luång d÷ liÖu 17 1. BiÓu ®å luång d÷ liÖu lµ g× ? 17 2. Kü thuËt ph©n møc 17 II. Ph©n tÝch hÖ thèng vÒ d÷ liÖu 21 II.1 M« h×nh thùc thÓ/liªn kÕt 21 1. Kh¸i niªm m« h×nh thùc thÓ/liªn kÕt 21 2. C¸c lo¹i m« h×nh E/A 21 II.2. M« h×nh quan hÖ 24 1. Kh¸i niÖm 24 2. C¸c d¹ng chuÈn cña l­îc ®å quan hÖ 24 3. C¸c l­îc ®å quan hÖ cña hÖ thèng 24 4. Danh S¸ch C¸c B¶ng 25 Ch­¬ng IV. Thùc hiÖn Cµi ®Æt hÖ thèng 34 i. c¸ch kÕt nèi d÷ liÖu 34 II. c¸c ph­¬ng thøc ®èi t­îng ADODb 34 III. Mét sè modul chÝnh cña ch­¬ng tr×nh 35 Iv mét sè form chÝnh cña ch­¬ng tr×nh 40 ch­¬ng V. kÕt luËn vµ ®Ò xuÊt ý kiÕn 44 I. KÕt luËn 44 ii. h¹n chÕ cña ch­¬ng tr×nh 44 III. h­íng ph¸t triÓn cña ®Ò tµi 44 Tµi liÖu tham kh¶o 45

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

  • docbao cao co muc luc.doc
  • rarBK16_10.rar