摘要:為了使醫務人員能方便快捷地查詢藥品說明書的信息,基于ASP.Net 2.0技術設計實現了醫院藥品說明書的web管理系統。文章討論了系統的需求分析、數據庫設計及系統設計實現過程中的一些關鍵技術。實際應用表明,系統有利于提高藥品治療質量和合理用藥水平。
關鍵詞:ASP.Net;藥品說明書;Web管理系統
中圖分類號:TP311文獻標識碼:B 文章編號:1009-3044(2009)24-6596-02
Design of Drug Instructions Web Management System
QIU Ling
(Department of Pharmacy, Foshan Hospital of Traditional Chinese Medcine, Foshan 528000, China)
Abstract: In order to enable medical personnel to quickly and easily query the information of Drug Instructions,this paper designs and Implements Web management system of a Hospital Drug Instructions based on ASP.Net 2.0 . Further, this paper discuss the needs of the system analysis, database design and system design process to achieve some of the key technologies. Practical application show that the system will help improve the quality of drug treatment and the level of rational drug use.
Key words: ASP.Net; drug instructions; web management system
藥品說明書是藥品生產單位對藥品主要特性及技術標準的介紹,是醫師、藥師、護士和患者合理用藥的科學依據,是宣傳合理用藥和普及醫藥知識的指南,藥品生產單位對藥品說明書的真實性要承擔法律的責任。為了實現藥品說明書的信息化管理,有效地提高藥品治療質量和合理用藥水平,本文利用ASP.Net 2.0和MS-SQL Server等技術設計實現了醫院藥品說明書的Web管理系統,從而使醫務人員和患者在臨床用藥的過程中有了簡便快捷的網絡平臺。
1 系統結構及數據庫設計
藥品說明書Web管理系統采用ASP.Net 2.0技術進行開發,其中,服務器操作系統選用Microsoft Windows Server 2003,網絡數據庫平臺為Microsoft SQL Server 2005,前端開發工具則選用Microsoft Visual Studio.NET 2005中的C#語言,相關的Web窗體由Macromedia Dreamweaver CS2進行設計。ASP.Net 2.0是微軟公司繼ASP、ASP 1.0之后推出的用于創建、管理和部署Web應用程序的理想開發平臺,它通過代碼隱藏的方法將頁面顯示和代碼相分離,并允許使用任何腳本標記語言來為使用各種游覽器的用戶提供信息。同時,本系統采用ADO.Net來訪問數據庫,和傳統的ODBC、ADO等數據訪問方式相比,ADO.Net使用了無連接傳輸模式來訪問數據源,從而減少了冗長的數據連接操作;而且通過ADO.Net添加的DataSet對象,使得網絡中各個用戶無需獨立鎖定數據源,有效地避免了多個用戶同時訪問后臺數據庫時的潛在競爭。
1.1 系統結構
藥品說明書Web管理系統的系統結構如圖1所示,根據管理人員和醫務人員的不同應用需求,系統分別為他們提供了對應的操作界面及操作功能。
1.1.1 管理人員身份
1) 藥品說明書的信息維護:把醫院所有藥品說明書的信息添加到數據庫中,并定期進行更新和維護。
2) 回復留言:根據醫務人員提交的有關藥品咨詢請求,后臺審閱后給出相應的答復。
3) 基本信息的維護:維護藥品說明書、用戶信息等基本信息。
1.1.2 醫務人員身份
1) 查詢藥品說明書的信息:醫務人員可以隨時查詢醫院所有藥品說明書的信息,了解藥品的藥理毒理、適應癥、用法用量、不良反應、禁忌及注意事項等信息。
2) 提交留言:醫務人員可向管理人員就某些藥品進行更為深入的咨詢。
3) 個人資料管理:醫務人員可以對個人的基本信息(如登錄名稱及口令等)進行維護管理。
1.2 數據庫的E-R模型
根據系統的功能設計要求,其E-R模型如圖2所示。
把圖2的E-R模型轉換為以下關系模型(帶下畫線的字段為表的主鍵):
1) 用戶信息(工號,姓名,性別,所屬科室,登錄密碼,角色身份);
2) 藥品類別信息(類別代碼,類別名稱);
3) 藥品說明書信息(藥品編號,藥品名稱,通用名,商品名,類別代碼,性狀,藥理毒理,適應癥,用法用量,不良反應,禁忌,注意事項,藥物相互作用,藥物規格,貯藏,包裝,有效期,批準文號,生產企業);
4) 留言信息(編號,用戶,標題,發表時間,詳細信息,回復狀態)。
2 系統設計的主要原理
藥品說明書Web管理系統采用如圖3所示的分層體系結構,這種多層結構在層與層之間相互獨立,任何一層的改變不會影響其他層的功能。在圖3中,數據訪問層實現對數據的連接和訪問等功能,如對后臺數據庫進行數據的增刪改等操作;業務邏輯層在數據訪問層的基礎上實現業務的具體邏輯功能,如添加、查詢藥品說明書信息、發表留言等;頁面顯示層則把業務功能在游覽器上顯示出來,并與用戶進行交互操作。這里就數據訪問層和業務邏輯層的核心技術展開論述。
2.1 數據訪問層的設計
在ASP.Net應用系統的開發過程中,數據庫操作是開發人員所面對的最常見任務。為了簡化相關的程序設計,并有效地實現代碼重用,我們運用面向對象技術把所有與數據庫交互的工作封裝為一個名為Database的類,Database類的主要成員說明見表1。
以Database.ExecuteSQL方法為例,其實現代碼如下:
public int ExecuteSQL(String Sqltring)
{
int count=-1;
open();//打開數據庫連接
try
{
SqlCommand cmd=new SqlCommand(SqlString,Connection); //新建SqlCommand對象
count=cmd.ExecuteNonQuery();//調用SqlCommand對象的ExecuteNonQuery方法
}
catch
{count=-1;
}
finally
{close();//關閉數據庫連接
}
return count;//返回執行SQL影響的記錄數
}
2.2 業務邏輯層的設計
與數據訪問層類似,藥品說明書Web管理系統的業務邏輯層被封裝為藥品說明書DrugInstructions類、用戶UsersClass類及留言Topic類。其中,藥品說明書DrugInstructions類的主要成員說明見表2。
以DrugInstructions.AddData方法為例,其實現代碼如下:
public bool AddData (){
SqlParameter[] Params= newSqlParameter[19];
DataBase DB=new DataBase();
Params[0]=DB.MakeInParam(\"@ID\",SqlDbType.Int, ID);// 藥品編號
Params[1]=DB.MakeInParam(\"@ DrugInstructionsName\",SqlDbType.VarChar,50, DrugInstructionsName);// 藥品說明書名稱
……
Params[18]=DB.MakeInParam(\"@Productionenterprise\",SqlDbType.VarChar,50, Productionenterprise);// 藥品生產企業
int count=-1;
count=DB. ExecuteNonSQL(\"DrugInstructions_Add\", Params);
if (count>0)
return true;
else return 1;
}從上述代碼可知,DrugInstructions.AddData方法是通過調用DrugInstructionsName_Add存儲過程來實現數據記錄添加,為此,需要在Microsoft SQL Server中創建如下的存儲過程:
CREATE PROCEDUREDrugInstructions_Add
(@CoursesID int,@ DrugInstructionsName (50) ,
……
@ Productionenterprise(50)
)
AS
INSERT INTO DrugInstructions (ID, DrugInstructionsName, ……, Productionenterprise)
VALUES(@ID, @ DrugInstructionsName, ……, @Productionenterprise )
3 結束語
藥品說明書Web管理系統目前已在我院正常運行,經過一年多的應用實踐,證明了系統是可行的,有效的和穩定的,進而使醫藥人員更方便、快速、及時、準確、大量地掌握藥品信息,為臨床提供更多的用藥選擇,有效地提高工作效率和合理用藥水平。
參考文獻:
[1] 葉銀梅.醫院藥品信息庫在臨床的應用[J].中國現代應用藥學雜志,2006,23(7):718-719.
[2] 姚文.應用Access數據庫管理藥品說明書[J].藥學實踐雜志,2002,20(6):371-373.
[3] 施伯樂,丁寶康,汪衛.數據庫系統教程(第二版)[M].北京:高等教育出版社,2003,286-295.
[4] 劉慶國,聶元銘.ASP.NET企業級開發案例精解(C#編程篇)[M].北京:人民郵電出版社,2006,39-112.