freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

社區(qū)醫(yī)院藥品管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)doc-在線瀏覽

2024-08-28 12:50本頁面
  

【正文】 [12]。工作站:WINDOWS me/2000/XP,TCP/IP協(xié)議,Delphi 。服務(wù)器:,硬盤120G或更大,內(nèi)存512M。藥品進(jìn)銷存管理系統(tǒng)設(shè)置基礎(chǔ)資料采購管理藥庫查詢出庫管理入庫管理采購單審核采購單建立廠商字典藥品字典權(quán)限設(shè)定用戶設(shè)定庫存盤點(diǎn)密碼設(shè)定 圖31 藥品信息管理系統(tǒng)功能模塊劃分圖31概括了系統(tǒng)的功能模塊,可以看出,不同類型的用戶對系統(tǒng)有不同的權(quán)限,對系統(tǒng)的操作內(nèi)容也不同。① 用戶設(shè)定:維護(hù)和設(shè)置藥品進(jìn)銷存管理系統(tǒng)用戶基本信息。③ 密碼設(shè)定:為當(dāng)前已經(jīng)登陸的用戶修改密碼。① 藥品字典:維護(hù)藥品的基本信息,如藥品的名稱、藥品的類型、規(guī)格、單位、和藥品描述、藥品用法以及零售轉(zhuǎn)換率等?;A(chǔ)資料藥品字典廠商字典圖33 基礎(chǔ)資料模塊(3) 藥品業(yè)務(wù)信息管理藥品進(jìn)銷存業(yè)務(wù)信息管理可以分為采購管理、入庫管理、出庫管理、庫存盤點(diǎn)和藥庫查詢五大模塊。普通用戶也可以根據(jù)自己所擁有的權(quán)限使用本系統(tǒng)的藥品業(yè)務(wù)信息管理的部分功能。① 采購管理:記錄采購單的詳細(xì)信息,包括采購日期和采購廠商以及各種藥品的信息和購入價(jià)格、購入數(shù)量,并實(shí)現(xiàn)采購單據(jù)的審核等。② 入庫管理:對采購或退藥的藥品進(jìn)行入庫登記,包括入庫類別、入庫日期、藥品的入庫信息等。③ 出庫管理:藥房領(lǐng)藥或藥品銷售領(lǐng)藥出庫的登記,包括出庫日期、出庫類別、銷售價(jià)格和銷售數(shù)量,以及出庫單據(jù)的審核等。④ 庫存盤點(diǎn):定期對藥庫中的藥品進(jìn)行盤點(diǎn)登記,核對藥品賬面數(shù)量和藥品實(shí)際數(shù)量,統(tǒng)計(jì)盈虧等。采購管理采購單審核采購單建立入庫管理出庫管理庫存盤點(diǎn)藥庫查詢圖34 藥品進(jìn)銷存業(yè)務(wù)模塊 系統(tǒng)流程圖如圖35所示,實(shí)現(xiàn)了該系統(tǒng)的登錄流程。 信息管理功能管理人員進(jìn)入系統(tǒng)后,可看到系統(tǒng)的全部內(nèi)容,可以對用戶權(quán)限進(jìn)行管理,并把操作后的信息重新寫進(jìn)數(shù)據(jù)庫。具有不同權(quán)限的人可以對系統(tǒng)進(jìn)行相對應(yīng)的操作,從而保證了系統(tǒng)的安全性。 數(shù)據(jù)庫設(shè)計(jì) 創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表首先用Microsoft SOL Server 2000創(chuàng)建數(shù)據(jù)庫,根據(jù)需求分析創(chuàng)建,藥品進(jìn)銷存管理系統(tǒng)總共需要13個(gè)表,各表的含義如表31所示。(1) 藥品信息表(Medicine)的定義如表32所示。表33 藥商信息表說明字段名稱字段描述數(shù)據(jù)類型可否為空ProviderID公司編號Varchar(10)主鍵ProName公司名稱Varchar(30)Address地址Varchar(30)Principal負(fù)責(zé)人Varchar(8)Telephone電話Varchar(20)(3) 用戶信息表(User)的定義如表34所示。表35 權(quán)限表說明字段名稱字段描述數(shù)據(jù)類型可否為空UserID權(quán)限編號Varchar(8)主鍵MenuName菜單名稱Varchar(20)(5) 采購主表(StockHeader)的定義如表36所示。表37 采購明細(xì)表說明字段名稱字段描述數(shù)據(jù)類型可否為空StockID采購編號Varchar(10)主鍵+外鍵MedicineID藥品編號Varchar(10)主鍵ByPrice購進(jìn)價(jià)格MoneyJobPrice批發(fā)價(jià)格MoneyRetailPrice零售價(jià)格MoneyAmount購進(jìn)數(shù)量Numeric(7) 入庫主表(InDepotHeader)的定義如表38所示。表39 入庫明細(xì)表說明字段名稱字段描述數(shù)據(jù)類型可否為空InDepotID入庫編號Varchar(10)主鍵+外鍵ValidityDatetime有效日期Datetime主鍵MedicineID藥品編號Varchar(10)ByPrice購進(jìn)價(jià)格MoneyJobPrice批發(fā)價(jià)格MoneyRetailPrice零售價(jià)格MoneyAmount購進(jìn)數(shù)量NumericBatchCode批號Varchar(20)(9) 銷售主表(SaleHeader)的定義如表310所示。表311 銷售明細(xì)表說明字段名稱字段描述數(shù)據(jù)類型可否為空SaleID銷售編號Varchar(10)主鍵+外鍵ValidityDatetime有效日期Datetime主鍵MedicineID藥品編號Varchar(10)RetailPrice零售價(jià)格MoneyAmount銷售數(shù)量Numeric(11) 盤點(diǎn)主表(CheckHeader)的定義如表312所示。表313 盤點(diǎn)明細(xì)表說明字段名稱字段描述數(shù)據(jù)類型可否為空CheckID盤點(diǎn)編號Varchar(10)主鍵MedType藥品類別Varchar(30)ValidityDatetime有效日期Datetime主鍵MedicineID藥品編號Varchar(10)CheckAmount盤點(diǎn)數(shù)量Numeric(13)庫存表(Storage)的定義如表314所示。 存儲過程的建立存儲過程是Transact_SQL 語句的預(yù)編譯集合,這些語句在一個(gè)名稱下存儲并作為一個(gè)單元處理。在系統(tǒng)中使用存儲過程,數(shù)據(jù)庫的新增,刪除,更新等操作就變得輕松和便于管理。存儲過程可以向用戶返回執(zhí)行的結(jié)果集,使用存儲過程可以極大的提高,程序的性能,減少網(wǎng)絡(luò)流量和防止SQL注入式攻擊。存儲過程是Transact_SQL 語句的預(yù)編譯集合,這些語句在一個(gè)名稱下存儲并作為一個(gè)單元處理。在系統(tǒng)中使用存儲過程,數(shù)據(jù)庫的新增,刪除,更新等操作就變得輕松和便于管理。存儲過程可以向用戶返(2) proc_StockTask:此存儲過程主要用來實(shí)現(xiàn)采購模塊后臺數(shù)據(jù)所有的業(yè)務(wù)邏輯。(4) proc_Sale:此存儲過程主要用來實(shí)現(xiàn)入庫模塊的業(yè)務(wù)邏輯。(6) proc_Storage:此存儲過程主要用來實(shí)現(xiàn)庫存的查詢功能。圖41 藥品進(jìn)銷存管理系統(tǒng)主界面(1) 添加主窗體的MainMenu菜單和快捷按鈕對應(yīng)的事件,這些事件分別發(fā)打不同的模塊窗體。其代碼如下:procedure (FileName: string)。begin ADOConnStr := 39。 try //動態(tài)加載DLL,DLL中包含了讀取INI文件的函數(shù) if ReadIni(FileName,39。,39。) = 39。 then begin//彈出UDL連接數(shù)據(jù)窗體 ADOConnStr := PromptDataSource(, )。BDConn39。DBConFileName39。 end else ADOConnStr := ReadIni(FileName,39。,39。)。 := ADOConnStr。 except (39。,39。,16)。BDConn39。DBConFileName39。39。 end。end。其代碼如下:procedure (Sender: TObject)。//登錄窗體的現(xiàn)實(shí) frmLogin := (Self)。procedure (FileName: string)。begin ADOConnStr := 39。 try //動態(tài)加載DLL,DLL中包含了讀取INI文件的函數(shù) if ReadIni(FileName,39。,39。) = 39。 then begin//彈出UDL連接數(shù)據(jù)窗體 ADOConnStr := PromptDataSource(, )。BDConn39。DBConFileName39。 end else ADOConnStr := ReadIni(FileName,39。,39。)。 := ADOConnStr。 except (39。,39。,16)。BDConn39。DBConFileName39。39。 end。end。公用單元主要實(shí)現(xiàn)調(diào)用存儲過程打開數(shù)據(jù)集,執(zhí)行SQL語句更新數(shù)據(jù)庫信息和通過SQL語句查詢信息等。(1) WriteIni方法:將數(shù)據(jù)字符串保存在初始化INI文件中。(3) FileName函數(shù):用于獲取初始化文件路徑。(5) FindSQL函數(shù):執(zhí)行SQL語句,查詢數(shù)據(jù)。 用戶登錄此模塊通過驗(yàn)證用戶的編號和密碼來實(shí)現(xiàn)用戶登錄功能。為了實(shí)現(xiàn)這些功能,需要如下控件:1個(gè)TImage控件,顯示登錄畫面;2個(gè)TBitBtn控件,裝載按鈕圖片,分別執(zhí)行登錄和放棄功能;2個(gè)TEdit控件,分別顯示用戶輸入的用戶編碼和密碼;2個(gè)TLabel控件,顯示用戶提示信息;1個(gè)TADOQuery控件,獲取用戶登陸權(quán)限。圖42 用戶登錄界面(1) 在“proc_Base”存儲過程中添加判斷用戶登錄和用戶權(quán)限的SQL語句。(3) 添加“放棄”按鈕的單擊事件,此事件的功能是放棄登錄并關(guān)閉應(yīng)用程序。 用戶設(shè)置用戶設(shè)置模塊實(shí)現(xiàn)了系統(tǒng)用戶維護(hù)功能。為了實(shí)現(xiàn)這些功能,需要如下控件:1個(gè)TDBGrid控件,顯示用戶信息;4個(gè)TBitBtn控件,裝載按鈕圖片,分別執(zhí)行添加、修改、刪除和保存功能;2個(gè)TDBEdit控件,分別顯示用戶輸入的用戶名稱和密碼;1個(gè)TADOQuery控件,數(shù)據(jù)查詢控件,用來執(zhí)行SQL語句,查詢用戶數(shù)據(jù);1個(gè)TDBText控件,用于顯示登陸編號信息;1個(gè)TDataSource控件,數(shù)據(jù)源控件。圖43 “用戶設(shè)定”窗體(1) 向存儲過程proc_Base中添加一段用于檢查用戶編號是否存在的SQL語句。Select_LoginID_Max39。其代碼如下:procedure (Sender: TObject)。begin 。100039。Exec proc_Base Flag=39。Select_LoginID_Max39。39。,LoginID=39。 //調(diào)用存儲過程 OpenDataSQL(, SQLMaxID)。LoginID39。 := MaxID。LoginID39。end。begin 。procedure (Sender: TObject)。確定要?jiǎng)h除此條記錄嗎?39。提示39。 。end。begin if in [dsInsert,dsEdit] then 。(3)在窗體的OnShow事件中調(diào)用公用單元的OpenDataSQL方法打開用戶信息表數(shù)據(jù)集。procedure (Sender: TObject)。Select * From [User]39。end。 權(quán)限設(shè)置此模塊實(shí)現(xiàn)了設(shè)置系統(tǒng)使用者權(quán)限的功能。為了實(shí)現(xiàn)這些功能,需要如下控件:1個(gè)TTreeView控件,用來顯示用戶信息的樹形列表;2個(gè)TBitBtn控件,確定和取消權(quán)限操作按鈕;1個(gè)TCheckListBox控件,權(quán)限列表框;1個(gè)TADOQuery控件,用于獲取數(shù)據(jù)集。圖44 權(quán)限設(shè)定(1) 添加窗體的OnShow事件,此事件的功能主要是當(dāng)窗體打開時(shí)初始化TCheckListBox控件和TTreeView控件,分別顯示權(quán)限列表和當(dāng)前系統(tǒng)中的用戶信息。 更改密碼“更改密碼”窗體主要實(shí)現(xiàn)對當(dāng)前已經(jīng)登錄了的用戶修改密碼。為了實(shí)現(xiàn)這些功能,需要如下控件:2個(gè)TBitBtn控件,分別用來保存數(shù)據(jù)和關(guān)閉模塊窗體;3個(gè)TEdit控件,分別用來輸入“原密碼”、“新密碼”和“確認(rèn)新密碼”;5個(gè)TLabel控件,顯示信息描述簡介;1個(gè)TADOQuery控件,用于獲取數(shù)據(jù)集。圖45 更改密碼(1) 向“proc_Base”存儲過程中添加更新密碼的SQL語句。其實(shí)現(xiàn)代碼如下:if Flag1 =39。 修改密碼的時(shí)候 begin update [User] set [Password] = Pass where LoginID=LoginID end end(3) 添加窗體的OnShow事件,此事件的功能主要是顯示當(dāng)前登錄的用戶的編號信息。 藥品字典“藥品字典維護(hù)”窗體主要用于藥品基本信息的建立和維護(hù)。窗體的設(shè)計(jì)界面如圖46所示。添加窗體的OnClose事件,其主要功能是釋放窗體實(shí)例。(3) 添加edtChangeRate控件的OnKeyPress事件,此事件限制了在edtChangeRate控件中只能輸入數(shù)字類型數(shù)據(jù)。為了實(shí)現(xiàn)這些功能,需要如下控件:1個(gè)TDBGrid控件,用來顯示數(shù)據(jù)表格;5個(gè)TBitBtn控件,分別用來實(shí)現(xiàn)添加、修改、刪除、保存和取消操作;4個(gè)TDBEdit控件,用來輸入或顯示數(shù)據(jù)字段值;1個(gè)TDBText控件,用于顯示編號信息;5個(gè)TLabel控件,顯示信息描述簡介;1個(gè)TDataSource控件,數(shù)據(jù)源控件;1個(gè)TADOQuery控件,用于獲取數(shù)據(jù)集。圖47 藥商字典維護(hù)(1) 添加窗體的OnShow事件,在此事件中調(diào)用公用單元的OpenDataSQL方法,通過傳入指定的SQL語句打開藥商字典數(shù)據(jù)集。(2) 依次添加“添加”、“修改”、“刪除”、“保存”和“取消”按鈕的單擊事件,這些事
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1