版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《管理信息系统》主讲:李国红E-mail:1/19/20241账表MIS的任务及模块结构系统初始化——会计科目设置记账凭证及相关处理登记总账处理损益表数据自动生成及输出用Excel实现账表MIS第八章用VFP与Excel开发账表MIS1/19/20242一、账表MIS的任务及模块结构(1/2)1.账表MIS的任务:1/19/20243一、账表MIS的任务及模块结构(2/2)2.账务处理系统的模块结构:1/19/20244二、账表MIS的系统初始化1.系统初始化包括设置会计科目和输入期初数。2.建立会计科目表文件kjkm.dbf,表中包括kmbh、kmmc、jdfx、qcye四个字段,数据通过表单界面输入。3.设计表单,含科目编号、科目名称、借贷方向、期初余额等的标签及其文本框。其中期初余额文本框应设置为数值型数据类型的文本框。4.编程。应考虑:科目编号不能为空、科目编号不能重复、多于3位的科目必须有上级科目。5.功能演示6.考虑科目设置的根本过程。7.用VFP实现账表MIS的系统初始化。有关命令及函数。转系统初始化流程1,21/19/20245Kjkm.dbf数据表的结构1/19/20246科目设置用户界面1/19/20247上级科目假设假设:从二级科目开始,某科目的代码去掉最后一位即为该科目的上级科目。一级科目:101、102、103、……二级科目:1021、1022、……三级科目:10211、10212、10213、……余类推。思考:上级科目为去掉代码末二位的情况。二级科目:10201、10202、……三级科目:1020231、1020232、……1/19/20248科目设置的根本过程kmbhkmmcjdfxqcye101现金12000.00102银行存款11200.001/19/20249有关命令及函数、属性、方法setexacton|offuselocatefor……appendblankreplace……with……len()alltrim()subs()或left()space()messagebox()found()对象.value对象.setfocus对象.refresh对象.release1/19/202410a=messagebox("真的想退出吗?",4+48,"提示")单击“是〞,a=6单击“否〞,a=7a=7a=61/19/202411a=messagebox("要提示的信息!",0+48,"提示")a=1转用“VFP实现初始化〞1/19/202412设置会计科目的处理逻辑iflen(allt(thisform.text1.value))<3提示“科目编号位数不能低于3〞else&&kmbh不低于3位usekjkmifkjkm表中有与Text1中匹配的记录提示“科目编号不能重复〞else&&kmbh不低于3位,且不重复iflen(allt(thisform.text1.value))=3在kjkm表中新增一条记录(与表单中对应)else&&kmbh大于3位,且不重复ifkjkm表中有与Text1中的科目编号对应的上级科目在kjkm表中新增一条记录(与表单中对应)else&&kmbh大于3位,且不重复,无上级科目提示“无上级科目,请先输入上级科目〞endifendifendifuseendif1/19/202413会计科目设置
|
系统初始化流程
11/19/202414用VFP实现账表MIS的系统初始化
——“确定〞按钮的Click过程(1/4)setexactonk=0b=0kmbh1=allt(thisform.text1.value)length1=len(allt(thisform.text1.value))ifkmbh1=spac(length1)b=messagebox("科目编号不能为空!",0+48,"提示")k=1endif1/19/202415用VFP实现账表MIS的系统初始化
——“确定〞按钮的Click过程(2/4)usekjkmgotopifk=0locaforallt(kmbh)=kmbh1iffoun()b=messagebox("科目编号不能重复!",0+48,"提示")endifendif1/19/202416用VFP实现账表MIS的系统初始化
——“确定〞按钮的Click过程(3/4)iflength1>3gotop
locaforallt(kmbh)=subs(allt(kmbh1),1,length1-1)if.not.foun()
b=messagebox("无上级科目,请输入上级科目!!",0+48,"提示")endifendififb=0appeblan1/19/202417用VFP实现账表MIS的系统初始化
——“确定〞按钮的Click过程(4/4)replkmbhwithkmbh1replkmmcrepljdfxreplqcyethisform.text1.value=spac(0)thisform.text2.value=spac(0)thisform.text3.value=spac(0)thisform.text4.value=0.00thisform.refreshendifcloseallsetexactoff1/19/202418会计科目设置
|
系统初始化流程
21/19/202419用VFP实现账表MIS的系统初始化
——“确定〞按钮的Click过程(1/4)setexactonk=0kmbh1=allt(thisform.text1.value)length1=len(kmbh1)&&length1=len(allt(thisform.text1.value))iflength1<3=messagebox("科目编号至少为3位!",0+48,"提示")elseusekjkmlocaforallt(kmbh)=kmbh11/19/202420用VFP实现账表MIS的系统初始化
——“确定〞按钮的Click过程(2/4)
iffoun()=messagebox("科目编号不能重复!",0+48,"提示")elseiflength1>3gotoplocaforallt(kmbh)=left(kmbh1,length1-1)if.not.foun()
=messagebox("无上级科目,请输入上级科目!!",0+48,"提示")1/19/202421用VFP实现账表MIS的系统初始化
——“确定〞按钮的Click过程(3/4)elsek=1endifelse&&length1=3k=1endififk=1appeblanreplkmbhwithkmbh1replkmmc
repljdfxreplqcye
1/19/202422用VFP实现账表MIS的系统初始化
——“确定〞按钮的Click过程(4/4)thisform.text1.value=spac(0)thisform.text2.value=spac(0)thisform.text3.value=spac(0)thisform.text4.value=0.00
thisform.refresh&&此句可不要
endifendifuse&&closeall
endifsetexactoff1/19/202423用VFP实现账表MIS的系统初始化
——“取消〞按钮的Click过程thisform.text1.value=spac(0)thisform.text2.value=spac(0)thisform.text3.value=spac(0)thisform.text4.value=0.00thisform.refresh&&此句可不要1/19/202424用VFP实现账表MIS的系统初始化
——“关闭〞按钮的Click过程a=messagebox("真的想退出吗?",4+48,"提示")ifa=6thisform.releaseendififmessagebox("真的想退出吗?",4+48,"提示")=6thisform.releaseendif1/19/202425进一步思考的问题鼠标单击文本框时,文本框内容清空;所输入科目编号无上级科目时,科目编号文本框中自动变为其上级科目编号;使输入的科目编号至少为3位;使用的校验方法:存在校验视觉校验有关a=messagebox(“XXXXXX〞,m+48,“提示〞)1/19/202426b=messagebox("XXXXXXXXXXXX!",m+48,"提示")m=0单击“确定〞,b=1m=1单击“确定〞,b=1单击“取消〞,b=21/19/202427b=messagebox("XXXXXXXXXXXX!",m+48,"提示")m=2单击“终止〞,b=3单击“重试〞,b=4单击“忽略〞,b=5m=5单击“重试〞,b=4单击“取消〞,b=21/19/202428b=messagebox("XXXXXXXXXXXX?",m+48,"提示")m=3单击“是〞,b=6单击“否〞,b=7单击“取消〞,b=2m=4单击“是〞,b=6单击“否〞,b=71/19/202429a=messagebox("XXXXXXXXXXXX",m+48,"提示")单击“确定〞,a=1单击“取消〞,a=2单击“终止〞,a=3单击“重试〞,a=4单击“忽略〞,a=5单击“是〞,a=6单击“否〞,a=71/19/202430本节小结账表MIS的任务及模块结构账表MIS的系统初始化kjkm.dbf表文件输入表单界面会计科目设置流程科目设置的VFP实现进一步思考问题1/19/202431参考资料:李国红:“管理信息系统数据输入模块的设计与实现——兼论会计科目的输入设计〞,《中国管理信息化》2006年第11期,P19-22李国红:“基于Web的会计科目输入处理的设计与实现〞,《中国管理信息化》2023年第13期,P4-81/19/202432本节结束!!!1/19/202433上机安排第8周起,双周周二,系三楼机房,原上课时间。1/19/2024341/19/2024351/19/202436三、记账凭证及相关处理1.概述①记账凭证是登记账薄的直接依据,分为收款凭证、付款凭证和转账凭证3类,但输入记账凭证采用统一的记账凭证的输入屏幕格式。②输入数据的正确是保证账内数据正确的关键,也是由记账凭证正确生成会计报表、账薄数据的关键。2.功能实现①建立记账凭证表文件jzpz.dbf。表中的字段包括rq、pzh、zy、jfbh、dfbh、je、jzfh等。其中jzfh字段的值取0表示未登账,1表示已登账,由程序自动处理;其余字段的值通过表单界面输入。1/19/202437三、记账凭证及相关处理②设计凭证输入表单。表单应含日期、凭证号、摘要、借方编号、贷方编号、金额等的标签及文本框,其中日期和金额文本框应分别设置成日期型和数值型数据的文本框。另外,表单中还应设计能显示借方编号及贷方编号的名称的文本框。③编程。应考虑:输入金额不能为0、输入的借方编号和贷方编号必须在kjkm.dbf存在、表单中相应的数据保存后jzfh字段的值自动置为0。④功能演示。⑤记账凭证输入的根本过程、程序流程。⑥用VFP实现记账凭证处理。根本设置、程序代码。1/19/202438记账凭证数据表的结构1/19/202439记账凭证用户输入界面1/19/202440记账凭证输入根本过程kmbhkmmcqcyejdfx101现金30.001102银行存款900.001111短期投资200.001201短期借款100.002rqpzhzyjfbhdfbhjejzfh10/23/061aaaaa20110220.00010/23/062bbbbbb10211111.0001/19/202441输入记账凭证流程图
转“记账凭证及相关处理〞1/19/202442根本设置日期文本框:设置为日期型,其Value属性设置为=date()。金额文本框:设置为数值型,输入掩码为999999999.99。Text5、Text7:ReadOnly属性设置为.T.-真。表单:init过程的代码为。1/19/202443用VFP实现记账凭证处理
——“确定〞按钮的Click过程(1/4)setexactonifthisform.text8.value=0.00=messagebox(“金额不能为0,重输!",0+48,"提示")elsejfbh1=allt(thisform.text4.value)sele1usekjkmlocaforjfbh1=allt(kmbh)if.not.foun()=messagebox("借方编号错!重输!",0+48,"提示")thisform.text4.setfocus1/19/202444用VFP实现记账凭证处理
——“确定〞按钮的Click过程(2/4)elsedfbh1=allt(thisform.text6.value)gotoplocafordfbh1=allt(kmbh)if.not.foun()=messagebox("贷方编号错!重输!",0+48,"提示")else
1/19/202445用VFP实现记账凭证处理
——“确定〞按钮的Click过程(3/4)sele2usejzpzappeblanreplrqreplpzhreplzyrepljfbhwithjfbh1repldfbhwithdfbh1replrepljzfhwith'0'
1/19/202446用VFP实现记账凭证处理
——“确定〞按钮的Click过程(4/4)thisform.text2.value=spac(0)thisform.text3.value=spac(0)thisform.text4.value=spac(0)thisform.text5.value=spac(0)thisform.text6.value=spac(0)thisform.text7.value=spac(0)thisform.text8.value=0.00thisform.refreshendifendifcloseallendifsetexactoff1/19/202447用VFP实现记账凭证处理
——“取消〞按钮的Click过程thisform.text2.value=spac(0)thisform.text3.value=spac(0)thisform.text4.value=spac(0)thisform.text5.value=spac(0)thisform.text6.value=spac(0)thisform.text7.value=spac(0)thisform.text8.value=0.00thisform.refresh1/19/202448用VFP实现记账凭证处理
——“关闭〞按钮的Click过程a=messagebox("真的想退出吗?",4+48,"提示")ifa=6thisform.releaseendififmessagebox("真的想退出吗?",4+48,"提示")=6thisform.releaseendif1/19/202449用VFP实现记账凭证处理
——“借方编号〞文本框的LostFocus过程setexactonsele1usekjkmiflen(allt(thisform.text4.value))!=0locaforallt(kmbh)=allt(thisform.text4.value)iffoun()thisform.text5.value=kmmcelsethisform.text5.value=space(0)endifendifusesetexactoff1/19/202450用VFP实现记账凭证处理
——“贷方编号〞文本框的LostFocus过程sele1usekjkmiflen(allt(thisform.text6.value))!=0locaforallt(kmbh)==allt(thisform.text6.value)iffoun()thisform.text7.value=kmmcelsethisform.text7.value=space(0)endifendifuse1/19/202451需进一步思考的问题日期文本框的Value属性设置为=date()。Text5、Text7文本框的ReadOnly属性设置为.T.-真。单击借方编号、贷方编号文本框,其中的内容清空。有关凭证号:表单启动后,或单击“确定〞按钮后,如何使焦点直接定位于凭证号文本框?输入的凭证号如有重复,如何处理?可否自动生成凭证号?1/19/202452参阅资料李国红:“记账凭证输入模块的设计与实现〞,《中国管理信息化》2007年第12期,P3-81/19/202453本节小结1/19/202454本节结束!!!1/19/202455四、登记总账处理总账即总分类账,是按照一级科目设立账户,以货币为计量单位,连续核算整个企业各种资金占用、资金来源、资金增减变动及其结余的总括情况的一种分类账。登记总账的依据是:会计科目表〔kjkm.dbf〕、记账凭证表〔jzpz.dbf〕。会计科目:KJKM(kmbh,kmmc,jdfx,qcye)记账凭证:JZPZ(rq,pzh,zy,jfbh,dfbh,je,jzfh)总账:ZZ(rq,zzh,kmbh,kmmc,jffs,dffs,jdfx,ye)功能演示根本过程及程序流程相关命令与函数及程序1/19/202456登记总账根本过程kmbhkmmcqcyejdfx101现金30.001102银行存款900.001109其它货币资金15000.001111短期投资200.001201短期借款100.002rqpzhzyjfbhdfbhjejzfh10/02/08b1aaaaa20110220.00010/13/08b2bbbbbb10211111.00010/29/08b3ccccccccc10110240.000rqzzhkmbhkmmcjffsdffsjdfxye09/29/08汇a1-a2101现金30.0040.00120.0009/29/08汇a1-a2102银行存款100.00200.001800.0010/29/08汇b1-b3101现金40.000.00160.0010/29/08汇b1-b3102银行存款11.0060.001751.0010/29/08汇b1-b3111短期投资0.0011.001189.0010/29/08汇b1-b3201短期借款20.000.00280.001区2区3区转登记总账处理1111/19/202457登记总账流程图
转登记总账处理1/19/202458相关命令与函数setfilterto……setfiltertojzfh="0"setfiltertolen(allt(kmbh))=3setfiltertokmbh1=allt(kmbh)store……to……store0.00tojffs1,dffs1sum……to……for……sumjetojffs1forkmbh1=subs(jfbh,1,3)dowhile……loop〔exit〕……enddogotop、gobottom、skipeof()、found()转登记总账处理1/19/202459登记总账程序djzz.prgsettalkoffmessagebox("正在生成总帐,稍等!",0+48)sele1usekjkmsele2usejzpzsetfilttojzfh="0"gotoppzh1=pzhgobottrq1=rqpzh2=pzhzzh1="汇"+allt(pzh1)+"-"+allt(pzh2)gotop1/19/202460登记总账程序djzz.prgsele3usezzsele1setfilttolen(allt(kmbh))=3gotopdowhile.not.eof()kmbh1=allt(kmbh)kmmc1=kmmcjdfx1=jdfxqcye1=qcyesele2locaforsubs(jfbh,1,3)=allt(kmbh1).or.subs(dfbh,1,3)=allt(kmbh1)if.not.foun()sele1skiploopendif1/19/202461登记总账程序djzz.prgsele2stor0.00tojffs1,dffs1sumjetojffs1forkmbh1=subs(jfbh,1,3)sumjetodffs1forkmbh1=subs(dfbh,1,3)sele3setfilttokmbh1=allt(kmbh)gobottifeof()qcs1=qcye1elseqcs1=yeendififjdfx1='1'ye1=qcs1+jffs1-dffs1elseye1=qcs1-jffs1+dffs1endif1/19/202462登记总账程序djzz.prgappeblanreplrqwithrq1replzzhwithzzh1replkmbhwithkmbh1replkmmcwithkmmc1repljffswithjffs1repldffswithdffs1repljdfxwithjdfx1replyewithye1sele1skipenddsele2repljzfhwith'1'forjzfh='0'closedatamessagebox("生成总帐结束!",48)closeallRETURNSETTALKon1/19/202463参阅资料李国红:“登记总账处理的设计与实现〞,《中国管理信息化》2023年第1期,P4-61/19/202464五、损益表数据自动生成及输出损益表〔syb.dbf〕中的数据由总账表〔zz.dbf〕中取得。总账:ZZ(rq,zzh,kmbh,kmmc,jffs,dffs,jdfx,ye)损益表:SYB(xm,hc,bys,kmbh,bz,ys)损益表数据生成原理:预置syb.dbf表中的有关内容,kmbh长度取1、3、6分别处理。通过VFP6.0的报表生成器完成损益表的输出,也可通过建立查询在屏幕上输出有关内容。1/19/202465rqzzhkmbhkmmcjffsdffsjdfxye5010.00105600.0050245034.120.0050322800.390.005047220.120.00xmhcbyskmbhbzys一、产品销售收入1105600.00501s+减:产品销售成本245034.12502f-减:产品销售费用322800.39503f-减:产品销售税金47220.12504f-二、产品销售利润530545.37h加:其他业务利润60.00511512s+总账表局部数据损益表局部数据1/19/202466损益表数据自动生成及输出N-S图1/19/202467损益表数据自动生成及输出N-S图1/19/202468settalkoffmessagebox("正在自动生成损益表数据,稍等!",48)*sele1sele3usezz*se
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年安全培训道场课题内容核心要点
- 2026年年度工作总结报告通知方法论
- 淄博市周村区2025-2026学年第二学期六年级语文第五单元测试卷部编版含答案
- 安庆市岳西县2025-2026学年第二学期五年级语文第六单元测试卷(部编版含答案)
- 三明市大田县2025-2026学年第二学期六年级语文第五单元测试卷部编版含答案
- 保定市徐水县2025-2026学年第二学期六年级语文第五单元测试卷部编版含答案
- 呼和浩特市回民区2025-2026学年第二学期六年级语文第五单元测试卷部编版含答案
- 安庆市太湖县2025-2026学年第二学期六年级语文第五单元测试卷部编版含答案
- 塔城地区托里县2025-2026学年第二学期六年级语文第五单元测试卷部编版含答案
- 兰州市西固区2025-2026学年第二学期六年级语文第五单元测试卷部编版含答案
- 污水管道及化粪池进行清污、疏通、巡检方案
- 歌曲《wake》中英文歌词对照
- 气管切开病人的护理问题及护理措施
- 2024年贵州省贵阳市中考生物地理合卷试题(含答案逐题解析)
- TB10001-2016 铁路路基设计规范
- 建筑幕墙工程(铝板、玻璃、石材)监理实施细则(全面版)
- 医疗器械公司宣传册
- 2024年中小学教师 高级职称专业水平能力题库 (含答案)
- 信息安全管理体系ISMS建设方案
- 初中八年级-足球-脚内侧传球
- 广西中小学幼儿园教师职业道德负面清单和失范行为处理办法
评论
0/150
提交评论