毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

医药GSP管理系统 第4页

更新时间:2008-4-14:  来源:毕业论文

医药GSP管理系统 第4页

3  药品信息管理运行结果

“药品信息管理”界面主要用于查询、添加、修改和删除药品信息;根据药品剂型自动生成药品编号;根据药品的通用名自动生成药品简称;可以利用记录定位按钮实现精确记录定位;支持快速浏览药品信息等功能。

1.表单设计

1)在“医药GSP管理系统”项目中,利用Class_Frm类创建新表单,名称为“药品信息管理”。

2)在表单中添加Text控件、Label控件、Pageframe控件、Edit控件、Combo控件、Grid控件和Shape控件(用于修饰界面)和Button_Y控件、Button_F控件。

3)重要控件的重要属性如表2所示。

2                            重要属性及值

对象

属性

Class_Frm12

BorderStyle

0 – 无边框

Class_Frm12

TitleBar

0 – 关闭

Combo1

RowSource

Tab_DoseType.剂型

Combo1Combo2Combo4

RowSourceType

6 – 字段

Combo1Combo2Combo3Combo5Combo6

Style

2 - 下拉列表框

Combo2

RowSource

Tab_Unit.单位名称

Combo3Combo6

RowSource

,

Combo5

RowSource

,,

Combo5

RowSourceType

1 –

Text11

InputMask

9999

PF

PageCount

2

PF

TabStyle

1 – 非两端

4)为表单创建方法程序List_Sele

2.代码设计

由于在设计数据库时,遵循数据规范化原则,在药品信息表中生产厂家是以厂家编号字段存储,药品的库存上/下限信息保存在库存上下限表中,所以在显示药品信息时,需要应用SQL语句的内联接查询出药品的完整信息并显示在表格中,程序代码如下:

SELECT Tab_drug.药品编号, Tab_drug.通用名, Tab_drug.曾用名,Tab_drug.英文名,;

 Tab_drug.简称, Tab_drug.剂型, Tab_drug.规格,Tab_drug.包装, Tab_drug.单位,;

 Tab_drug.成份, Tab_drug.性状,Tab_drug.药理毒理, Tab_drug.适应症, Tab_drug.用法用量,;

 Tab_drug.不良反应,Tab_drug.禁忌, Tab_drug.注意事项, Tab_drug.药物过量, Tab_drug.贮藏,;

 Tab_drug.有效期, Tab_drug.有效期单位,Tab_drug.注册商标, Tab_drug.批准文号,;

 Tab_wlunit.全称 AS 生产厂家, Tab_Wlunit.编号 AS 厂家编号,Tab_drug.产地,Tab_drug.备注,;

  Tab_kc_confine.库存上限 AS 上限,Tab_kc_confine.库存下限 AS 下限;

 FROM  yygsp!tab_drug INNER JOIN yygsp!tab_wlunit ;

        ON  Tab_drug.生产厂家 = Tab_wlunit.编号;

       INNER JOIN yygsp!tab_kc_confine ;

   ON  Tab_drug.药品编号 = Tab_kc_confine.药品编号 Into Cursor Temp_Drug

Thisform.PF.P2.Grid1.ColumnCount=-1       &&设置表格的列数数据表中的字段数

Thisform.PF.P2.Grid1.RecordSource="Temp_Drug"

在“添加”按钮的Button_Click事件中添加如下代码实现自动生成以“PJ”为标识的药品编号。

Set Procedure To Procedure\UsedPrg  &&打开过程文件

Select Tab_Drug

*调用自定义函数生成药品编号

Thisform.PF.P1.text1.Value=AutoNO("Tab_Drug","药品编号","PJ","7","")

Combo1InteractiveChange事件中添加如下代码实现根据用户选择的剂型自动生成七位的药品编号。

Set Procedure To Procedure\UsedPrg  &&打开过程文件

Select 剂型标识 From Tab_DoseType Where 剂型=This.Value Into Cursor Temp_D

Thisform.PF.P1.text1.Value=AutoNO("Tab_Drug","药品编号",Temp_D.剂型标识,"7",;

"Left(药品编号,2)=Alltrim(Temp_D.剂型标识)")  &&调用自定义函数生成药品编号

在“厂家编号”文本框的LostFocus事件中实现用户输入厂家编号后,自动填入厂家名称,如果不存在则给予提示。

Select 全称 From Tab_WLUnit Where Alltrim(Tab_WLUnit.编号)=Alltrim(This.Value) ;

 Into Cursor Temp_WLUnit

Go Top

If Eof()

        Messagebox("无效的单位编号!",48,"系统提示:")

        This.Value=""

        This.Parent.Combo4.Setfocus

Else

        This.Parent.Combo4.DisplayValue=Temp_WLUnit.全称

Endif

在“厂家名称”下拉列表框的InterActiveChange事件中添加如下代码实现自动填入厂家编号的功能。

Select Tab_WLUnit

