附录2新华书店进销存管理系统部分程序源代码_第1页
附录2新华书店进销存管理系统部分程序源代码_第2页
附录2新华书店进销存管理系统部分程序源代码_第3页
附录2新华书店进销存管理系统部分程序源代码_第4页
附录2新华书店进销存管理系统部分程序源代码_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1、.:.;附录新华书店进销存管理系统部分程序源代码主程序MAIN.PRG程序代码SET DEFAULT TO C:毕业设计PUBLIC nkfgl,nxsgl,ncggl,nkcgl,nxtglSTORE .f. TO nkfgl,nxsgl,ncggl,nkcgl,nxtglPUBLIC nname,ndepartmentSTORE TO nname,ndepartmentDo Form loginfRead EventsDo Form mainRead EventsQuit主表单MAIN.SCX代码. 表单Init过程程序代码do mmenu.mpr with that,.T.that.la

2、bel.caption = nnamethat.label.caption = ndepartment系统登入表单LOGINF.SCX代码. 表单登入按钮Click事件程序代码SELECT userGO TOP*检查用户名和密码能否输入If empty(thisform.text.value) then thisform.label.caption = 请输入用户名 returnelse if empty(thisform.text.value) then thisform.label.caption = 请输入密码 return endifendif*操作USER表,查询满足条件记录loca

3、te for name = alltrim(thisform.text.value) if !found() thisform.label.caption=用户不存在 returnelse if user.password != alltrim(thisform.text.value) then thisform.label.caption=密码错误 return endifendifnname = ndepartment = user.departmentnkfgl = user.kfglnxsgl = user.xsglncggl = user.cgglnkcgl = u

4、ser.kcglnxtgl = user.xtglthisform.releaseclear events系统管理表单XTGLF.SCX代码. 表单Init过程程序代码thisform.text.enabled = .f.thisform.text.enabled = .f.thisform.text.enabled = .f.thisformbo.enabled = .f.thisform.check.enabled = .f.thisform.check.enabled = .f.thisform.check.enabled = .f.thisform.check.enabled = .f

5、.thisform.check.enabled = .f.thisform.label.visible = .f.thisform.text.visible = .f.thisformmand.enabled = .f.thisformmand.enabled = .f.thisform.dis_recordthisform.dis_reccommand. 表单自定义过程DIS_RECORD程序代码PUBLIC newcommandSTORE .f. TO newcommandif reccount(user) = thisform.text.value = thisform.text.val

6、ue = thisformbo.value = thisform.check.value = thisform.check.value = thisform.check.value = thisform.check.value = thisform.check.value = else thisform.text.value = thisform.text.value = user.passwordthisformbo.value = user.departmentif user.kfgl then thisform.check.value = else thisform.c

7、heck.value = endifif user.xsgl then thisform.check.value = else thisform.check.value = endifif user.cggl then thisform.check.value = else thisform.check.value = endifif user.kcgl then thisform.check.value = else thisform.check.value = endifif user.xtgl then thisform.check.value = else thisform.check

8、.value = endifendifthisform.refresh. 表单自定义过程DIS_RECCOMMAND程序代码private nstore to nn = reccount(user) if n= .or. n= then thisformmand.enabled = .f. thisformmand.enabled = .f. thisformmand.enabled = .f. thisformmand.enabled = .f.else if recno(user)= then thisformmand.enabled = .f. thisformmand.enabled

9、= .f. thisformmand.enabled = .t. thisformmand.enabled = .t. else if recno(user)=n then thisformmand.enabled = .t. thisformmand.enabled = .t. thisformmand.enabled = .f. thisformmand.enabled = .f. else thisformmand.enabled = .t. thisformmand.enabled = .t. thisformmand.enabled = .t. thisformmand.enable

