版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、PowerBuilder程序设计课程设计报告课题名称: 课题组成员:孙卫华,齐旭光,刘智超,李士卿,韩亚川1 系统概论由于现代社会发展迅速,各个单位为了提高自己的业务水平和增强实力,单位所库存的图书也越来越齐全,图书仓库管理的效率由此倍受关注。这让管理者在原有简易的人工系统管理下,效率低、强度大且易出错。因此迫切需要一种先进的库存管理系统以保证单位办事效率的高效、有序地进行,并便于管理者能清楚地了解单位图书库存的情况。便于一些图书使用单位或出版社图书的管理。本系统是我们结合图书入库与出库两个方面的 ,开发出的一个比较科学的图书库存管理系统,可以供一些图书使用单位或出版社单位参考使用。技术特点:
2、界面精致简洁方便 本着以质为先的思想,本系统数据显示采取PB独有的数据窗口机制;各功能项内容以菜单显示,并配有功能按钮,清晰明了,可以及点及出。使用维护方便 因为系统主要是基于面向对象的数据库语言编写得,各功能都采用标准模式来实现,不需要专业的系统管理员即可对系统进行维护。模块化设计 全套软件结构合理,模块化的设计可以使用户维护方便,轻松实现多种功能。信息处理的完全标准化 就如设置Windows界面和菜单一样,本系统各个模块都采用Windows标准界面,给用户亲切的感觉就像每天走进自己的办公室一样,使用得心应手,工作起来信心百倍。安全可靠 本系统有强大的权限管理功能,其权限分三种:图书入库管理
3、权限、图书出库管理权限、数据初始化权限。通过权限维护保证数据的安全性。2 需求分析与概要设计2.1 需求分析图书库存管理涉及到图书库存的各个方面,主要是图书入库,图书出库。一个实际的图书库存管理系统是具有对进出库图书各方面信息进行详细管理,分类统计等功能的复杂系统。一般的图书库存管理软件的基本功能为进出库图书的信息进行管理与维护。由于我做的是一个小型的图书管理管理系统,所以本系统拟。系统主控界面信管部门人事部门销售部门采购部门仓管部门图2-1电器器材商店模型图2.2 概要设计2.1.1 系统启动画面一个作为工程或系统运行时的启动画面。一个应用系统的启动画面往往是系统制作的一般的过程,他体现了系
4、统制作的规范性。这部分没什么功能。只是系统的一个欢迎界面。2.1.2 工程主窗口在启动画面出现之后,直接进入系统主控界面,也就是主窗口。通过这个主窗口之后需要执行各种功能。主窗口所能实现的功能如下面截图所示。(1)通过入库管理可以进入图书入库管理权限认证窗口。(2)通过出库管理可以进入图书出库管理权限认证窗口。(3)通过数据初始化控件可以进入(4)通过权限维护控件可以对用户名及密码设置。(5)退出功能实现的是退出本系统的使用。2.1.3 图书入库管理权限认证通过本部分可以通过输入用户姓名和用户密码登陆图书入库管理系统。这需要对权限认证按钮的单击事件编辑代码。2.1.4 图书入库管理通过权限认证
5、了之后,可以对入库图书进行如下操作:增加记录,删除记录,查询记录。2.1.5 图书出库权限认证用图书出库用户姓名及口令进入图书出库窗口。3 数据库逻辑设计库结构,其中包括使用的数据库管理系统和数据库表结构等。设计数据库表结构是建立数据窗口的基础。对于该系统,首先需要创建一个数据库的结构。在PB80内部利用Adaptive Server Anywhere建立图书信息管理系统数据库,命名为图书库存管理数据库。该数据库中共有4个表。 (1)入库图书数据表入库图书数据表如下表所示。字段名称字段类型字段大小索引忽略空值图书编号char20否书名char26否作者char10否出版社char26否版次ch
6、ar26否入库数Integer默认否单价numic默认否入库日期data默认否入库序号integer默认关键索引(Primary)(2)出库图书数据表出库图书数据表如下表所示。字段名称字段类型字段大小索引忽略空值图书编号char20书名char26否作者char10否出版社char26否版次char26否入库数Integer默认否单价numic默认否出库日期data默认否出库序号integer默认关键索引(Primary)据表图书主表数据表如下表所示。表2-3 商品信息表字段名称字段类型字段大小索引忽略空值图书编号char20primary否书名char26否(4)密码表密码表数据表如下表所示
7、。字段名称字段类型字段大小索引忽略空值用户密码char6primary否用户名char10否4 系统详细设计4.1 主控程序模块为了增强系统的保密性,一般应用程序都应当设置身份验证程序模块入系统时,但本系统每一个人只能对与他有关的的事务进行管理,从而只能对系统中想关的功能模块进行操作,而与他无关的功能模块则不能操作,这就作主要是通过权限控制得以实现的。系统启动后,出现欢迎界面,接着出现系统主窗口。该窗口如下图所示。入库管理图片按钮的代码为:open(wd_password)出库管理图片按钮的代码为:open(wd_passtsck)数据初始化图片按钮的代码为:open(wd_systemini
8、twindow)权限维护图片按钮的代码为:open(wd_passwordmaintain)4.2 入库管理权限认证界面该窗口如下图:本部分的open事件代码为connect;dw_1.settransobject(sqlca)dw_1.retrieve(1)本窗口的确认按钮的代码为:string querytjquerytj="("+"用户名"+"="+"'"+sle_1.text+"'"+")"+"and"+"("+
9、"用户密码"+"="+"'"+sle_2.text+"'"+")"dw_1.setfilter(querytj)Filter(dw_1)dw_1.retrieve(1)sle_1.text=string(dw_1.RowCount()if dw_1.RowCount()=0 thenMessageBox("警告","对不起,权限认证出现错误,请确认你是否为合法用户并重新检验!")elseopen(wd_tsrkglwindow)close(
10、wd_password)end if4.3图书入库管理界面4部分代码如下open事件代码为connect using sqlca;dw_1.settransobject(sqlca)dw_1.retrieve(1)dw_2.settransobject(sqlca)dw_2.retrieve(1)1。 增加记录按钮的代码为:long hh1hh1=dw_1.GetRow()dw_2.InsertRow(dw_2.rowcount()+1)dw_2.object.datadw_2.rowcount(),1=dw_1.object.datahh1,1dw_2.object.datadw_2.row
11、count(),2=dw_1.object.datahh1,2dw_2.scrolltorow(dw_2.rowcount()2 删除记录按钮的代码为:long hhinteger NetNet=MessageBox("注意!","删除数据不可恢复!确实要删除吗?",question!,YesNo!)IF Net=1 THENhh=dw_2.getrow()deleterow(dw_2,hh)/dw_2.retrieve(0)ElseMessageBox("提示","数据未删除,仍可使用!")end if3确认操作
12、按钮的代码为:if update(dw_2,true,false)=1 thendw_2.resetupdate()commit;dw_2.retrieve(0)elserollback;messagebox("警告","数据保存失败!")end if4. 第一条记录图片按钮代码为:string settingdw_1.ScrollToRow(0)setting="图书编号="+"'"+dw_1.object.data1,1+"'"dw_2.setfilter(setting)F
13、ilter(dw_2)dw_2.retrieve(1)5。前一条记录的图片按钮的代码为:string settingInteger hhhh=dw_1.GetRow()IF hh=1 ThenMessageBox("注意!","目前已经是第一条交易记录,请作其他操作")elsedw_1.ScrollPriorRow()hh=dw_1.GetRow()setting="图书编号="+"'"+dw_1.object.datahh,1+"'"dw_2.setfilter(setting
14、)Filter(dw_2)dw_2.retrieve(1)end if6。下一条记录图片按钮的 代码为:string settingInteger hhhh=dw_1.GetRow()IF hh=dw_1.Rowcount() ThenMessageBox("注意!","目前已经是最后一条交易记录,请作其他操作")elsedw_1.ScrollNextRow()hh=dw_1.GetRow()setting="图书编号="+"'"+dw_1.object.datahh,1+"'"
15、dw_2.setfilter(setting)Filter(dw_2)dw_2.retrieve(1)end if7。最后一条记录图片按钮的代码为:string settingInteger hhdw_1.ScrollToRow(dw_1.RowCount()hh=dw_1.GetRow()setting="图书编号="+"'"+dw_1.object.datahh,1+"'"dw_2.setfilter(setting)Filter(dw_2)dw_2.retrieve(1)8。执行查询按钮的代码为:string t
16、jstring settingInteger hhtj=ddlb_1.Text+"="+"'"+sle_1.text+"'"dw_1.setfilter(tj)Filter(dw_1)dw_1.retrieve()hh=dw_1.GetRow()setting="("+"图书编号="+"'"+dw_1.object.datahh,1+"'"+")"+"or"+"("
17、+"书名="+"'"+dw_1.object.datahh,2+"'"+")"dw_2.setfilter(setting)Filter(dw_2)dw_2.retrieve(0)setting="图书编号<>''"dw_1.setfilter(setting)Filter(dw_1)4.4 图书出库管理权限认证窗口窗口如下窗口open事件代码为connect;dw_1.settransobject(sqlca)dw_1.retrieve(1)确认按钮
18、代码为:string querytjquerytj="("+"用户名"+"="+"'"+sle_1.text+"'"+")"+"and"+"("+"用户密码"+"="+"'"+sle_2.text+"'"+")"dw_1.setfilter(querytj)Filter(dw_1)dw_1.retrieve
19、(1)sle_1.text=string(dw_1.RowCount()if dw_1.RowCount()=0 thenMessageBox("警告","对不起,权限认证出现错误,请确认你是否为合法用户并重新检验!")elseopen(wd_tsckglwindow)close(wd_passtsck)end if4.5 图书出库管理界面本窗口的open事件代码为connect using sqlca;dw_1.settransobject(sqlca)dw_1.retrieve(1)dw_2.settransobject(sqlca)dw_2.ret
20、rieve(1)1。增加记录按钮的代码为long hh1hh1=dw_1.GetRow()dw_2.InsertRow(dw_2.rowcount()+1)dw_2.object.datadw_2.rowcount(),1=dw_1.object.datahh1,1dw_2.object.datadw_2.rowcount(),2=dw_1.object.datahh1,2dw_2.scrolltorow(dw_2.rowcount()2删除记录按钮的代码为:long hhinteger NetNet=MessageBox("注意!","删除数据不可恢复!确实要删
21、除吗?",question!,YesNo!)IF Net=1 THENhh=dw_2.getrow()deleterow(dw_2,hh)/dw_2.retrieve(0)ElseMessageBox("提示","数据未删除,仍可使用!")end if3确认操作按钮的代码为:if update(dw_2,true,false)=1 thendw_2.resetupdate()commit;dw_2.retrieve(0)elserollback;messagebox("警告","数据保存失败!")end
22、if4第一条记录图片按钮的代码为string settingdw_1.ScrollToRow(0)setting="图书编号="+"'"+dw_1.object.data1,1+"'"dw_2.setfilter(setting)Filter(dw_2)dw_2.retrieve(1)5。上一条记录图片按钮代码为string settingInteger hhhh=dw_1.GetRow()IF hh=1 ThenMessageBox("注意!","目前已经是第一条交易记录,请作其他操作&
23、quot;)elsedw_1.ScrollPriorRow()hh=dw_1.GetRow()setting="图书编号="+"'"+dw_1.object.datahh,1+"'"dw_2.setfilter(setting)Filter(dw_2)dw_2.retrieve(1)end if6下一条记录的代码为string settingInteger hhhh=dw_1.GetRow()IF hh=dw_1.Rowcount() ThenMessageBox("注意!","目前已经是
24、最后一条交易记录,请作其他操作")elsedw_1.ScrollNextRow()hh=dw_1.GetRow()setting="图书编号="+"'"+dw_1.object.datahh,1+"'"dw_2.setfilter(setting)Filter(dw_2)dw_2.retrieve(1)end if7。最后一条的代码为:string settingInteger hhdw_1.ScrollToRow(dw_1.RowCount()hh=dw_1.GetRow()setting="图书
25、编号="+"'"+dw_1.object.datahh,1+"'"dw_2.setfilter(setting)Filter(dw_2)dw_2.retrieve(1)8。确认查询的代码为string tjstring settingInteger hhtj=ddlb_1.Text+"="+"'"+sle_1.text+"'"dw_1.setfilter(tj)Filter(dw_1)dw_1.retrieve()hh=dw_1.GetRow()sett
26、ing="("+"图书编号="+"'"+dw_1.object.datahh,1+"'"+")"+"or"+"("+"书名="+"'"+dw_1.object.datahh,2+"'"+")"dw_2.setfilter(setting)Filter(dw_2)dw_2.retrieve(0)setting="图书编号<>&
27、#39;'"dw_1.setfilter(setting)Filter(dw_1)4.6 系统初始化权限认证界面open事件代码为connect;dw_1.settransobject(sqlca)dw_1.retrieve(1)确认按钮的代码为string querytjquerytj="("+"用户名"+"="+"'"+sle_1.text+"'"+")"+"and"+"("+"用户密码&
28、quot;+"="+"'"+sle_2.text+"'"+")"dw_1.setfilter(querytj)Filter(dw_1)dw_1.retrieve(1)sle_1.text=string(dw_1.RowCount()if dw_1.RowCount()=0 thenMessageBox("警告","对不起,权限认证出现错误,请确认你是否为合法用户并重新检验!")elseopen(wd_xtcshwindow)close(wd_systemini
29、twindow)end if4.7 数据初始化界面本部分的初始化代码为connect using sqlca;dw_1.settransobject(sqlca)dw_1.update();dw_1.retrieve()sle_1.text=''sle_2.text=''1。确认增加按钮的代码为:int hhdw_1.InsertRow(dw_1.rowcount()+1)dw_1.scrolltorow(dw_1.rowcount()dw_1.object.datadw_1.rowcount(),1=sle_1.textdw_1.object.datadw_1
30、.rowcount(),1=sle_2.texthh=dw_1.update()if hh=dw_1.rowcount() thencommit;else rollback;end ifconnect using sqlca;dw_1.settransobject(sqlca)dw_1.update();dw_1.retrieve()sle_1.text=''sle_2.text=''2确认删除按钮的代码为:long hhinteger NetNet=MessageBox("注意!","删除数据不可恢复!确实要删除吗?",
31、question!,YesNo!)IF NET=1 THENhh=dw_1.getrow()deleterow(dw_1,hh)/dw_1.retrieve(0)ElseMessageBox("提示","数据未删除,仍可使用!")end ifif update(dw_1,true,false)=1 thendw_1.resetupdate()commit;dw_1.retrieve(0)elserollback;messagebox("警告","数据保存失败!")end if3第一条记录按钮的代码为:int hhd
32、w_1.ScrollToRow(0)hh=dw_1.GetRow()sle_1.text=dw_1.object.datahh,1sle_2.text=dw_1.object.datahh,24前一条记录按钮的代码为:int hhdw_1.ScrollPriorRow()hh=dw_1.GetRow()sle_1.text=dw_1.object.datahh,1sle_2.text=dw_1.object.datahh,25下一条记录按钮的代码为:int hhdw_1.ScrollNextRow()hh=dw_1.GetRow()sle_1.text=dw_1.object.datahh,1
33、sle_2.text=dw_1.object.datahh,26最后一条记录按钮的代码为:int hhdw_1.ScrollToRow(dw_1.RowCount()hh=dw_1.GetRow()sle_1.text=dw_1.object.datahh,1sle_2.text=dw_1.object.datahh,24.8 权限维护界面本窗口open事件代码为:connect using sqlca;dw_1.settransobject(sqlca)dw_1.retrieve(1)1修改密码选项按钮的代码为:st_2.text='请输入原密码'st_3.text='
34、;请输入新密码'cb_1.enabled=truecb_2.enabled=falsecb_3.enabled=false2增加用户选项按钮的代码为:st_2.text='请输入新用户名称'st_3.text='请输入新用户密码'cb_1.enabled=falsecb_2.enabled=truecb_3.enabled=false3删除用户选项按钮的代码为:st_2.text='请输入原用户名'st_3.text='请输入原用户密码'cb_1.enabled=falsecb_2.enabled=falsecb_3.en
35、abled=true4确认修改按钮的代码为:string querytjquerytj='用户密码='+"'"+sle_1.text+"'"dw_1.setfilter(querytj)Filter(dw_1)dw_1.retrieve(1)if dw_1.RowCount()=0 thenMessageBox("警告","对不起,权限认证出现错误,请确认你是否为合法用户并重新检验!")querytj="用户密码<>''"dw_1.Ob
36、ject.data1,2=sle_2.textdw_1.update()querytj="用户密码<>''"dw_1.setfilter(querytj)Filter(dw_1)dw_1.retrieve(1)end if5确认增加按钮的代码为:string querytjquerytj='用户密码='+"'"+sle_2.text+"'"dw_1.setfilter(querytj)Filter(dw_1)dw_1.retrieve(1)if dw_1.RowCount()<>0 thenMessageBox("警告","对不起,权限
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 夏季七防安全试题及答案
- 医疗器械经营企业内部审核培训试题及答案
- 181红色喜庆“福启新岁元气初旦”元旦晚会活动策划模板
- GHZ回转式弧形格栅除污机维护保养制度培训
- 生产技术部门安全职责与管理实践培训
- 2025《登岳阳楼》艺术特色课件
- 电气焊作业安全规程与风险防控培训
- 2026年商场超市安全巡查协议书
- 2026年广东茂名幼儿师范专科学校单招综合素质考试题库及答案详解(夺冠)
- 2026年山西省财政税务专科学校单招职业技能考试题库带答案详解(能力提升)
- 小学生视力保护课件
- 2025年世界防治结核病日知识竞赛考试题库300题(含答案)
- 2025年包头轻工职业技术学院单招职业技能测试题库a4版
- DBJ50-T-336-2019建设工程人工材料设备机械数据标准
- 木店CNGLNG-加气站反恐防恐防暴应急预案
- 2025年海南省农垦投资控股集团招聘笔试参考题库含答案解析
- 小学生春节作文课件
- 半导体器件的封装技术考核试卷
- 《重庆市建设工程施工现场安全资料管理规程》
- 电线电缆基础知识技术资料
- 景观设计整体课程设计
评论
0/150
提交评论