




已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Harbin Institute of Technology at Weihai数据库系统课程设计报告设计题目: 医药销售管理系统 班 级: 信息安全(2)班 组 号: 学 号: 110420209 姓 名: 验收日期: 2013年7月12日 哈尔滨工业大学(威海)计算机学院二零一三年一月数据库系统课程设计任务书院(系):计算机科学与技术学院 专 业:信息安全姓 名: 学 号:110420209课程设计题目:医药销售管理系统成 绩:问题阐述与分析:(主要阐述设计题目背景、设计实现意义及所要解决的主要问题,要明确给出所要用的数据库知识点)设计题目背景:近年来,中国医药行业迅速发展,药店企业多业态经营,仓储式大型超市、中等规模超市、便利连锁综合发展。随着规模的扩大,传统的医药管理已经不能适应发展的需要,很难在激烈的竞争中生存。设计实现意义及所要解决的主要问题:通过对从事医药产品的零售、批发等工作企业的深入调查,发现其业务主要包括基础信息管理、进货管理、销售管理、系统维护等。医药管理是一项琐碎、复杂而又十分细致的工作。手工进行企业日常的药品销售、出入库的工作,容易出现“开空单”的现象,且呆账、错账时有发生,而且费时费力。本系统在设计中考虑和克服了上述问题,实现了企业管理工作的系统化、规范化和自动化。所要用到的数据库知识:(1)E-R图的画法:包括经理、供货商、员工、药品销售清单、客户、药品的及整体的E-R图;(2)关系模式与码:包括药品信息、员工信息、客户信息、供应商信息、药品销售信息等;(3)关系模式优化:例如,药品销售信息中有大量的数据冗余,表达不明确,将其分解为如下两个模式:药品销售主表(销售编码,销售日期,销售员编号,总金额)药品销售子表(销售编码,销售日期,药品编码,药品名称,单价,数量,供应商)(4)数据库设计:对上述E-R图所需的实体需要的几个关键表的设计;(5)数据的完整性和安全性的设计:(6)SQL语言的运用: 数工作量:(本项主要说明课程设计的工作量体现之所在,具体的设计模块)(1)基本信息模块:包括药品信息、员工信息、客户信息、供应商信息等。(2)进货管理模块:包括入库登记、入库登记查询。(3)销售管理模块:包括销售基础信息管理登记及相应的查询等。(4)系统维护模块:包括数据安全管理、操作员管理。说明:根据对现实中医药销售管理业务,将用户分为两类超级管理员(经理)、普通管理员(操作员)。工作计划安排:(1)7月1日:写好任务书;(2)7月2日:查找相关资料并进行整体的分析、策划;(3)7月3日:画出业务流程图和数据流程图;(4)7月4-6日:数据库系统结构设计;(5)7月7-11日:数据库运行及代码的实现、调试等工作;(6)7月12日:验收。数据库相关知识点:E-R图的画法、关系的各项操作、嵌入式SQL语言的应用、数据库的安全性与完整性、数据库的规范化设计。目 录1绪 论11.1项目简介11.2设计目的11.3设计内容11.4应用范围12需求分析22.1数据需求22.2事务需求22.3详细功能分析32.4数据字典32.5开发运行环境42.6安全保障43概念设计53.1实体及联系抽象63.2E-R图63.3关系模式94逻辑设计114.1各表功能114.2各表结构114.3表关系图135物理设计155.1物理存储155.2完整性约束155.3视图设计165.4触发器设计166系统实现与维护176.1模块1206.2模块2286.3模块3337总 结357.1系统实现程度357.2问题及难点357.3收获与体会35哈尔滨工业大学(威海)数据库系统课程设计报告1 绪 论1.1 项目简介:近年来,中国医药行业迅速发展,药店企业多业态经营,仓储式大型超市、中等规模超市、便利连锁综合发展。随着规模的扩大,传统的医药管理已经不能适应发展的需要,很难在激烈的竞争中生存。通过对从事医药产品的零售、批发等工作企业的深入调查,发现其业务主要包括企业药品销售、出入库管理、人事管理等。医药管理是一项琐碎、复杂而又十分细致的工作。手工进行企业日常的药品销售、出入库的工作,容易出现“开空单”的现象,且呆账、错账时有发生,而且费时费力。本系统在设计中考虑和克服了上述问题,实现了企业管理工作的系统化、规范化和自动化。1.2 设计目的:设计一个适合医药销售方面的管理系统。要求本系统能够投入实际的使用并且满足基本的功能要求。要求具有较高的可靠性、安全性和易维护性,具有较高的可移植性。1.3 设计内容:本系统实现了以下的功能:(1)基本信息模块:包括药品信息、员工信息、客户信息、供应商信息四个子模块。(2)进货管理模块:包括入库登记、入库登记查询二个子模块。(3)库房管理模块:只实现了库存查询。(4)销售管理模块:包括销售登记、销售退货。(5)系统维护模块:包括数据安全管理、操作员管理。说明:根据对现实中医药销售管理业务,将用户分为三类超级管理员(经理)、普通管理员(操作员)、用户(消费者)。1.4 应用范围本系统适用于从事医药产品零售、批发等工作企业的管理。 36 / 402 需求分析2.1 数据需求药品信息(药品编号,药品名称,药品类别代号,售价,进价,库存量,供应商,有效期) 外码:药品类别代号、 供应商药品分类索引信息(药品类别代号,类别说明)员工信息(员工号,姓名,用户名,密码,职位,权限)客户信息(客户号,客户名称,联系人,联系方式,客户所在城市)供应商信息(供应商号,供应商名称,联系人,联系方式,供应商所在城市)药品销售信息(销售编码,销售日期,药品编码,药品名称,单价,数量,供应商,总额,销售员编码) 外码:销售员编码、药品编码2.2 事务需求(1)经理主要参与活动有: 查询销售情况以便了解本企业的经营状况,作出相应的决策; 管理员工,了解不同员工的信息及业务;供应商的管理,了解供应信息,选择最合适的供应商。(2)营业员主要活动有:管理医药销售,对药品信息的录入、更新、修改和删除;查询药品信息,以了解是否有该药品和库存等信息;销售药品,出库记录;退还药品,入库记录;(3)顾客主要活动:查询药品信息;选购药品。2.3 详细功能分析通过对系统的数据流图进行分析,进一步进行功能分解,直到分解成含义明确,功能单一的功能模块,从而得到系统的功能模块结构图。2.4 数据字典绘制DFD,只是对数据处理和彼此之间的联系进行了说明。为进一步明确数据的详细内容和数据加工过程,应将数据流图中的全部数据流及其组成部分的数据元素,数据存储,数据加工,通过数据字典描述清楚,以便于此后系统设计的进行。这就需要开发人员编写详细的数据字典,来描述系统开发过程的细节。下面列出本系统中的数据项、数据流、数据存储、加工处理和数据结构的数据字典。数据字典可采用图表格式或较紧凑的记录格式描述,本文采用的是图表格式。数据项的DD表列举如下:表2.1 药品编号的数据字典 数 据 项系统名:医药销售管理系统 编号:I001 名称:药品编码 别名: 数据项值: 类型:字符型 长度:6个字节 取值范围:简述:每种药品都具有唯一的编号,它是某种药品的唯一标识符,每种药品都有唯一的编号,如“011976”通常用前两位数字表示入库的年份,中间两位表示类别,最后两位表示该药的序号。如果该类药数超过100种时,可用“0119A0”表示第100种药。修改记录:编写日期审核日期表2.2 药品名称 数 据 项系统名:医药销售管理系统 编号:I002 名称:药品名称 别名:数据项值: 类型:字符型 长度:32个字节 取值范围:简述:每种药品都具有唯一药品标识。修改记录:编写日期审核日期表2.3 密码 数 据 项系统名:医药销售管理系统 编号:I003 名称:售价 别名:数据项值: 类型:数值型 长度:8个字节 取值范围:简述:每种药品都要设置一个销售价格。修改记录:编写日期审核日期2.5 开发运行环境SOL Server 2008, Powerbuilder12.5,2.6 安全保障数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。在数据库系统中,大量的数据集中存放,而且为许多用户直接共享,是宝贵的信息资源,系统的安全保护措施就显得更为重要,它保护数据库防止恶意的破坏和非法的存取。本系统包括数据库的安全和服务器的安全。采用管理员表示和鉴定的方法实现数据库的安全,此安全管理措施并不在前台开发工具中实现,而是在后台数据库中实现。在登录数据库时,系统让管理员户表示自己的身份,不同的管理员权限不同,系统进行核实,鉴别此管理员是否为合法用户,若是,系统进一步核实用户,通常要求用户输入口令,系统和对用户口令以鉴别用户身份。服务器的安全也是通过用户在登录服务器时输入合法的用户名和密码来实现的。这是一种简单可行的方法,实现起来比较方便。没有采用更加复杂的系统安全管理措施是因为本管理系统一般是应用在校园网中,采用安全管理措施主要是为了防止没有修改权限的用户无意间修改了数据,因此采用用户标识和鉴定的安全管理措施就能够保障数据库的安全性。3 概念设计3.1 实体及联系抽象药品信息(药品编号,药品名称,药品类别代号,售价,进价,库存量,供应商,有效期) 外码:药品类别代号、 供应商药品分类索引信息(药品类别代号,类别说明)员工信息(员工号,姓名,用户名,密码,职位,权限)客户信息(客户号,客户名称,联系人,联系方式,客户所在城市)供应商信息(供应商号,供应商名称,联系人,联系方式,供应商所在城市)药品销售信息(销售编码,销售日期,药品编码,药品名称,单价,数量,供应商,总额,销售员编码) 外码:销售员编码、药品编码3.2 E-R图 E-R图:在系统的数据库设计中,先要对系统分析得到的数据字典中的数据存储进行分析,分析各数据存储之间的关系,然后才能得出系统的关系模式。可以采用E-R图的方法来进行数据结构分析,E-R设计方法是一种通过E-R图来描述现实世界信息结构的DB设计方法。E-R图由实体、属性、联系三部分组成。各分E-R图说明如下: 经理E-R图: 供应商E-R图: 员工E-R图: 药品销售清单E-R图: 客户E-R图: 药品E-R图: 整体E-R图:3.3 关系模式1.关系模式与码:药品信息(药品编号,药品名称,药品类别代号,售价,进价,库存量,供应商,有效期) 外码:药品类别代号、 供应商药品分类索引信息(药品类别代号,类别说明)员工信息(员工号,姓名,用户名,密码,职位,权限)客户信息(客户号,客户名称,联系人,联系方式,客户所在城市)供应商信息(供应商号,供应商名称,联系人,联系方式,供应商所在城市)药品销售信息(销售编码,销售日期,药品编码,药品名称,单价,数量,供应商,总额,销售员编码) 外码:销售员编码、药品编码2.关系模式优化: 在上述关系模式中,每一个分量都是不可分割的数据项所以都符合第一范式;而且前四个关系模式都是单个属性作为码,没有任何非主属性对码部分函数依赖,在药品销售信息内虽由三个属性作为码,但也不存在非主性对码的部分函数依赖,所以上都符合第二范式;药品信息、药品类别索引、客户信息、供应商信息四个关系模式中都不存在非主属性对码的传递函数依赖,都属于第三范式。在员工信息关系模式中,员工是按照权限分类的,职位不同权限也不同,这样该关系模式就存在了非主属性对码的传递依赖:职工号-职位,职位-权限,所以就将用员工信息分解为如下现个模式: 工信息(员工号,姓名,用户名,用户口令,职位) 位权限信息(职位,权限)本系统不考虑职工信息的管理,为了使销售员编号与销售员的职工号连系起来,并能通过职工姓名和职位来修改用户信息所以把员工的部分信息(职工号,姓名,职位)和经理(用户名,密码)合成了员工信息(员工号,姓名,用户名,密码,职位,权限)以便系统功能的实现,所以在此不采用模式分解。药品销售信息中有大量的数据冗余,表达不明确,将其分解为如下两个模式:品销售主表(销售编码,销售日期,销售员编号,总金额)药品销售子表(销售编码,销售日期,药品编码,药品名称,单价,数量,供应商)4 逻辑设计4.1 各表功能药品信息表:显示药品的所有信息;客户信息:显示客户的所有信息;供应商信息:显示供应商的所有信息;药品销售主表:显示大体的药品销售信息;药品销售子表:显示具体的药品销售信息;药品类别索引信息:显示药品的类别信息;员工信息:显示员工的所有信息。4.2 各表结构对上述E-R图所需的实体需要的几个关键表的设计如下:表名:药品信息表字段名字段类型长度主键或外键字段值约束对应中文属性名MedicineCodeChar6Primary KeyNot Null药品编码MedicineNameVarchar32Not Null药品名称MedKindCodeChar10Foreign keyNot Null药品类别代码PriceMoney8售价ListPriceMoney8进价NumberInt4库存量FirmCodeChar10Foreign key供应商UsefulllifeDatetime8有效期至表名:客户信息字段名字段类型长度主键或外键字段值约束对应中文属性名GuestCodeChar10Primary KeyNot Null客户编码GuestNameVarchar16Not Null客户名称gLinkVarchar12联系人gLinkTellVarchar11联系方式CityVarchar8所在城市表名:供应商信息字段名字段类型长度主键或外键字段值约束对应中文属性名FirmCodeChar10Primary KeyNot Null供应商编码FirmNameVarchar16Not Null供应商名称LinkVarchar12联系人LinkTellVarchar11联系电话CityVarchar8所在城市表名:药品销售主表字段名字段类型长度主键或外键字段值约束对应中文属性名SaleNoint4Primary KeyNot Null销售编码WorkNoChar10Foreign keyNot Null销售员编码SaleDateDateTime8销售日期AmountMoney8总额表名:药品销售子表字段名字段类型长度主键或外键字段值约束对应中文属性名SaleNoint4Primary KeyNot Null销售编码MedicineCodeChar6Foreign keyNot Null药品编码MedicineNameVarchar32Not Null药品名称PriceMoney8售价NumberInt4数量FirmCodeChar10Foreign key供应商AmountMoney8总额表名:药品类别索引信息字段名字段类型长度主键或外键字段值约束对应中文属性名MedKindCodeChar10Primary KeyNot Null药品类别代码KindExplanationVarchar12Not Null类别说明表名:员工信息字段名字段类型长度主键或外键字段值约束对应中文属性名WorkNoChar10Primary KeyNot Null员工号NameVarchar12姓名UserRegNameChar6Not Null用户名PasswordChar10Not Null密码PositionChar10职位4.3 表关系图 5物理设计4.4 物理存储/数据库备份:string backup1string pathstringpathstring=sle_1.text/将sle_1这个输入框赋给变量pathstringif pathstring= then messagebox(提示信息,请输入备份数据库名称!) returnend ifdisconnect using sqlca;/断开数据库/循环,为true时,提交备份操作sqlca.autocommit=trueConnect USING SQLCA;/连接数据库backup1=backup database 数据库课设 + to disk= + +pathstring + ;/备份数据库到指定路径(dist为盘)messagebox(SQLCA.Database,backup1)execute immediate :backup1;/立即执行if sqlca.sqlcode=0 then/SQLCode:数据库操作的返回码,其中0-成功;-1-失败 messagebox(提示信息,数据库备份成功!)else/弹出名为提示信息的窗口,显示错误 messagebox(提示信息,错误)end ifsqlca.autocommit=false4.5 完整性约束数据库的完整性是指数据的正确性和相容性。数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中。本系统中定义了表与表之间的联系有助于实现完整性规则,一般在程序中实现具体的完整性控制。实体完整性例如:CREATE TABLE MedInfor/*创建药品信息表*/ (MedicineCode char(6) constraint M_PRIM PRIMARY KEY, MedicineName varchar(8) NOT NULL, MedKindeCode char(10) FOREIGN KEY REFERENCES MedID(MedKindeCode), Price Money(8), ListPrice Money(8), Number Int(4), FirmCode char(10) FOREIGN KEY REFERENCES FirmInfor(FirmCode), Userfulllife Datetime)参照完整性例如:create table sellMain/*创建医药销售主表*/ (SaleNo int constraint SM_PRIM PRIMARY KEY, WorkNo char(10) FOREIGN KEY REFERENCES WorkInfor(WorkNo), SaleDate DateTime, Amount Money)4.6 视图设计由供应商信息表建立一个视图,该视图由供应商信息表的所有列构成*/create view 供应商信息(供应商编码,供应商名称,联系人,联系电话,所在城市)asselect* from 供应商信息4.7 触发器设计 没实现该项功能5 系统实现与维护登入界面:登入界面代码:/设定两个与输入框相对应的变量string a_user,a_pwd/判断输入是否为空if sle_name.text= or sle_password.text= thenMessageBox(Error!,登录账户或密码为空,请重新输入!)returnend ifif not rb_manager.checked and not rb_operator.checked and not rb_customer.checked thenMessageBox(Error!,请选择登录权限!)returnend if/经理登录if rb_manager.checked thenselect m_num,m_pwdinto :a_user,:a_pwdfrom manager/从manager表where m_num=:sle_name.text; if a_pwd=trim(sle_password.text) thenMessageBox(恭喜!,密码正确,已批准登录系统)sle_name.text=;sle_password.text=;open(manager)end ifend if/员工登录 if rb_operator.checked thenselect o_num,o_pwdinto :a_user,:a_pwdfrom operatorwhere o_num=:sle_name.text;if a_pwd=trim(sle_password.text) thenMessageBox(恭喜!,密码正确,已批准登录系统)sle_name.text=;sle_password.text=;open(operator)end ifend if/客户登陆 if rb_customer.checked thenselect c_num,c_pwdinto :a_user,:a_pwdfrom customerwhere c_num=:sle_name.text;if a_pwd=trim(sle_password.text) thenMessageBox(恭喜!,密码正确,已批准登录系统)sle_name.text=;sle_password.text=;open(customer)end ifend ifif sle_name.text and sle_password.text thenif rb_manager.checked or rb_operator.checked or rb_customer.checked thenMessageBox(Error!,用户名或密码错误!请重新输入!)returnend ifend ifclose(登录界面)5.1 模块1:经理活动查询销售情况:操作员工信息:显示供应商信息:查询销售情况:销售主表查询按销售编码查询:string a0,b0,c0,d0a0=trim(sle_15.text)select 销售员编码,销售日期,总额into :b0,:c0,:d0from 药品销售主表where 销售编码=:a0using sqlca;sle_16.text=b0sle_17.text=c0sle_18.text=d0按销售编码查询:string a2,b2,c2,d2a2=string(sle_19.text)select 销售编码,销售日期,总额into :b2,:c2,:d2from 药品销售主表where 销售员编码=:a2using sqlca;sle_20.text=b2sle_21.text=c2sle_22.text=d2查询销售情况:销售子表查询按销售编码查询:string a,b,c,d,e,f,ga=string(sle_1.text)select 药品编码,药品名称,售价,数量,供应商,总额into :b,:c,:d,:e,:f,:gfrom 药品销售子表where 销售编码=:ausing sqlca;sle_2.text=bsle_3.text=csle_4.text=dsle_5.text=esle_6.text=fsle_7.text=g按药品编码查询:string a1,b1,c1,d1,e1,f1,g1a1=string(sle_8.text)select 销售编码,药品名称,售价,数量,供应商,总额into :b1,:c1,:d1,:e1,:f1,:g1from 药品销售子表where 药品编码=:a1using sqlca;sle_9.text=b1sle_10.text=c1sle_11.text=d1sle_12.text=e1sle_13.text=f1sle_14.text=g1操作员工信息:显示:String a,b,c,d,eint gDECLARE temp CURSOR FORselect 员工号,姓名,用户名,密码,职位from 员工信息;lv_1.DeleteItems ( )/将ListView框中的内容清空open temp;/提取数据fetch temp into :a,:b,:c,:d,:e;/从后台数据库中读取一条记录do while sqlca.sqlcode=0/SQLCode:数据库操作的返回码,其中0-成功/将读取的记录加到ListView中g=lv_1.addItem(a,1)/第一行第一列写入a,默认从第一行开始(循环)lv_1.setitem(g,2,b)/第一行第二列写入blv_1.setitem(g,3,c)/第一行第三列写入clv_1.setitem(g,4,d)/(行,列,值)lv_1.setitem(g,5,e)fetch temp into :a,:b,:c,:d,:e;/读取下一条记录loopclose temp;修改:string b,c,d,e,winteger mm=lv_1.selectedindex()/鼠标所指的那行赋给变量mlv_1.getitem(m,1,w)/第m行第一列的数赋给变量wb=trim(sle_2.text)c=trim(sle_3.text)d=trim(sle_4.text)e=trim(sle_5.text)update 员工信息set 姓名=:b,用户名=:c,密码=:d,职位=:ewhere 员工号=:w;messagebox(,修改成功!)删除:string winteger mm=lv_1.selectedindex()/鼠标所指的那行赋给变量mlv_1.getitem(m,1,w)/第m行第一列的数赋给变量wdelete/删除这行from 员工信息where 员工号=:wusing sqlca;/使用嵌入式SQL语言查询:string a0,b0,c0,d0,e0a0=trim(sle_1.text)select 姓名,用户名,密码,职位into :b0,:c0,:d0,:e0from 员工信息where 员工号=:a0using sqlca;sle_2.text=b0sle_3.text=c0sle_4.text=d0sle_5.text=e0显示供应商信息:模糊查询:string a,b,c,d,ee=trim(sle_1.text) /将sle_1这个输入框赋给变量ee=%+e+%DECLARE zg CURSOR FORselect 供应商编码,供应商名称,联系人,联系电话,所在城市from 供应商信息where 供应商名称 like :eusing sqlca;lb_1.reset() /清除ListBox中的内容open zg;/提取数据fetch zg into :a,:b,:c,:d,:e;/从后台数据库中读取一条记录do while sqlca.sqlcode=0 /表示最后一条fetch语句成功lb_1.additem(a+ +b+ +c+ +d+ +e)/将读取的记录加到ListBox中fetch zg into :a,:b,:c,:d,:e;/读取下一条记录loopclose zg;显示:/游标:将结果集中的全部数据提取(声明、打开、提取数据、关闭)string youbiao,a,b,c,d,elb_1.reset();/清除ListBox中的内容declare youbiao cursor for/声明一个叫做youbiao的游标select 供应商编码,供应商名称,联系人,联系电话,所在城市 from 供应商信息;open youbiao;/打开游标/提取数据fetch youbiao into :a,:b,:c,:d,:e;/从后台数据库中读取一条记录do while sqlca.sqlcode=0 /表示最后一条fetch语句成功lb_1.additem(a+ +b+ +c+ +d+ +e)/将读取的记录加到ListBox中fetch youbiao into :a,:b,:c,:d,:e;/读取下一条记录loopclose youbiao;/关闭游标5.2 模块2:员工活动查询销售情况:药品查询录入:入库登记查询:string youbiao,a,b,c,d,e,f,g,hlb_1.reset();/清除ListBox中的内容declare youbiao cursor for/声明游标select 药品编码,药品名称,药品类别代码,售价,进价,库存量,供应商,有效期至from 药品信息表;open youbiao;fetch youbiao into :a,:b,:c,:d,:e,:f,:g,:h;/从后台数据库中读取一条记录do while sqlca.sqlcode=0/表示最后一条fetch语句成功lb_1.additem(a+ +b+ +c+ +d+ +e+ +f+ +g+ +h)/将读取的记录加到ListBox中fetch youbiao into :a,:b,:c,:d,:e,:f,:g,:h;/读取下一条记录loopclose youbiao;入库登记:int sj,jj,kcl,yxqz,ll_istring ypbm,ypmc,yplbdm,gysif sle_1.text=or isnull(sle_1.text)then messagebox(缺少数据,请输入药品编码) sle_1.setfocus()/对指定的 sle_1输入框设置键盘焦点(把光标移到指定的 sle_1输入框里) returnelseif sle_2.text=or isnull(sle_2.text)then messagebox(缺少数据,请输入药品名称) sle_2.setfocus() returnelseif sle_3.text=or isnull(sle_3.text)then messagebox(缺少数据,请输入药品类别代码) sle_3.setfocus() returnelseif sle_4.text=or isnull(sle_4.text)then messagebox(缺少数据,请输入售价) sle_4.setfocus() returnelseif sle_5.text=or isnull(sle_5.text)then messagebox(缺少数据,请输入进价) sle_5.setfocus() returnelseif sle_6.text=or isnull(sle_6.text)then messagebox(缺少数据,请输入库存量) sle_6.setfocus() returnelseif sle_7.text=or isnull(sle_7.text)then messagebox(缺少数据,请输入供应商) sle_7.setfocus() returnelseif sle_8.text=or isnull(sle_8.text)then messagebox(缺少数据,请输入有效期至) sle_8.setfocus() returnend ifypbm=trim(sle_1.text)/将sle_1这个输入框赋给变量ypbmypmc=trim(sle_2.text)yplbdm=trim(sle_3.text)sj=long(sle_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山东省淄博市张店区2022-2023学年九年级上学期期中化学试题(含答案)
- 高级会计网课课件
- 电焊知识干货培训总结课件
- 北京期末数学考试真题及答案
- 电焊工知识普及培训内容课件
- 北京安全b本考试真题及答案
- 爆破保管员复训考试题及答案
- 六年级考试题及答案
- 镗床考试题及答案
- 保安考试考哪几种题目及答案
- 《数字技术应用 基础模块(WPS Office 上册)》 课件全套 第1-3单元 探索数字世界 数字技术应用基础 -编程的魅力 程序设计入门
- 质量控制在银行业中的应用
- 热射病的护理诊断和措施
- 三年级科学教材培训心得
- 鼻的症状学相关知识
- QC/T 1209-2024汽车噪声与振动(NVH)术语和定义
- 中职生劳动教育试题答案
- 现代学徒制课题:市域产教联合体与行业产教融合共同体内开展现场工程师培养的机制创新研究(研究思路模板、技术路线图)
- 餐厅开荒保洁操作技术方案
- 2024年春季小学三年级英语课件教学方法探索
- 部编人教版小学四年级上册语文词语表注音
评论
0/150
提交评论