10、d = .t. endif endifendifthisform.refresh. 表单保管按钮Click事件程序代码if empty(thisform.text.value) then =messagebox(请输入用户名,+,出错) thisform.text.setfocus thisform.refresh returnendifif empty(thisform.text.value) then =messagebox(请输入密码,+,出错) thisform.text.setfocus thisform.refresh returnendifif .not.(alltrim(thi

11、sform.text.value) = alltrim(thisform.text.value) then =messagebox(密码反复错误,请重新输入,+,出错) thisform.text.value = thisform.text.value = thisform.text.setfocus thisform.refresh returnendifif empty(thisformbo.value) then =messagebox(请选择所属部门,+,出错) thisformbo.setfocus thisform.refresh returnendifif thisform.ch

12、eck.value=.and.thisform.check.value=.and.thisform.check.value=.and.thisform.check.value=.and.thisform.check.value= then =messagebox(至少选择一个用户权限,+,出错) thisform.check.setfocus thisform.refresh returnendifif thisform.check.value=.and.thisform.check.value=.and.thisform.check.value=.and.thisform.check.val

13、ue=.and.thisform.check.value= then mesbox=messagebox(此用户将具有全部权限,请确认,+,警告) if mesbox= then thisform.check.setfocus thisform.refresh return endifendif*用户权限处置PRIVATE nname,npassword,ndepartment,nkf,nxs,ncg,nkc,nxtnname = alltrim(thisform.text.value)npassword = alltrim(thisform.text.value)ndepartment =

14、alltrim(thisformbo.value)if thisform.check.value = then nkf = .t.else nkf = .f.endifif thisform.check.value = then nxs = .t.else nxs = .f.endifif thisform.check.value = then ncg = .t.else ncg = .f.endifif thisform.check.value = then nkc = .t.else nkc = .f.endifif thisform.check.value = then nxt = .t

15、.else nxt = .f.endif*判别是新记录保管还是修正记录If newcommand then & newcommand = .t. 是新记录保管 locate for =alltrim(thisform.text.value) if found() then =messagebox(用户曾经存在,+,出错) thisform.text.setfocus thisform.refresh return endif *数据表user保管记录 insert into user(name,password,department,kfgl,xsgl,cggl,kcgl,x

16、tgl) values (nname,npassword,ndepartment,nkf,nxs,ncg,nkc,nxt) =messagebox(保管终了,+,提示)else update user set password= npassword,department=ndepartment,kfgl=nkf,xsgl=nxs,cggl=ncg,kcgl=nkc,xtgl=nxt where name= nname =messagebox(修正完成,+,提示)endif *表单初始化 thisform.text.enabled = .f. thisform.text.enabled = .f

17、. thisform.text.enabled = .f. thisformbo.enabled = .f. thisform.check.enabled = .f. thisform.check.enabled = .f. thisform.check.enabled = .f. thisform.check.enabled = .f. thisform.check.enabled = .f. thisformmand.enabled = .t. thisformmand.enabled = .t. thisformmand.enabled = .t. thisformmand.enable

18、d = .t. thisformmand.enabled = .t. thisformmand.enabled = .t. thisformmand.enabled = .t. thisformmand.enabled = .t. thisformmand.enabled = .t. thisformmand.enabled =.f. thisformmand.enabled =.f. thisformmand.enabled = .t. thisform.label.visible = .f. thisform.text.visible = .f. thisform.dis_reccomma

19、nd thisform.dis_record newcommand = .f. thisform.refresh. 表单阅读按钮Click事件程序代码DEFINE WINDOW browsewin FROM , TO , noFLOAT CLOSE nominimize nogrow nozoom systembrow fields name,department,kfgl,xsgl,cggl,kcgl window browsewin noappend nomodify nodeleterelease window browsewin图书管理表单TSGL.SCX代码. 自定义过程AUTO_B

20、OOKID程序代码select bookset order to bookidgo bottomprivate autoid,autoid,autoid,autoidautoid = alltrim(str(val(substr(alltrim(book.bookid),)+,)autoid = len(autoid)if autoid != then for n = autoid to autoid = + autoid endforendifautoid = B + alltrim(autoid)thisform.text.value = autoid. 新建按钮Click事件程序代码th

21、isform.text.enabled = .t.thisform.text.enabled = .t.thisform.text.enabled = .t.thisform.text.enabled = .t.thisform.text.enabled = .t.thisformbo.enabled = .t.thisform.text.enabled = .t.thisform.text.enabled = .t.thisformmand.enabled = .f.thisformmand.enabled = .f.thisformmand.enabled = .f.thisformman

22、d.enabled = .f.thisformmand.enabled = .f.thisformmand.enabled = .f.thisformmand.enabled = .f.thisformmand.enabled = .f.thisformmand.enabled = .f.thisformmand.enabled =.t.thisformmand.enabled =.t.thisformmand.enabled = .t.thisform.text.value = thisform.text.value = thisform.text.value = thisform.text

23、.value = thisform.text.value = thisformbo.value = thisform.text.value = thisform.text.value = thisform.auto_bookidthisform.text.setfocusthisform.newcommand = .t.thisform.refresh. 删除按钮Click事件程序代码if reccount(book)= then =messagebox(只需一条记录,不能删除,+,出错) returnelse nbookid = alltrim(thisform.text.value) nb

24、ookname = alltrim(thisform.text.value) mesbox=messagebox(能否删除+nbookid+号图书,+,警告) if mesbox= then return else use book EXCLUSIVE delete from book where bookid=nbookid pack =messagebox(nbookid+图书曾经删除,+,提示) endifendifthisform.dis_recordthisform.dis_reccommandthisform.grid.recordsource = bookthisform.ref

25、resh. 保管按钮Click事件程序代码if empty(thisform.text.value) =messagebox(请输入书名,+,出错) thisform.text.setfocus thisform.refresh returnendifif empty(thisform.text.value) =messagebox(请输入书号,+,出错) thisform.text.setfocus thisform.refresh returnendifif empty(thisform.text.value) =messagebox(请输入,+,出错) thisform.text.set

26、focus thisform.refresh returnendifif empty(thisform.text.value) =messagebox(请输入作者信息,+,出错) thisform.text.setfocus thisform.refresh returnendifif empty(thisformbo.value) =messagebox(请选择图书类型,+,出错) thisformbo.setfocus thisform.refresh return endifif thisform.text.value = =messagebox(请输入价钱,+,出错) thisform

27、bo.setfocus thisform.refresh return endif PRIVATE nbookid,nbookname,nbookno,nbookphouse,nbookwriter,nbookcd,nbookclass,nbookprice,nbookdiscountnbookid = alltrim(thisform.text.value)nbookname = alltrim(thisform.text.value)nbookno = alltrim(thisform.text.value)nbookphouse = alltrim(thisform.text.value

28、)nbookwriter = alltrim(thisform.text.value)nbookcd = alltrim(thisform.text.value)nbookclass = alltrim(thisformbo.value)nbookprice = thisform.text.valuenbookdiscount = thisform.text.value*判别是新记录保管还是修正记录If thisform.newcommand then & newcommand = .t. 是新记录保管 *数据表book保管记录 insert into book (bookid,booknam

29、e,bookno,bookphouse,bookwriter,bookcd,bookclass,bookprice,bookdiscount) values (nbookid,nbookname,nbookno,nbookphouse,nbookwriter,nbookcd,nbookclass,nbookprice,nbookdiscount) =messagebox(保管终了,+,提示)else update book set bookname=nbookname,bookno=nbookno,bookphouse=nbookphouse,bookwriter=nbookwriter,bo

30、okcd=nbookcd,bookclass=nbookclass,bookprice=nbookprice,bookdiscount=nbookdiscount where bookid=nbookid =messagebox(修正完成,+,提示)endif *表单初始化thisform.text.enabled = .f.thisform.text.enabled = .f.thisform.text.enabled = .f.thisform.text.enabled = .f.thisform.text.enabled = .f.thisformbo.enabled = .f.this

31、form.text.enabled = .f.thisform.text.enabled = .f.thisformmand.enabled = .t.thisformmand.enabled = .t.thisformmand.enabled = .t.thisformmand.enabled = .t.thisformmand.enabled = .t.thisformmand.enabled =.f.thisformmand.enabled =.f.thisformmand.enabled = .t.thisform.dis_recordthisform.dis_reccommandth

32、isform.newcommand = .f. thisform.refresh. 阅读按钮Click事件程序代码DEFINE WINDOW browsewin FROM , TO , noFLOAT CLOSE nominimize nogrow nozoom systembrow fields bookid,bookname,bookno,bookphouse,bookwriter,bookcd,bookclass,bookprice,bookdiscount window browsewin noappend nomodify nodeleterelease window browsew

33、in会员输入表单KFGL_HYSR.SCX程序代码. 自定义过程AUTO_VIPID程序代码select vipset order to vipidgo bottomprivate autoid,autoid,autoid,autoidautoid = alltrim(str(val(substr(alltrim(vip.vipid),)+,)autoid = len(autoid)if autoid != then for n = autoid to autoid = + autoid endforendifautoid = V + alltrim(autoid)thisform.text.

34、value = autoid. 保管按钮Click事件程序代码*输入数据校验if empty(thisform.text.value) =messagebox(请输入会员姓名,+,出错) thisform.text.setfocus returnendifif thisform.optiongroup.value = =messagebox(请选择会员性别,+,出错) thisform.optiongroup.option.setfocus returnelse private nvipsex store to nvipsex if thisform.optiongroup.value = s

35、tore 男 to nvipsex else stor 女 to nvipsex endifendifif empty(thisform.text.value) =messagebox(请输入会员,+,出错) thisform.text.setfocus returnendifif empty(thisform.text.value) =messagebox(请输入会员联络,+,出错) thisform.text.setfocus returnendifif empty(thisform.text.value) =messagebox(请输入邮政编码,+,出错) thisform.text.s

36、etfocus returnendif*保管数据private nvipid,nvipname,nvipadd,nvipphone,nvipcodenvipid = alltrim(thisform.text.value)nvipname = alltrim(thisform.text.value)nvipadd = alltrim(thisform.text.value)nvipphone = alltrim(thisform.text.value)nvipcode = alltrim(thisform.text.value)insert into vip (vipid,vipname,vi

37、psex,vipadd,vipphone,vipcode,vipsum,vipdiscount) values (nvipid,nvipname,nvipsex,nvipadd,nvipphone,nvipcode,)=messagebox(保管胜利,+,提示)nmesbox=messagebox(能否打印会员卡?,+,会员卡打印)if nmesbox = select vip.vipid,vip.vipname,vip.vipsex,vip.vipadd,vip.vipphone,vip.vipcode from vip where vip.vipid = nvipid into curso

38、r vipcard select vipcard report form vipcard.frx to print use in vipcardendifthisform.auto_vipidthisformmand.click. 去除按钮Click事件程序代码thisform.text.value = thisform.optiongroup.value = thisform.text.value = thisform.text.value = thisform.text.value = thisform.text.setfocusthisform.refresh会员查询表单KFGL_HYC

39、X.SCX程序代码. 表单自定义过程DIS_GRID程序代码thisform.grid.readonly = .t.thisform.grid.columncount = thisform.grid.column.header.caption = 会员编号thisform.grid.column.width = thisform.grid.column.movable = .f.thisform.grid.column.resizable = .f.thisform.grid.column.header.caption = 会员姓名thisform.grid.column.width = th

40、isform.grid.column.movable = .f.thisform.grid.column.resizable = .f.thisform.grid.column.header.caption = 会员性别thisform.grid.column.width = thisform.grid.column.movable = .f.thisform.grid.column.resizable = .f.thisform.grid.column.header.caption = thisform.grid.column.width = thisform.grid.column.mov

41、able = .f.thisform.grid.column.resizable = .f.thisform.grid.column.header.caption = 联络thisform.grid.column.width = thisform.grid.column.movable = .f.thisform.grid.column.resizable = .f.thisform.grid.column.header.caption = 邮政编码thisform.grid.column.width = thisform.grid.column.movable = .f.thisform.g

42、rid.column.resizable = .f.thisform.grid.column.header.caption = 累计购书金额thisform.grid.column.width = thisform.grid.column.movable = .f.thisform.grid.column.resizable = .f.thisform.grid.column.header.caption = 会员优惠折扣thisform.grid.column.width = thisform.grid.column.movable = .f.thisform.grid.column.res

43、izable = .f.thisform.refresh. 表单Init过程程序代码thisform.dis_gridpublic ncombo,ncombo,ntext,chsql,cxsqlstore to ncombo,ncombo,ntext,chsql,cxsqlthisform.optiongroup.value = thisform.optiongroup.enabled = .f.thisform.grid.recordsource = Null select vip.vipid,vip.vipname,vip.vipsex,vip.vipadd,vip.vipphone,vi

44、p.vipcode,vip.vipsum,vip.vipdiscount from vip into cursor hycx_temptable order by vip.vipidthisform.grid.recordsource = hycx_temptablethisform.dis_gridthisform.refresh. 表单添加条件按钮Click事件程序代码if empty(thisformbo.value) .or. empty(thisformbo.value) .or. empty(thisform.text.value) =messagebox(请输入条件,+,出错)

45、thisformbo.setfocus returnendifif thisform.optiongroup.value = chsql = AND endifif thisform.optiongroup.value = chsql = OR endifchsql = chsql + ncombo + ncombo + ntextthisform.edit.value = thisform.edit.value + chsqlif .not.empty(thisform.edit.value) thisform.optiongroup.value = thisform.optiongroup

46、.enabled = .t.endifthisformbo.value = thisformbo.value = thisform.text.value = chsql = thisformbo.setfocusthisform.refresh. 表单条件查询按钮Click事件程序代码if empty(thisform.edit.value) =messagebox(请输入查询条件,+,出错) thisformmand.setfocus thisform.refresh returnendifcxsql = alltrim(thisform.edit.value)thisform.grid.r

47、ecordsource = Null select vip.vipid,vip.vipname,vip.vipsex,vip.vipadd,vip.vipphone,vip.vipcode,vip.vipsum,vip.vipdiscount from vip where &cxsql into cursor hycx_temptable order by vip.vipidthisform.grid.recordsource = hycx_temptablethisform.dis_gridthisform.optiongroup.value = thisform.optiongroup.e

48、nabled = .f.thisformbo.value = thisformbo.value = thisform.text.value = thisform.edit.value = store to ncombo,ncombo,ntext,chsql,cxsqlthisform.refresh会员修正表单KFGL_HYXG.SCX程序代码表单Init过程程序代码LPARAMETERS nParselect vipset order to vipidlocate for vip.vipid = nParthisform.text.value = vip.vipidthisform.text

49、.value = vip.vipnameif vip.vipsex = 男 thisform.optiongroup.value = else thisform.optiongroup.value = endifthisform.text.value = vip.vipaddthisform.text.value = vip.vipphonethisform.text.value = vip.vipcodethisform.refresh保管按钮Click事件程序代码*输入数据校验if empty(thisform.text.value) =messagebox(请输入会员姓名,+,出错) t

50、hisform.text.setfocus returnendifif thisform.optiongroup.value = =messagebox(请选择会员性别,+,出错) thisform.optiongroup.option.setfocus returnelse private nvipsex store to nvipsex if thisform.optiongroup.value = store 男 to nvipsex else stor 女 to nvipsex endifendifif empty(thisform.text.value) =messagebox(请输

51、入会员,+,出错) thisform.text.setfocus returnendifif empty(thisform.text.value) =messagebox(请输入会员联络,+,出错) thisform.text.setfocus returnendifif empty(thisform.text.value) =messagebox(请输入邮政编码,+,出错) thisform.text.setfocus returnendif*修正数据private nvipid,nvipname,nvipadd,nvipphone,nvipcodenvipid = alltrim(this

52、form.text.value)nvipname = alltrim(thisform.text.value)nvipadd = alltrim(thisform.text.value)nvipphone = alltrim(thisform.text.value)nvipcode = alltrim(thisform.text.value)update vip set vip.vipname = nvipname, vip.vipsex = nvipsex, vip.vipadd = nvipadd, vip.vipphone = nvipphone, vip.vipcode = nvipc

53、ode where vip.vipid = nvipid=messagebox(修正已完成,+,提示)thisform.release删除按钮Click事件程序代码nvipid = alltrim(thisform.text.value)mesbox=messagebox(能否删除 + nvipid + 号会员,+,警告)if mesbox= then returnelse use vip EXCLUSIVE delete from vip where vip.vipid = nvipid pack =messagebox(会员 + nvipid + 曾经删除,+,提示)endifthisfo

54、rm.release会员卡打印表单KFGL_HYDY.SCX程序代码. 打印按钮Click事件程序代码if empty(thisform.text.value) =messagebox(请输入会员编号,+,出错) thisform.text.setfocus returnelse nvipid = thisform.text.valueendifnmesbox=messagebox(能否打印会员卡?,+,会员卡打印)if nmesbox = select vip.vipid,vip.vipname,vip.vipsex,vip.vipadd,vip.vipphone,vip.vipcode f

55、rom vip where vip.vipid = nvipid into cursor vipcard select vipcard report form vipcard.frx to print use in vipcardendif. 输入框Text的Valid事件程序代码that.value = alltrim(that.value)if .not.empty(that.value)select vipgo toplocate for vip.vipid = that.valueif found() thisform.text.value = vip.vipname thisform

56、.text.value = vip.vipsex thisform.text.value = vip.vipadd thisform.text.value = vip.vipphone thisform.text.value = vip.vipcodeelse =messagebox(会员编号不存在,+,出错) thisform.text.value = thisform.text.value = thisform.text.value = thisform.text.value = thisform.text.value = thisform.text.value = endifendift

57、hisform.refresh采购员管理表单KFGL_CGY.SCX程序代码. 表单自定义过程AUTO_BUYERID程序代码select buyerset order to buyeridgo bottomprivate autoid,autoid,autoid,autoidautoid = alltrim(str(val(substr(alltrim(buyer.buyerid),)+,)autoid = len(autoid)if autoid = autoid = + autoidendifautoid = BUY + alltrim(autoid)thisform.text.valu

58、e = autoid. 表单表单保管按钮Click程序代码private nbuyerid,nbuyername,nbuyersex,nbuyerbirthday,nbuyeradd,nbuyerphoneif empty(thisform.text.value) =messagebox(请输入采购员姓名,+,出错) thisform.text.setfocus thisform.refresh returnendifif thisform.optiongroup.value = =messagebox(请选择采购员性别,+,出错) thisform.optiongroup.option.se

59、tfocus thisform.refresh returnendifif thisform.text.value = =messagebox(请输入出生年月,+,出错) thisform.text.setfocus thisform.refresh returnendifif empty(thisform.text.value) then =messagebox(请输入家庭住址,+,出错) thisform.text.setfocus thisform.refresh returnendifif empty(thisform.text.value) then =messagebox(请输入联

60、络,+,出错) thisform.text.setfocus thisform.refresh returnendifnbuyerid = alltrim(thisform.text.value)nbuyername = alltrim(thisform.text.value)if thisform.optiongroup.value = nbuyersex = 男else nbuyersex = 女endifnbuyerbirthday = dtoc(thisform.text.value)nbuyeradd = alltrim(thisform.text.value)nbuyerphone

温馨提示

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

评论

0/150

提交评论