Select 编号,全称 From Tab_WLUnit Where 全称=Alltrim(This.Value) Into Cursor Temp_WLUnit

If !Empty(Temp_WLUnit.编号)

        This.Parent.Text5.Value=Alltrim(Temp_WLUnit.编号)

Endif

在“保存”按钮的Button_Click事件中的代码主要实现保存用户新添加的药品信息或修改后的药品信息,关键代码如下:

If Flag=1     &&单击“添加”按钮后单击“保存”按钮

        Locat For 通用名=alltrim(Thisform.PF.P1.Text2.Value) And;

         规格=alltrim(Thisform.PF.P1.Text8.Value) And;

         剂型=alltrim(Thisform.PF.P1.Combo1.Value) And;

         产地=alltrim(Thisform.PF.P1.Text1.Value)

        If Found()

                Messagebox("该药品信息已经添加!",48,"系统提示:")

        Else

                Insert into Tab_Drug Values(NO,TYName,CYName,YWName,JC,JX,GG,BZ,;

             DW,CF,XZ,YLDL,SYZ,YFYL,BLFY,JJ,ZYSX,YWGL,ZC,YXQ,YXQDW,ZCSB,;

             PZWH,cCD,SCCJ,Memo) &&保存药品信息

             Insert into Tab_KC_confine Values(NO,0,SX,XX) &&保存药品库存上下限信息

                Messagebox("药品信息添加成功!",48,"系统提示:")

                Flag=0

        Endif

Endif

If Flag=2     &&单击“修改”按钮后单击“保存”按钮

        Update Tab_Drug Set 药品编号=NO,通用名=TYName,曾用名=CYName,英文名=YWName,;

         简称=JC,规格=GG,包装=BZ,单位=DW,成份=CF,性状=XZ,药理毒理=YLDL,适应症=SYZ,;

         用法用量=YFYL,不良反应=BLFY,禁忌=JJ,注意事项=ZYSX,药物过量=YWGL,贮藏=ZC,;

         有效期=YXQ,有效期单位=YXQDW,注册商标=ZCSB,批准文号=PZWH,产地=cCD,;

         生产厂家=SCCJ,备注=Memo Where 药品编号=NO     &&修改药品信息

         Update Tab_KC_confine Set 库存上限=SX,库存下限=XX Where 药品编号=NO

        Messagebox("药品信息修改成功!",48,"系统提示:")

        Flag=0

Endif

“删除”按钮主要实现判断所要删除的药品在库存中是否还有,如果没有则删除该药品信息和该药品的库存上下限信息,否则提示该药品信息不能删除。

在“查询”按钮的Button_Click事件中添加如下代码实现根据用户在控件中选择的查询条件进行查询,当用户选择“Like”操作符时,执行模糊查询。

QFields=Alltrim(Thisform.Combo1.Value)

Operate=Alltrim(Thisform.Combo2.Value)

QValue=Alltrim(Thisform.Text1.Value)

SELECT Tab_drug.药品编号, Tab_drug.通用名, Tab_drug.曾用名,Tab_drug.英文名,;

 Tab_drug.简称, Tab_drug.剂型, Tab_drug.规格,Tab_drug.包装, Tab_drug.单位,;

 Tab_drug.成份, Tab_drug.性状,Tab_drug.药理毒理, Tab_drug.适应症,;

 Tab_drug.用法用量, Tab_drug.不良反应,Tab_drug.禁忌, Tab_drug.注意事项,;

 Tab_drug.药物过量, Tab_drug.贮藏, Tab_drug.有效期, Tab_drug.有效期单位,;

 Tab_drug.注册商标, Tab_drug.批准文号, Tab_wlunit.全称 AS 生产厂家,;

 Tab_Wlunit.编号 AS 厂家编号,Tab_drug.产地,Tab_drug.备注,;

  Tab_kc_confine.库存上限 AS 上限,Tab_kc_confine.库存下限 AS 下限;

 FROM  yygsp!tab_drug INNER JOIN yygsp!tab_wlunit ;

       ON  Tab_drug.生产厂家 = Tab_wlunit.编号;

       INNER JOIN yygsp!tab_kc_confine ;

   ON  Tab_drug.药品编号 = Tab_kc_confine.药品编号 ;

    Into Cursor Temp_Drug1

If Operate="Like"

        *模糊查询  

        SELECT * FROM Temp_Drug1 Where &QFields. Like'%&QValue.%' Into Cursor Temp_Drug

Else

        SELECT * FROM Temp_Drug1 Where &QFields. ='&QValue.' Into Cursor Temp_Drug

Endif

4.3  入库登记

用户单击导航功能按钮中的“采购/入库管理”按钮,在功能子菜单中选择“入库登记”菜单项,进入“入库登记”界面,该界面运行结果如图4所示。 若图片无法显示请联系QQ752018766

上一页  [1] [2] [3] [4] [5] [6] [7] [8] 下一页

医药GSP管理系统 第4页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。