收藏 分销(赏)

附录新华书店进销存管理系统部分程序源代码样本.doc

上传人:快乐****生活 文档编号:3000171 上传时间:2024-06-12 格式:DOC 页数:45 大小:82.04KB 下载积分:12 金币
下载 相关 举报
附录新华书店进销存管理系统部分程序源代码样本.doc_第1页
第1页 / 共45页
附录新华书店进销存管理系统部分程序源代码样本.doc_第2页
第2页 / 共45页


点击查看更多>>
资源描述
附录2 新华书店进销存管理系统部分程序源代码 1、 主程序MAIN.PRG程序代码 SET DEFAULT TO C:\毕业设计 PUBLIC nkfgl,nxsgl,ncggl,nkcgl,nxtgl STORE .f. TO nkfgl,nxsgl,ncggl,nkcgl,nxtgl PUBLIC nname,ndepartment STORE "" TO nname,ndepartment Do Form loginf Read Events Do Form main Read Events Quit 2、 主表单MAIN.SCX代码 2.1 表单Init过程程序代码 do mmenu.mpr with this,.T. this.label2.caption = nname this.label4.caption = ndepartment 3、 系统登入表单LOGINF.SCX代码 3.1 表单登入按钮Click事件程序代码 SELECT user GO TOP *检验用户名和密码是否输入 If empty(thisform.text1.value) then thisform.label3.caption = "请输入用户名" return else if empty(thisform.text2.value) then thisform.label3.caption = "请输入密码" return endif endif *操作USER表,查询满足条件统计 locate for name = alltrim(thisform.text1.value) if !found() thisform.label3.caption="用户不存在" return else if user.password != alltrim(thisform.text2.value) then thisform.label3.caption="密码错误" return endif endif nname = user.name ndepartment = user.department nkfgl = user.kfgl nxsgl = user.xsgl ncggl = user.cggl nkcgl = user.kcgl nxtgl = user.xtgl thisform.release clear events 4、 系统管理表单XTGLF.SCX代码 4.1 表单Init过程程序代码 thisform.text1.enabled = .f. thisform.text2.enabled = .f. thisform.text3.enabled = .f. bo1.enabled = .f. thisform.check1.enabled = .f. thisform.check2.enabled = .f. thisform.check3.enabled = .f. thisform.check4.enabled = .f. thisform.check5.enabled = .f. thisform.label5.visible = .f. thisform.text3.visible = .f. mand10.enabled = .f. mand11.enabled = .f. thisform.dis_record thisform.dis_reccommand 4.2 表单自定义过程DIS_RECORD程序代码 PUBLIC newcommand STORE .f. TO newcommand if reccount("user") = 0 thisform.text1.value = "" thisform.text2.value = "" bo1.value = "" thisform.check1.value = 0 thisform.check2.value = 0 thisform.check3.value = 0 thisform.check4.value = 0 thisform.check5.value = 0 else thisform.text1.value = user.name thisform.text2.value = user.password bo1.value = user.department if user.kfgl then thisform.check1.value = 1 else thisform.check1.value = 0 endif if user.xsgl then thisform.check2.value = 1 else thisform.check2.value = 0 endif if user.cggl then thisform.check3.value = 1 else thisform.check3.value = 0 endif if user.kcgl then thisform.check4.value = 1 else thisform.check4.value = 0 endif if user.xtgl then thisform.check5.value = 1 else thisform.check5.value = 0 endif endif thisform.refresh 4.3 表单自定义过程DIS_RECCOMMAND程序代码 private n store 0 to n n = reccount("user") if n=1 .or. n=0 then mand1.enabled = .f. mand2.enabled = .f. mand3.enabled = .f. mand4.enabled = .f. else if recno("user")=1 then mand1.enabled = .f. mand2.enabled = .f. mand3.enabled = .t. mand4.enabled = .t. else if recno("user")=n then mand1.enabled = .t. mand2.enabled = .t. mand3.enabled = .f. mand4.enabled = .f. else mand1.enabled = .t. mand2.enabled = .t. mand3.enabled = .t. mand4.enabled = .t. endif endif endif thisform.refresh 4.4 表单保留按钮Click事件程序代码 if empty(thisform.text1.value) then =messagebox("请输入用户名",0+48+0,"犯错") thisform.text1.setfocus thisform.refresh return endif if empty(thisform.text2.value) then =messagebox("请输入密码",0+48+0,"犯错") thisform.text2.setfocus thisform.refresh return endif if .not.(alltrim(thisform.text2.value) == alltrim(thisform.text3.value)) then =messagebox("密码反复错误,请重新输入",0+48+0,"犯错") thisform.text2.value = "" thisform.text3.value = "" thisform.text2.setfocus thisform.refresh return endif if empty(bo1.value) then =messagebox("请选择所属部门",0+48+0,"犯错") bo1.setfocus thisform.refresh return endif if thisform.check1.value=0.and.thisform.check2.value=0.and.thisform.check3.value=0.and.thisform.check4.value=0.and.thisform.check5.value=0 then =messagebox("最少选择一个用户权限",0+48+0,"犯错") thisform.check1.setfocus thisform.refresh return endif if thisform.check1.value=1.and.thisform.check2.value=1.and.thisform.check3.value=1.and.thisform.check4.value=1.and.thisform.check5.value=1 then mesbox=messagebox("此用户将含有全部权限,请确定",4+48+0,"警告") if mesbox=7 then thisform.check1.setfocus thisform.refresh return endif endif *用户权限处理 PRIVATE nname,npassword,ndepartment,nkf,nxs,ncg,nkc,nxt nname = alltrim(thisform.text1.value) npassword = alltrim(thisform.text2.value) ndepartment = alltrim(bo1.value) if thisform.check1.value = 1 then nkf = .t. else nkf = .f. endif if thisform.check2.value = 1 then nxs = .t. else nxs = .f. endif if thisform.check3.value = 1 then ncg = .t. else ncg = .f. endif if thisform.check4.value = 1 then nkc = .t. else nkc = .f. endif if thisform.check5.value = 1 then nxt = .t. else nxt = .f. endif *判定是新统计保留还是修改统计 If newcommand then && newcommand = .t. 是新统计保留 locate for user.name=alltrim(thisform.text1.value) if found() then =messagebox("用户已经存在",0+48+0,"犯错") thisform.text1.setfocus thisform.refresh return endif *数据表user保留统计 insert into user(name,password,department,kfgl,xsgl,cggl,kcgl,xtgl) values (nname,npassword,ndepartment,nkf,nxs,ncg,nkc,nxt) =messagebox("保留完成",0+48+0,"提醒") else update user set password= npassword,department=ndepartment,kfgl=nkf,xsgl=nxs,cggl=ncg,kcgl=nkc,xtgl=nxt where name= nname =messagebox("修改完成",0+48+0,"提醒") endif *表单初始化 thisform.text1.enabled = .f. thisform.text2.enabled = .f. thisform.text3.enabled = .f. bo1.enabled = .f. thisform.check1.enabled = .f. thisform.check2.enabled = .f. thisform.check3.enabled = .f. thisform.check4.enabled = .f. thisform.check5.enabled = .f. mand1.enabled = .t. mand2.enabled = .t. mand3.enabled = .t. mand4.enabled = .t. mand5.enabled = .t. mand6.enabled = .t. mand7.enabled = .t. mand8.enabled = .t. mand9.enabled = .t. mand10.enabled =.f. mand11.enabled =.f. mand12.enabled = .t. thisform.label5.visible = .f. thisform.text3.visible = .f. thisform.dis_reccommand thisform.dis_record newcommand = .f. thisform.refresh 4.5 表单浏览按钮Click事件程序代码 DEFINE WINDOW browsewin FROM 1,1 TO 30,80 noFLOAT CLOSE nominimize nogrow nozoom system brow fields name,department,kfgl,xsgl,cggl,kcgl window browsewin noappend nomodify nodelete release window browsewin 5、 图书管理表单TSGL.SCX代码 5.1 自定义过程AUTO_BOOKID程序代码 select book set order to bookid go bottom private autoid1,autoid2,autoid3,autoid4 autoid1 = alltrim(str(val(substr(alltrim(book.bookid),2,6))+1,6,0)) autoid2 = len(autoid1) if autoid2 != 6 then for n = autoid2 to 5 autoid1 = "0" + autoid1 endfor endif autoid4 = "B" + alltrim(autoid1) thisform.text1.value = autoid4 5.2 新建按钮Click事件程序代码 thisform.text2.enabled = .t. thisform.text3.enabled = .t. thisform.text4.enabled = .t. thisform.text5.enabled = .t. thisform.text6.enabled = .t. bo1.enabled = .t. thisform.text7.enabled = .t. thisform.text8.enabled = .t. mand1.enabled = .f. mand2.enabled = .f. mand3.enabled = .f. mand4.enabled = .f. mand5.enabled = .f. mand6.enabled = .f. mand7.enabled = .f. mand8.enabled = .f. mand9.enabled = .f. mand10.enabled =.t. mand11.enabled =.t. mand12.enabled = .t. thisform.text2.value = "" thisform.text3.value = "" thisform.text4.value = "" thisform.text5.value = "" thisform.text6.value = "" bo1.value = "" thisform.text7.value = 0 thisform.text8.value = 0 thisform.auto_bookid thisform.text2.setfocus thisform.newcommand = .t. thisform.refresh 5.3 删除按钮Click事件程序代码 if reccount("book")=1 then =messagebox("只有一条统计,不能删除",0+16+0,"犯错") return else nbookid = alltrim(thisform.text1.value) nbookname = alltrim(thisform.text2.value) mesbox=messagebox("是否删除"+nbookid+"号图书",4+48+0,"警告") if mesbox=7 then return else use book EXCLUSIVE delete from book where bookid=nbookid pack =messagebox(nbookid+"图书已经删除",0+48+0,"提醒") endif endif thisform.dis_record thisform.dis_reccommand thisform.grid1.recordsource = "book" thisform.refresh 5.4 保留按钮Click事件程序代码 if empty(thisform.text2.value) =messagebox("请输入书名",0+48+0,"犯错") thisform.text2.setfocus thisform.refresh return endif if empty(thisform.text3.value) =messagebox("请输入书号",0+48+0,"犯错") thisform.text3.setfocus thisform.refresh return endif if empty(thisform.text4.value) =messagebox("请输入出版社",0+48+0,"犯错") thisform.text4.setfocus thisform.refresh return endif if empty(thisform.text5.value) =messagebox("请输入作者信息",0+48+0,"犯错") thisform.text5.setfocus thisform.refresh return endif if empty(bo1.value) =messagebox("请选择图书类型",0+48+0,"犯错") bo1.setfocus thisform.refresh return endif if thisform.text7.value = 0 =messagebox("请输入价格",0+48+0,"犯错") bo1.setfocus thisform.refresh return endif PRIVATE nbookid,nbookname,nbookno,nbookphouse,nbookwriter,nbookcd,nbookclass,nbookprice,nbookdiscount nbookid = alltrim(thisform.text1.value) nbookname = alltrim(thisform.text2.value) nbookno = alltrim(thisform.text3.value) nbookphouse = alltrim(thisform.text4.value) nbookwriter = alltrim(thisform.text5.value) nbookcd = alltrim(thisform.text6.value) nbookclass = alltrim(bo1.value) nbookprice = thisform.text7.value nbookdiscount = thisform.text8.value *判定是新统计保留还是修改统计 If thisform.newcommand then && newcommand = .t. 是新统计保留 *数据表book保留统计 insert into book (bookid,bookname,bookno,bookphouse,bookwriter,bookcd,bookclass,bookprice,bookdiscount) values (nbookid,nbookname,nbookno,nbookphouse,nbookwriter,nbookcd,nbookclass,nbookprice,nbookdiscount) =messagebox("保留完成",0+48+0,"提醒") else update book set bookname=nbookname,bookno=nbookno,bookphouse=nbookphouse,bookwriter=nbookwriter,bookcd=nbookcd,bookclass=nbookclass,bookprice=nbookprice,bookdiscount=nbookdiscount where bookid=nbookid =messagebox("修改完成",0+48+0,"提醒") endif *表单初始化 thisform.text2.enabled = .f. thisform.text3.enabled = .f. thisform.text4.enabled = .f. thisform.text5.enabled = .f. thisform.text6.enabled = .f. bo1.enabled = .f. thisform.text7.enabled = .f. thisform.text8.enabled = .f. mand5.enabled = .t. mand6.enabled = .t. mand7.enabled = .t. mand8.enabled = .t. mand9.enabled = .t. mand10.enabled =.f. mand11.enabled =.f. mand12.enabled = .t. thisform.dis_record thisform.dis_reccommand thisform.newcommand = .f. thisform.refresh 5.5 浏览按钮Click事件程序代码 DEFINE WINDOW browsewin FROM 1,1 TO 30,160 noFLOAT CLOSE nominimize nogrow nozoom system brow fields bookid,bookname,bookno,bookphouse,bookwriter,bookcd,bookclass,bookprice,bookdiscount window browsewin noappend nomodify nodelete release window browsewin 6、 会员输入表单KFGL_HYSR.SCX程序代码 6.1 自定义过程AUTO_VIPID程序代码 select vip set order to vipid go bottom private autoid1,autoid2,autoid3,autoid4 autoid1 = alltrim(str(val(substr(alltrim(vip.vipid),2,6))+1,6,0)) autoid2 = len(autoid1) if autoid2 != 6 then for n = autoid2 to 5 autoid1 = "0" + autoid1 endfor endif autoid4 = "V" + alltrim(autoid1) thisform.text1.value = autoid4 6.2 保留按钮Click事件程序代码 *输入数据校验 if empty(thisform.text2.value) =messagebox("请输入会员姓名",0+16+0,"犯错") thisform.text2.setfocus return endif if thisform.optiongroup1.value = 0 =messagebox("请选择会员性别",0+16+0,"犯错") thisform.optiongroup1.option1.setfocus return else private nvipsex store "" to nvipsex if thisform.optiongroup1.value = 1 store "男" to nvipsex else stor "女" to nvipsex endif endif if empty(thisform.text4.value) =messagebox("请输入会员联络地址",0+16+0,"犯错") thisform.text4.setfocus return endif if empty(thisform.text5.value) =messagebox("请输入会员联络电话",0+16+0,"犯错") thisform.text5.setfocus return endif if empty(thisform.text6.value) =messagebox("请输入邮政编码",0+16+0,"犯错") thisform.text6.setfocus return endif *保留数据 private nvipid,nvipname,nvipadd,nvipphone,nvipcode nvipid = alltrim(thisform.text1.value) nvipname = alltrim(thisform.text2.value) nvipadd = alltrim(thisform.text4.value) nvipphone = alltrim(thisform.text5.value) nvipcode = alltrim(thisform.text6.value) insert into vip (vipid,vipname,vipsex,vipadd,vipphone,vipcode,vipsum,vipdiscount) values (nvipid,nvipname,nvipsex,nvipadd,nvipphone,nvipcode,0,0) =messagebox("保留成功",0+48+0,"提醒") nmesbox=messagebox("是否打印会员卡?",4+32+0,"会员卡打印") if nmesbox = 6 select vip.vipid,vip.vipname,vip.vipsex,vip.vipadd,vip.vipphone,vip.vipcode from vip where vip.vipid = nvipid into cursor vipcard select vipcard report form vipcard.frx to print use in vipcard endif thisform.auto_vipid mand2.click 6.3 清除按钮Click事件程序代码 thisform.text2.value = "" thisform.optiongroup1.value = 0 thisform.text4.value = "" thisform.text5.value = "" thisform.text6.value = "" thisform.text1.setfocus thisform.refresh 7、 会员查询表单KFGL_HYCX.SCX程序代码 7.1 表单自定义过程DIS_GRID程序代码 thisform.grid1.readonly = .t. thisform.grid1.columncount = 8 thisform.grid1.column1.header1.caption = "会员编号" thisform.grid1.column1.width = 80 thisform.grid1.column1.movable = .f. thisform.grid1.column1.resizable = .f. thisform.grid1.column2.header1.caption = "会员姓名" thisform.grid1.column2.width = 80 thisform.grid1.column2.movable = .f. thisform.grid1.column2.resizable = .f. thisform.grid1.column3.header1.caption = "会员性别" thisform.grid1.column3.width = 80 thisform.grid1.column3.movable = .f. thisform.grid1.column3.resizable = .f. thisform.grid1.column4.header1.caption = "联络地址" thisform.grid1.column4.width = 250 thisform.grid1.column4.movable = .f. thisform.grid1.column4.resizable = .f. thisform.grid1.column5.header1.caption = "联络电话" thisform.grid1.column5.width = 80 thisform.grid1.column5.movable = .
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服