仓库管理_仓库管理信息系统教材_第1页
仓库管理_仓库管理信息系统教材_第2页
仓库管理_仓库管理信息系统教材_第3页
仓库管理_仓库管理信息系统教材_第4页
仓库管理_仓库管理信息系统教材_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目 录一、系统开发平台2二、数据库规划2.1 任务陈述32.2 任务目标3三、系统定义43.1 系统边界43.2 用户视图5四、需求分析64.1 用户需求说明64.1.1 数据需求64.1.2 事务需求74.2 系统需求说明9五、数据库逻辑设计95.1 ER图95.2 数据字典135.3 关系表18六、数据库物理设计186.1 索引186.2 视图196.3 安全机制206.4 其他20七、应用程序设计217.1 功能模块217.2 界面设计217.3 事务设计37八、测试和运行47九、总结48附. 参考文献48一、 系统开发平台PowerBuilder9.0 & SQL Server2008二、数据库规划2.1 任务陈述完成一个任务的设计开发,在最开始就要清晰明白地表示出这个任务需要完成什么样的结果。设计者需要确切地知道他的设计最终蓝图是什么样的才能通过蓝图构设过程,同时,也能够通过设计内容明确自己的设计是否有价值。也就是说,设计者需要描述出设计所能完成的事情。这需要通过分析任务的背景和需求得出。仓库管理也叫仓储管理,英文Warehouse Management,简称WM,指的是对仓储货物的收发、结存等活动的有效控制,其目的是为企业保证仓储货物的完好无损,确保生产经营活动的正常进行,并在此基础上对各类货物的活动状况进行分类记录,以明确的图表方式表达仓储货物在数量、质量方面的状况,以及目前所在的地理位置、部门、订单归属和仓储分散程度等情况的综合管理形式。仓库管理是一个企业不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要,因为仓库管理能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理产品,这种管理方式存在着许多缺点,如:效率低、保密性差等。另外,由于时间一长,将产生大量的文件和数据,这对于查找、更新和维护产品都带来了不少的困难。人工管理的工作方式,由于管理人员的工作疏忽以及管理质量问题会造成各种错误,不能及时、准确、高效的完成仓库管理提供了强有力的工具和管理手段。系统开发的总体任务是实现企业产品管理的系统化、规范化、条理化和自动化,从而达到提高企业管理效率的目的。2.2 任务目标创建任务目标的过程包括以完成结果为基础调查实际背景情况得出仓库管理系统所需要的结论。仓库管理主要是企业各种商品的管理。进货时经检查合同确认为有效托收后,进行验收入库,填写入库单,进行入库登记。企业各个部门根据需要提出产品请求,计划员根据整个企业的需求开出产品出库单,仓库管理人员根据出库单核对发放产品。根据需要按照月进行统计分析,产生相应报表。仓库管理的特点是信息处理量比较大,所管理的产品种类繁多,而且由于入库单、出库单、盘点单等单据发生量特别大,关联信息多,查询和统计的方式各不相同。因此在管理上实现起来有一定的困难。在管理的过程中经常会出现信息的重复传递;单据、报表种类繁多,各个部门管理规格不统一等问题。系统开发的总体任务是实现各种信息的系统化、规范化和自动化。系统功能分析是在系统开发的总体任务的基础上完成。本仓库管理系统需要完成功能主要有:仓库管理各种信息的输入,包括货物、供货商、客户、仓库信息的输入等。仓库管理各种信息的查询、统计、修改和维护,包括货物、单据查询,货物出入、职员操作统计,各种信息的修改和维护等。打印报表的生成。在货物管理中加入最高储备和最低储备字段,对仓库中的产品实现监控和报警。操作日志的管理。仓库管理系统的使用帮助。 三、系统定义3.1 系统边界客户保管员物业仓库员工现有库存入库出库报损调拨3.2 用户视图 仓库管理数据库应用的主要用户视图用户视图 需求部门总监实现对所有数据检索和对保管员的增删保管员维护(检查)本仓库的数据维护(录入、更新和删除)本仓库的员工的数据实现对所有仓库数据的检索实现对所有仓库的员工的检索提交本仓库的员工提交本仓库的物品资料提交本仓库的物品管理情况员工维护(录入、更新和删除)本仓库架上物品的数据维护(录入、更新和删除)本仓库的客户的数据维护(录入、更新和删除)本仓库流入流出的物品数据维护(录入、更新和删除)本仓库供货商数据实现对所有仓库的物品的检索实现对本仓库物品出入的检索提交员工个人信息提交本仓库的物品资料提交本仓库的物品管理情况实现对仓库的检索实现对所有仓库的存货信息的检索实现对货物供货商的检索实现对货物订单的检索跟踪货物订单的状态四、需求分析4.1 用户需求说明4.1.1 数据需求用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。仔细分析调查有关仓库管理信息需求的基础上,得到如图41所示的本系统所处理的数据流程。仓库现有库存汇总、处理各种单据产品入库产品出库报表打印图4-1 仓库管理系统数据流程图通过对企业仓库管理的内容和数据流程分析,设计数据项和数据结构如下:货物信息,包括的数据项有编号、货物名称、货物类别、货物规格、计量单位、最高限量、最低限量、备注等。仓库信息,包括的数据项有编号、仓库名称、仓库地点、保管员编号、备注等。库存状况信息,包括的数据项有编号、货物编号、库存数量、仓库编号等。 入库单信息,包括的数据项有编号、货物编号、经办人编号、入库时间、入库单价、入库数量、供货商编号、仓库编号、定单状况、其它金额、备注等。出库单信息,包括的数据项有编号、货物编号、经办人编号、出库时间、出库单价、出库数量、客户编号、仓库编号、定单状况、其它金额、备注等。进行月盘点信息,包括的数据项有编号、仓库编号、盘点时间、经办人编号、盘点数据等。系统日志信息,包括的数据项有用户名、操作时间、操作内容等。用户管理信息,包括的数据项有用户名、用户密码、用户权限等。另外,还有借入单、借出单、报损单、调拨单信息等。它们与入库单、出库单信息基本类似,这里不再一一例举。4.1.2 事务需求 数据录入1.录入一批产品的基本信息2.录入一个员工或主管的基本信息3.录入仓库的基本信息4.录入指定货架的基本信息5.录入调拨产品的基本信息6.录入出入库产品的基本信息7.录入报损产品的基本信息8.录入登陆的初始证件号及密码信息 数据更新/删除9.更新/删除一批产品信息10.更新/删除员工或主管信息11.更新/删除换仓信息12.更新/删除清仓信息13.更新/删除用户信息14.更新/删除产品信息15.更新/删除仓库信息16.更新/删除指定货架信息数据查询数据库必须支持下列查询:用户1部门总监查询任意仓库的状态 查询任意天、周、月的仓库情况(是否发生火灾,是否满仓等) 查询任意仓库的周、月入仓出仓情况(总计住宿费收入) 查询任意周、月的总产品更换情况查询员工的工资及发放情况 用户2仓库主管查询本仓库任意天的产品出入仓情况查询产品货架情况 用户3底层员工查询任意产品或者货架状况 查询仓库空间情况 查询产品信息 查询产品流动信息4.2 系统需求说明 初始数据库大小:1.有2种仓库类型、5间库房。最多可提供200-500货架。2.每间仓库大约有15名会计加员工,会计最多2名,员工至少13名。3.大约有100名注册用户。4.大约有1000条产品信息记录。5.大约有30条换仓记录。6.大约有50条入仓记录。数据库增长速度:1.每天大约有20-50类产品入库,需添加记录信息。2.每天大约有30类产品预定进货。3.每天大约有20类产品出仓。4.每天约有2名新员工进来5.每天约有2名员工离开。6.每天约有10名新用户注册。7.每周大约更新产品种类5种8.每天约有10类换仓。记录查找的类型和平均数量:1.查询仓库情况大约一天100次(每天下午69点是高峰期)2.查询员工情况大约一天20次3.查询产品情况大约一天50次网络和共享需求:1. 所有用户必须安全的和总部中央数据库网络互连2. 必须能够支持至少3名成员同时访问.需要考虑这么大数量并发访问的许可需求。性能:1.单个记录查询时间少于1秒,高峰期少于5秒2. 多个记录查询时间少于5秒,高峰期少于10秒3. 更新/保存记录时间少于1秒,高峰期少于5秒安全性:1. 数据库必须有口令保护2. 每个用户分配特定的用户视图所应有的访问权限3. 用户只能在适合他们完成工作的需要的窗口中看到需要的数据备份和恢复n 每天24点备份用户界面:n 菜单驱动,联机帮助法律问题:n 对员工和会员信息管理,遵守法律五、数据库逻辑设计5.1 ER图得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体结构,以及他们之间的关系,为以后的逻辑结构设计打下基础。根据上面的设计规划出的实体有:现有库存信息实体、入库信息实体、出库信息实体、借入信息实体、借出信息实体、调拨信息实体图和报损信息实体图。各个实体具体的描述E-R图如下:现有库存信息实体E-R图如图4-2所示。现有库存实体编号货物名称最低限量最高限量图4-2 现有库存信息实体E-R图入库单信息实体E-R图如图4-3所示。入库货物实体编号经办人编号入库时间、单价、数量供货商编号图4-3 入库单信息实体E-R图出库单信息实体E-R图如图4-4所示。出库货物实体编号经办人编号入库时间、单价、数量客户编号图4-4 出库信息实体E-R图调拨信息实体E-R图如图4-5所示。调拨货物实体编号经办人编号目标仓库编号原仓库编号图4-5 调拨信息实体E-R报损信息实体E-R图如图4-6所示。报损货物实体编号经办人编号报损时间、单价、数量仓库编号图4-6 报损信息实体E-R主管实体E-R图如图4-7所示保管员实体编号姓名图4-7 主管实体E-R员工实体E-R图如图4-8所示联系电话员工实体编号姓名仓库编号图4-8 员工实体E-R仓库实体E-R图如图4-9所示仓库名称仓库实体编号保管员编号地点图4-9 仓库实体E-R图实体和实体之间的关系E-R图如图4-10所示。现有库存入库货物出库货物调拨货物报损货物员工保管员仓库管理管理采购检查调整登记入库损坏换仓出库保管图4-9 实体之间关系E-R图5.2 数据字典仓库管理信息系统数据库中各个表格的设计结果如下面表格所示。每个表格所示在数据库中的一个表。表4-1为货物基本信息表。表4-1 货物基本信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物名称文本64不可货物类别文本50可货物规格文本50可计量单位文本50可最高限量数字长整型不可最低限量数字长整型不可备注备注可 表4-2为仓库信息表表4-2 仓库信息表字段名称数据类型字段大小可否为空编号数字长整型不可仓库名称文本50不可仓库地点文本255可保管理员编号数字长整型可备注备注可 表4-3为库存状况信息表表4-3 库存状况信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物编号数字长整型不可库存数量数字长整型不可仓库编号数字长整型不可 表4-4为入库单信息表表4-4 入库单信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物编号数字长整型不可经办人编号数字长整型不可入库时间日期/时间不可入库单价货币不可入库数量数字长整型不可供货商编号数字长整型可仓库编号数字长整型不可订单状况文本50不可其它金额货币可备注备注可表4-5为出库单信息表表4-5 出库单信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物编号数字长整型不可经办人编号数字长整型不可出库时间日期/时间不可出库单价货币不可出库数量数字长整型不可客户编号数字长整型可仓库编号数字长整型不可订单状况文本50不可其它金额货币可备注备注可表4-6为借入单信息表表4-6 借入单信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物编号数字长整型不可经办人编号数字长整型不可借入时间日期/时间不可借入数量数字长整型不可供货商编号数字长整型可仓库编号数字长整型不可订单状况文本50不可其它金额货币可备注备注可表4-7为借出单信息表表4-6 借出单信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物编号数字长整型不可经办人编号数字长整型不可借出时间日期/时间不可借出数量数字长整型不可供货商编号数字长整型可仓库编号数字长整型不可订单状况文本50不可其它金额货币可备注备注可表4-8为调拨单信息表表4-8 调拨单信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物编号数字长整型不可经办人编号数字长整型不可调拨时间日期/时间不可调拨数量数字长整型不可原仓库编号数字长整型不可目标仓库编号数字长整型不可其它金额货币可备注备注可表4-9为报损单信息表表4-9 报损单信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物编号数字长整型不可经办人编号数字长整型不可报损时间日期/时间不可报损单价货币不可报损数量数字长整型不可仓库编号数字长整型不可其它金额货币可备注备注可 表4-10为盘点单信息表 表4-10 盘点单信息表字段名称数据类型字段大小可否为空编号数字长整型不可仓库编号数字长整型不可盘点时间日期/时间不可经办人编号数字长整型不可盘点数据备注不可表4-11为系统日志信息表表4-11 系统日志信息表字段名称数据类型字段大小可否为空用户名文本50不可操作时间日期/时间不可操作内容备注不可表4-12为用户管理信息表表4-11 用户管理信息表字段名称数据类型字段大小可否为空用户名文本64不可用户密码文本50不可用户权限数字长整型不可5.3 关系表六、数据库物理设计6.1 索引1.员工登陆 以员工号为索引CREATE INDEX IX_员工登陆 ON dbo.员工登陆(id) ON PRIMARYGO2.主管登陆 以员工号为索引CREATE INDEX IX_主管登陆 ON dbo.主管登陆(id) ON PRIMARYGO4.现有实体 以货物编号为索引CREATE INDEX IX_现有实体 ON dbo.现有实体(货物编号) ON PRIMARYGO5.入库实体 以货物编号为索引CREATE INDEX IX_入库实体 ON dbo.入库实体(货物编号) ON PRIMARYGO6.出库实体 以员工号为索引CREATE INDEX IX_出库实体 ON dbo.出库实体(货物编号) ON PRIMARYGO7.报损实体 以货物编号为索引CREATE INDEX IX_报损实体 ON dbo.报损实体(货物编号) ON PRIMARYGO8.仓库 以仓库号为索引CREATE INDEX IX_仓库 ON dbo.仓库(仓库号) ON PRIMARYGO6.2 视图6.3 安全机制系统安全、数据安全数据安全: 程序启动需要经过SQL Sever 登陆认证,登陆ID 和密码正确才能启动程序。 程序内部的任何会引起数据库改动的操作(增删改)均经过了严密的审查判定,以确保数据库的准确性和一致性。系统安全: 登陆需经过身份认证,即身份口令密码一致才可登录。 不同的用户有不同的权限,用户只能使用分配给他的权限,无法越权操作。具体机制为:部门总监等级16,实现增删保管员和员工;主管即保管员等级8,实现增删员工以及对相应信息的维护;员工-调拨员等级4,实现买入、调拨本仓货物等;员工-会计等级3,实现8级以下员工的等级和职务赋予(注:调拨员和会计职务以及等级由主管赋予)以及工资的录入;内务员等级1,查看仓库内货物是否完整以及上报货物损坏。除部门总监用户名以及密码由系统默认外,其他人员必须在得到自己的员工号之后进入系统注册,系统会自动检索各员工用户名以及是否为主管,主管的等级在注册时会被系统自动赋予8级。若员工(非主管)等级尚未被赋予,注册时系统会提示职务以及等级信息不明确,先赋给等级为0,这样登录之后只能使用系统的一小部分功能。即录入自己的原始信息其中不包括在本仓库的职务。七、应用程序设计7.1 功能模块仓库信息管理员工管理仓库管理出库货物管理入库货物管理报损货物管理现有货物管理员工增加删除查询工资调整仓库的增加删除查询出库货物的增加删除查询入库货物的增加删除查询报损货物的增加删除查询现有货物的增加删除查询7.2 界面设计为了完整地说明整个系统界面的设计,下面模拟真实使用系统的过程来间接说明。在仓库管理的最开始,我们有5个仓库,和一小部分货物在数据库表中。这个时候,仓库管理部门被设立,首先委派来的是整个部门的总监。部门总监被告知其系统默认用户名是“YorkMayMark”,默认密码是“*”(此处密码为本系统设计者即本人的某一个常用密码,故不予透漏)。下面是登录界面(1.登录事务、2.注册事务、3.找回密码事务 详见7.3事务设计。):在登录入界面之后出现主界面:主界面是唯一的,所有用户登录之后都会见到的界面。在界面上方被红色椭圆圈出来的是用户可用的功能按钮,分为:信息管理、我的工作台、人员管理、货物明细,这些按钮不同级别的人员点击进入产生的界面是不同的。(注:其中加锁的按钮对普通员工不开放,点击会产生级别不够的提示消息框)在界面的左下方圈出来的是一个显示当前工作人员工作信息的面板。界面中央显示仓库在过去时间段内的货物流入流出情况,这里只显示,不提供编辑。(4.主界面按钮事务、5.主界面面板事务 详见7.3事务设计。)部门总监当前在主界面首先要操作的是:为每个仓库提供主管。因此,他需要点击进入人员管理界面添加人员。(注:货物明细、我的工作台等按钮功能见后面)下面是人员管理界面:请注意,当前数据库里是没有人员数据的,所以,需要部门总监添加仓库保管员即主管。当前的界面是对保管员和员工的信息浏览,仍然在界面上方是功能按钮,总监首先需要添加保管员,则点击保管员管理按钮。保管员管理界面如下:在本界面,有很多功能了。现在正处于添加保管员信息的过程中,它可以通过点击添加按钮增加一行空白行,然后在空白行编写信息,最后点击保存按钮保存修改到数据库。并为你弹出反应框,让你知道数据库更新成功:此外在保存按钮和添加按钮中间还有一个删除按钮,可以选中一行然后点击删除按钮,系统自动将之删除并更新数据库。在界面上方还有查询栏功能,可以选择精确查询或者模糊查询然后在编辑框的右边是下拉列表,选择查询对象进行查询。当然,涉及编号不提供模糊查询。查询之后如果想返回所有人员信息可以点击右上角的刷新按钮。(6.添加事务、7.删除事务、8.保存事务、9.查询事务 详见7.3 事务设计)现在,部门总监添加保管员成功,他返回人员管理主界面之后点击“保管员信息明细”之后,系统会为之刷新数据,将刚刚添加的人员显示出来:当然不能忘记在登录之后的主界面上还有三个功能按钮。我的工作台功能按钮:点击之后所有级别不同的人员见到的界面都不一样。部门总监点击之后出现保管员信息维护窗口,可以修正保管员和仓库的关系资料。见下图:货物明细功能:对所有人员都是一样的,它用来显示所有货物资料,以及货物详细资料。具体见下图:上述窗口实现查询以及获得某一行货物的详细资料、查询之后返回所有货物的按钮功能等。其中,点击详细资料之后出现的窗口如下图:信息管理功能按钮:实现个人详细信息填写的功能。在填写之后将所填写信息保存到数据库中。其中,除了保管员之外,部门总监和员工打开的该功能界面都一样,用来确定所有人员的详细信息。下面轮到保管员了。从上面输入的保管员中任选一个,比如2号仓库的保管员莫莫。她已经得到了自己的编号,那么就可以在登录界面上点击 “员工注册”链接,进入注册界面。输入自己的编号之后,会自动出现姓名和年龄以供用户确认。同时,系统会为保管员自动生成等级:8级。系统只为保管员生成等级,其他人员不负责。之后点击确定按钮会弹出您已注册成功的对话框,点击确定之后即可登录主界面。下面是注册的界面:保管员登录主界面之后和部门总监显示的是一致的,这里不再截图显示。接下来,保管员首先要为自己保管的仓库添加人员。为了维持正常的仓库管理,他需要添加两类新用户,一个是会计,用来登入其他员工以及职务、权限、工资等;另一个是调拨员,用来维持仓库的正常运转。点击人员管理按钮,弹出人员详细窗口,与部门总监一致,接下来点击员工管理按钮,得到员工管理界面。添加人员信息。员工管理界面如下图:所有功能和前边保管员信息管理界面的功能一致。接下来,保管员要做的是为新增的两人录入职务信息以及等级权限。返回主界面,点击信息管理按钮,保管员点击会弹出下属信息录入以及修改框,其他人员点击会出现个人信息录入框。下属职务信息录入界面如下图:如果保管员想要更改或者录入个人详细信息的话,点击上述界面的个人信息按钮,会弹出个人详细信息对话框,对话框自动列出个人已录入信息。个人信息录入界面如下图:除此之外,保管员的货物明细功能和部门总监一样。我的工作台按钮功能实现的是对仓库与员工关系信息的维护,与部门总监所维护信息的界面很相似。截图如下:接下来是会计登录,注册界面与保管员一致,主界面没有新的地方。我的工作台按钮功能与前面两个都不同。会计工作台用来添加其他职员的编号职务工资等级等。会计工作台界面如下:接下来是调拨员登录之后的工作台:点击本仓管理之后显示本地仓库货物管理,可以借出和买入,这里我们将面粉借出20,再借出10,将货物2新购入50.界面如下:之后返回工作界面,点击他仓管理按钮,进入调拨货物的界面,在其他仓库选中货物,填入调拨数量,点击调拨按钮,可以调入本仓货物,同时更新数据库。这里假设我们将面粉从仓库一调入50.在调入工作完成后,本地数据库会更新表单,然后在数据窗口中显示出来。仓库2在前面借出的处理后剩下面粉70袋,从仓库一中调入50,变为120袋。注:这些仓库库存的调入调出存在主界面的仓库流入流出表单中,并显示。在接下来我们会看到主界面原本空白的表单的变化。本地仓库调入界面如下:其中查看按钮会显示当前选中的货物的详细信息,与前面的相同。接下来是信息更新的主界面。最后是内务员对本仓库内部货物报损的情况。我的工作台界面如下:其中,经办人编号,报损时间,仓库编号是自动生成的。7.3 事务设计1.登录事务:string is_user,is_password,kongNode man/这是自定义结构变量,用来存放人员编号、姓名、仓库等。is_user=sle_1.textSELECT passWD,ID,NM,CKid,levelINTO:is_password,:man.ID,:man.Name,:man.Ck,:man.LevelFROM 员工信息WHERE userNM=:is_user;/从员工信息表中查询输入用户名if is_password= thenSELECT passWD,mID,mNM,mCK,levelINTO :is_password,:man.ID,:man.Name,:man.Ck,:man.LevelFROM 主管信息WHERE useNM=:is_user;/从主管信息表中查询输入用户名end ifif is_password= then/如果上述没有查询到if is_userYorkMayMark then/查看是否为部门总监messagebox(账户错误,您提供的用户名无效!)returnelseis_password=*/此处隐私内容哦man.ID=888man.Name=诸葛man.Level=16end ifend ifif is_password=sle_2.text then/对比数据库中的密码与输入是否符合openwithparm(w_realmain,man)close(parent)elsemessagebox(登录错误,您输入的密码或者用户名有误!)end if2.注册事务:1.自动生成用户信息事务:st_1.text=st_2.text=st_4.text=string test,uName,manage SELECT NM,age,userNM,level INTO :st_1.text, :st_2.text,:uName,:st_4.text FROM 员工信息 WHERE ID=:sle_1.text;if st_1.text= then SELECT mNM,age,useNM,level INTO :st_1.text, :st_2.text,:uName,:st_4.text FROM 主管信息 WHERE mID=:sle_1.text;manage=st_1.textend ifif st_1.text= thenmessagebox(编号错误,您提供的编号有误,请核对!)returnend ifif uName thenmessagebox(提示,您已注册过了,请直接登录!)returnend ifSELECT 编号,等级 into :test,:st_4.textFROM 人员职务WHERE 编号=:sle_1.text;if test= then if managethenst_4.text=8update 主管信息set level=:st_4.textwhere mID=:sle_1.text;commit using sqlca;returnelsemessagebox(提醒,您的职务及详细信息不足,但不影响注册!请及时到其他人员处添加信息)st_4.text=0returnend ifend ifupdate 员工信息set level=:st_4.textwhere ID=:sle_1.text;commit using sqlca;2.确认注册事务:string testtest =Myif sle_1.text= thentest=end ifif st_1.text= thentest=end ifif sle_2.text= thentest=end ifif sle_3.text= thentest=end ifif sle_4.text= thentest=end ifif test= thenmessagebox(警告,您的信息不完整,请核对!)returnend ifif sle_3.textsle_4.text thenmessagebox(错误,前后输入密码不一致!)returnend ifif integer(st_4.text)8 thenUPDATE 员工信息SET userNM=:sle_2.text,passWD=:sle_3.textWHERE ID=:sle_1.text;commit using sqlca;elseUPDATE 主管信息SET useNM=:sle_2.text,passWD=:sle_3.textWHERE mID=:sle_1.text;commit using sqlca;end ifUPDATE 人员详细SET 姓名=:st_1.text,密保=:ddlb_1.text,答案=:sle_5.textWHERE 编号=:sle_1.text;commit using sqlca;messagebox(提示,您已注册成功!)close(parent)3.找回密码事务:string psw,questif sle_2.textsle_3.text thenmessagebox(错误,前后输入密码不一致!)returnend ifSELECT 密保,答案 into:quest,:psw from 人员详细 where 编号=:sle_4.text;if questthenif pswsle_1.text thenmessagebox(提示,答案错误!请仔细回想!) returnelseUPDATE 员工信息set passWD=:sle_3.textwhere ID=:sle_4.text;commit using sqlca;messagebox(提示,您已修改密码成功!)close(parent)returnend ifelsemessagebox(提醒,您未设置密保问题,请联系管理员!)returnend if4.主界面按钮事务(仅显示我的工作台按钮事务):Node useruser.ID=integer(st_2.text)user.Name=st_3.textuser.Ck=integer(st_6.text)user.Level=integer(st_7.text)if user.Level=0 thenmessagebox(提示,您的职务信息不完整,不能定义您的权限,只能填写信息!)openwithparm(w_rename,user)elseif user.Level=16 thenopenwithparm(w_bigboss,user)close(parent)returnend ifif user.Level=8 thenopenwithparm(w_nextboss,user)close(parent)returnend ifif user.Level=4 thenopenwithparm(w_firstckmanager,user)close(parent)returnend ifif user.Level=3 thenopenwithparm(w_job,user)returnend ifif user.Level=1 thenopenwithparm(w_bebad,user)close(parent)returnend ifend if5.主界面面板事务:Node nn=message.powerobjectparmst_2.text=string(n.ID)st_3.text=n.Namest_6.text=string(n.Ck)st_7.text=string(n.Level)dw_1.settrans(sqlca)dw_1.retrieve(n.Ck)dw_2.settrans(sqlca)dw_2.retrieve(n.Ck)6.添加事务:longl_rowints/得到当前数据项的列s = dw_1.RowCount()/插入新的一列l_row = dw_1.InsertRow(s+1)/滚动到s+1列dw_1.scrolltorow(s+1)/设置焦点dw_1.setfocus()7.删除事务:int s s = dw_1.getrow()dw_1.deleterow(s)dw_1.update()commit using sqlca;dw_1.retrieve()8.保存事务:/提交到数据库进行保存dw_1.update()commit using sqlca;messagebox(显示,您已成功修改数据!)dw_1.retrieve()9.查询事务:string wheresql,txtthisif ddlb_1.text=编号 thentxtthis=IDend ifif ddlb_1.text=姓名 then txtthis=NMend ifif ddl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论