宁波工程学院课程设计报告
价格排序分为升序和降序两种:
图4-7升序图 4-8降序 (1)升序控件程序
dw_1.settransobject(sqlac) dw_1.retrievet()
dw_1.setsort(“price asc”) dw_1.sort()
(2)降序控件程序
dw_1.settransobject(sqlac) dw_1.retrievet()
dw_1.setsort(“price desc”) dw_1.sort()
4-3-3 库存管理模块设计
库存管理模块实现用户对库存数量查询功能,并负责对商品库存查询添加等功能,涉及的数据表为store list表。主要功能如下:1)查询,2)修改。库存管理模块的实现界面如图4-9所示。
10
宁波工程学院课程设计报告
图4-9库存查询及修改
注:各控件的程序同上 4-4设计过程截图 表格的建立:
库存表 价格表
登录表
11
宁波工程学院课程设计报告
当查询输入错误时显示: 登录时输入错误显示:
定义全局变量:
5.系统的调试和心得体会
在本次设计中,是我和刘阳共同完成的,我主要是负责对后台程序的编写,我的队友负责数据库、页面、以及表格的建立和部分程序的修改。在查询界面中,因为我涉及到了区间查询方式,需要输入一个区间然后将再此区间内的所有商品都显示出来。我不知道该如何编写,后来通过网上查找和与队友讨论,终于实现了该项功能。比较遗憾的是,我们应该在该查询系统中加入完整的人事管理模块和进货管理模块,可是由于基础不够只好放弃。 在本次课程设计中,我的收获还是蛮大的。让我对数据库有了更进一步的了解。但是我还是缺乏自己学习PB的能力,因为网上的有些函数看不懂,不懂得如何转换成自己的东西。在以后的学习中要多和别人讨论,然后获得更多的知识。
附录
12
宁波工程学院课程设计报告
关键代码
查询程序:
dw_1.settransobject(sqlca) dw_1.retrieve()
if rb_1.checked=true then if dw_1.rowcount()= 0 then messagebox(\提示\无效\ end if dw_1.setfilter(\ dw_1.filter() end if
if rb_2.checked=true then if dw_1.rowcount()= 0 then messagebox(\提示\无效\ end if dw_1.setfilter(\ dw_1.filter() end if
if rb_3.checked=true then if dw_1.rowcount()= 0 then messagebox(\提示\无效\ end if dw_1.setfilter(\ dw_1.filter() end if
密码修改程序:
if trim(sle_1.text)<>ls_password then messagebox(\提示\旧密码错误\else if trim(sle_2.text)=trim(sle_3.text) then ls_password=trim(sle_2.text)
UPDATE users SET password = :ls_password
WHERE ( users.name = :gs_username ) AND ( users.password = :gs_password ) ; if sqlca.sqlcode<>0 then messagebox(\提示\密码修改不成功\ else close(parent)
13
宁波工程学院课程设计报告
messagebox(\提示\密码修改完成\ end if else messagebox(\提示\两次新密码不相同\end if end if
登录程序:
ls_username=trim(sle_1.text) //输入的用户名和密码 ls_password=trim(sle_2.text)
if ls_username=\ messagebox(\提示\用户名和密码不能为空\else SELECT users.name, users.password INTO :gs_username, :gs_password FROM users WHERE ( users.name = :ls_username ) AND ( users.password = :ls_password ); if sqlca.sqlcode=0 then open(x_main) //密码正确,打开主窗口 close(x_login) else li_n=li_n - 1 if li_n<>0 then messagebox(\提示\用户名或密码错误\ else messagebox(\提示\错误超过 3 次,自动退出\ halt //错误超过 3 次,退出程序 end if end if end if
14