




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、主主 讲:李国红讲:李国红: lighong6yahoo: lighong6yahoon6.1 账务处置与报表系统设计概述账务处置与报表系统设计概述n6.2 会计科目设置会计科目设置n6.3 记账凭证输入处置记账凭证输入处置n6.4 登记现金日记账登记现金日记账n6.5 登记总账登记总账n6.6 损益表数据自动生成及输出损益表数据自动生成及输出n6.7 账务处置与报表系统的菜单设计账务处置与报表系统的菜单设计n6.8 MIS操作维护设计与实现操作维护设计与实现n6.9 MIS用户登录的设计与实现用户登录的设计与实现第第6 6章章 账务处置与报表系统的设计与实现账务处置与报表系统的设计与实现6.
2、1 账表账表MIS概述概述 (1/4)n1. 1. 账表账表MISMIS的义务的义务: :P153P1536.1 账表账表MIS概述概述 (2/4) 2.账务与报表处置的账务与报表处置的DFD: P1546.1 账表账表MIS概述概述 (3/4)n3. 3. 账务处置系统的主要功能模块账务处置系统的主要功能模块: :6.1 账表账表MIS概述概述(4/4)n4.VFP4.VFP开发环境设置与相关操作开发环境设置与相关操作nVFPVFP系统环境设置系统环境设置n主要操作和常用命令、常用函数主要操作和常用命令、常用函数n工程管理器的运用工程管理器的运用6.2 会计科目设置会计科目设置n6.2.1
3、科目输入科目输入n6.2.2 科目查询与修正科目查询与修正n6.2.3 科目删除科目删除n6.2.4 记录定位及信息提示框记录定位及信息提示框6.2.1 科目输入科目输入1.1.科目输入包括设置会计科目和输入期初数。科目输入包括设置会计科目和输入期初数。2.2.建立会计科目表文件建立会计科目表文件kjkm.dbf,kjkm.dbf,表中包括表中包括kmbhkmbh、kmmckmmc、jdfxjdfx、qcyeqcye四个字段,数据经过表单界面输入。四个字段,数据经过表单界面输入。3.3.设计表单,含科目编号、科目称号、借贷方向、期初余设计表单,含科目编号、科目称号、借贷方向、期初余额等的标签及
4、其文本框。其中期初余额文本框应设置为额等的标签及其文本框。其中期初余额文本框应设置为数值型数据类型的文本框。数值型数据类型的文本框。4.4.编程。应思索:科目编号不能为空位数不低于编程。应思索:科目编号不能为空位数不低于4 4、科、科目编号不能反复、多于目编号不能反复、多于4 4位的科目必需有上级科目。位的科目必需有上级科目。5.5.功能演示功能演示6.6.思索科目输入的根本过程。思索科目输入的根本过程。7.7.用用VFPVFP实现账表实现账表MISMIS的系统初始化。有关命令及函数。的系统初始化。有关命令及函数。转科目输入程序流程Kjkm.dbfKjkm.dbf数据表的构造数据表的构造返科目
5、输入返查询修正返科目删除科目输入用户界面科目输入用户界面上级科目假设n假设:从二级科目开场,某科目的代码去掉最后二位即为该科目的上级科目。n一级科目:1001、1002、1101、n二级科目:100201、100202、n三级科目:10020211、10020212、n余类推。科目输入的根本过程kmbhkmmcjdfxqcye 1001现金现金12000.001002银行存款银行存款11256000.00有关命令及函数、属性、方法有关命令及函数、属性、方法nset exact on | offnusenlocate for nappend blanknreplace with nlen()na
6、lltrim()nsubs() 或或 left()nspace()nmessagebox()nfound()n对象对象.valuen对象对象.setfocusn对象对象.refreshn对象对象.releasea=messagebox(a=messagebox(真的想退出吗真的想退出吗?,4+48,?,4+48,提示提示)n单击单击“是,是,a=6n单击单击“否,否,a=7a=7a=6a=messagebox(a=messagebox(要提示的信息要提示的信息!,0+48,!,0+48,提示提示)a=1转“科目输入会会计计科科目目输输入入程程序序流流程程用用VFPVFP实现账表实现账表MISM
7、IS的科目输入的科目输入“确定按钮的确定按钮的ClickClick过程过程nset exact onnb=0nuse kjkmnkmbh1=allt(thisform.text1.value)nlength1=len(allt(thisform.text1.value)nif length14n b=messagebox(请输入不低于四位的科目编号请输入不低于四位的科目编号!,48)n thisform.text1.setfocusnelsen loca for allt(kmbh)=kmbh1n 辅助功能辅助功能文本框单击被清空文本框单击被清空nText2、Text3的的Click事件事件n
8、This.value=space(0)nText4的的Click事件事件nThis.value=0取消本次输入取消本次输入“取消按钮的取消按钮的ClickClick过程过程nthisform.text1.value=spac(0)nthisform.text2.value=spac(0)nthisform.text3.value=spac(0)nthisform.text4.value=0.00nthisform.text1.setfocus退出输入模块退出输入模块“退出按钮的退出按钮的ClickClick过程过程na=messagebox(真的想退出吗真的想退出吗?,4+48,提示提示)ni
9、f a=6n thisform.releasenendifnif messagebox(真的想退出吗真的想退出吗?,4+48,提示提示) =6n thisform.releasenendif进一步思索的问题n有关有关a=messagebox(a=messagebox(“XXXXXXXXXXXX,m+48,m+48,“提示提示) )n见见(P185-186)(P185-186)(P185-186)(P185-186)b=messagebox(XXXXXXXXXXXX!,m+48,b=messagebox(XXXXXXXXXXXX!,m+48,提示提示)nm=0n单击单击“确定,确定,b=1nm=
10、1n单击单击“确定,确定,b=1n单击单击“取消,取消,b=2(P185-186)(P185-186) b=messagebox(XXXXXXXXXXXX!,m+48,b=messagebox(XXXXXXXXXXXX!,m+48,提示提示)nm=2n单击单击“终止,终止,b=3n单击单击“重试,重试,b=4n单击单击“忽略,忽略,b=5nm=5n单击单击“重试,重试,b=4n单击单击“取消,取消,b=2(P185-186) (P185-186) b=messagebox(XXXXXXXXXXXX?,m+48,b=messagebox(XXXXXXXXXXXX?,m+48,提示提示)nm=3n
11、单击“是,b=6n单击“否,b=7n单击“取消,b=2nm=4n单击“是,b=6n单击“否,b=7(P185-186) (P185-186) a=messagebox(XXXXXXXXXXXX,m+48,a=messagebox(XXXXXXXXXXXX,m+48,提示提示)n单击单击“确定,确定,a=1n单击单击“取消,取消,a=2n单击单击“终止,终止,a=3n单击单击“重试,重试,a=4n单击单击“忽略,忽略,a=5n单击单击“是,是,a=6n单击单击“否,否,a=7本节小结n账表账表MIS的义务及模块构造的义务及模块构造n账表账表MIS的系统初始化的系统初始化nkjkm.dbf表文件表
12、文件n输入表单界面输入表单界面n会计科目设置流程会计科目设置流程n科目设置的科目设置的VFP实现实现n进一步思索问题进一步思索问题n本节终了!6.2.2 科目查询与修正科目查询与修正n1、数据表的构造:同、数据表的构造:同Kjkm.dbfn2、科目查询与修正表单界面设计、科目查询与修正表单界面设计n3、科目查询与修正功能目的、科目查询与修正功能目的n指定查询条件指定查询条件n查询与修正操作查询与修正操作n退出:退出:thisform.releasen4、功能的实现、功能的实现查询与修正表单界面前往指定查询条件 n表单的表单的Load与与Unload事件事件nLoad:定义:定义Public x
13、iangmu(4),bijiao(7)nCombo1与与Combo2关联的数据源关联的数据源nRowSourceType:5-数组数组nRowSource:xiangmu、biaojiaonStyle:2-下拉列表框下拉列表框n表单的表单的Init事件事件 nCombo1和和Combo2的的InteractiveChange事件事件 nText2的数据类型和输入掩码的数据类型和输入掩码 nText1和和Text2的的Click事件事件 查询与修正 nCursor1的的Filter属性属性n表单初始运转后,表格中不含数据:表单初始运转后,表格中不含数据:.F.nCombo2的的ControlSo
14、urce属性属性nbj:“、“=n宏交换宏交换&bj.: 、=n“查询按钮的查询按钮的Click事件事件 n表格只读表格只读n选择不同工程时对应的不同条件选择不同工程时对应的不同条件tjnCursor1的的filter属性设置为属性设置为tjn根据根据Combo1能否能否“期初余额,为期初余额,为Text2或或Text1设置焦点设置焦点n刷新表单刷新表单n本节终了本节终了6.2.3 科目删除科目删除 n1、表的构造:同、表的构造:同Kjkm.dbfn2、界面设计、界面设计n3、相关功能、相关功能n选择列表项选择列表项n删除功能的实现删除功能的实现n实现退出功能实现退出功能n单击单击Te
15、xt1,内容被清空,内容被清空n单击单击Combo1,Text1获得焦点获得焦点删除科目界面下拉列表框,下拉列表框,Style属性为属性为2列表项列表项n表单的表单的Load过程:过程:public shuzu(4) nCombo1下拉列表框对应的数据源类型、数据下拉列表框对应的数据源类型、数据源以及用于保管所选列表项的变量源以及用于保管所选列表项的变量nRowSourceType:5-数组数组nRowSource:shuzunControlSource:xuanxiann表单的表单的Init过程过程nthisformbo1.listindex=2nthisform.text1.setfocu
16、s“删除按钮的删除按钮的Click事件事件ndo casen case xuanxiang=科目编号科目编号 n ziduan=kmbhn case xuanxiang=科目称号科目称号n ziduan=kmmc n case xuanxiang=借贷方向借贷方向n ziduan=jdfxn case xuanxiang=期初余额期初余额n ziduan=qcyenendcase“删除按钮的删除按钮的Click事件事件nuse kjkmnif ziduanqcyen locate for allt(&ziduan)=allt(thisform.text1.value)n if foun
17、d()n dele for allt(&ziduan)=allt(thisform.text1.value)n packn thisform.text1.value=space(0)n elsen messagebox(没找到相关记录没找到相关记录!,0+48,提示提示)n endifnelsen locate for &ziduan.=val(thisform.text1.value)n if found()n dele for &ziduan.=val(thisform.text1.value)n packn thisform.text1.value=space(0
18、)n elsen messagebox(没找到相关记录没找到相关记录!,0+48,提示提示)n endifnendifnusenthisform.text1.setfocus利用比较运算符和宏交换的删除设计利用比较运算符和宏交换的删除设计数据删除数据删除以科目删除为例以科目删除为例n设计表单设计表单nCombo1的设置:的设置:RowsourceType:1-值;值;RowSource:科目编号,科目称号,借贷方向,:科目编号,科目称号,借贷方向,期初余额;期初余额;Style:2-下拉列表框下拉列表框nCombo2的设置:的设置:RowsourceType:1-值;值;RowSource:、
19、=、,;ControlSource:ysf ;Style:2-下拉列表框下拉列表框nForm1的的Init过程代码:过程代码:nThisformmbo1.listindex=2nThisformmbo2.listindex=3nThisform.setfocusn删除按钮的删除按钮的Click过程代码过程代码n宏交换函数:宏交换函数:&变量变量.nuse kjkmndo casen case allt(thisformbo1.value)=科目编号n ziduan=kmbhn case allt(thisformbo1.value)=科目称号n ziduan=kmmcn case al
20、lt(thisformbo1.value)=借贷方向n ziduan=jdfx n case allt(thisformbo1.value)=期初余额n ziduan=qcyenendc nif allt(thisformbo1.value)期初余额n locate for &ziduan.&ysf.allt(thisform.text1.value)n if found()n delete for &ziduan.&ysf.allt(thisform.text1.value)n packn elsen nmessagebox(无符合条件的记录!,0+48,提示
21、)n endifnelse n locate for &ziduan.&ysf.val(thisform.text1.value)n if found()n delete for &ziduan.&ysf.val(thisform.text1.value)n packn elsen messagebox(无符合条件的记录!,0+48,提示)n endif nendifnusen本节终了本节终了6.2.4 记录定位及信息提示框记录定位及信息提示框n记录定位功能的实现记录定位功能的实现n首记录、上一条、下一条、末记录首记录、上一条、下一条、末记录n信息提示框的运用与
22、表示信息提示框的运用与表示nMessagebox(“提示信息提示信息,m+n, “提提示示)6.3 记账凭证输入处置记账凭证输入处置n1.1.概述概述n记账凭证是登记账薄的直接根据,分为收款记账凭证是登记账薄的直接根据,分为收款凭证、付款凭证和转账凭证凭证、付款凭证和转账凭证3 3类,但输入记账凭类,但输入记账凭证采用一致的记账凭证的输入屏幕格式。证采用一致的记账凭证的输入屏幕格式。n输入数据的正确是保证账内数据正确的关键,输入数据的正确是保证账内数据正确的关键,也是由记账凭证正确生成会计报表、账薄数据也是由记账凭证正确生成会计报表、账薄数据的关键。的关键。n功能演示功能演示n2.2.功能实现
23、功能实现n建立记账凭证表文件建立记账凭证表文件jzpzfb.dbfjzpzfb.dbf和和jzpzzb.dbfjzpzzb.dbf。表中的字段包括。表中的字段包括pzhpzh、rqrq、fjzsfjzs、shsh、zdzd;pzhpzh、zyzy、kmkm、jdjd、jeje等。其中等。其中shsh字段字段的值后三位为的值后三位为_#$_#$表示已登账,由程序自动处置;表示已登账,由程序自动处置;其他字段的值经过表单界面输入。其他字段的值经过表单界面输入。6.3 记账凭证输入处置记账凭证输入处置n设计凭证输入表单。主表的数据在表格中输入,附表的设计凭证输入表单。主表的数据在表格中输入,附表的数
24、据在文本框中输入,其中,日期和附件张数文本框应分数据在文本框中输入,其中,日期和附件张数文本框应分别设置成日期型和数值型数据的文本框,别设置成日期型和数值型数据的文本框, 借贷和科目通借贷和科目通达下拉列表选择输入科目必需是达下拉列表选择输入科目必需是kjkm.dbfkjkm.dbf表中存在的科表中存在的科目编号。目编号。n编程。应思索:必需指定科目、借贷;输入金额不能为编程。应思索:必需指定科目、借贷;输入金额不能为0 0;借贷必需平衡;须输入制单人;各命令按钮在必要的;借贷必需平衡;须输入制单人;各命令按钮在必要的时候变为灰色,需求的时候变成可用形状。时候变为灰色,需求的时候变成可用形状。
25、n记账凭证输入的根本过程、程序流程。记账凭证输入的根本过程、程序流程。n用用VFPVFP实现记账凭证处置。预备任务、命令按钮代码、实现记账凭证处置。预备任务、命令按钮代码、其他辅助功能。其他辅助功能。记账凭证数据表的构造记账凭证数据表的构造记账凭证用户输入表单记账凭证用户输入表单记账凭证输入根本过程kmbhkmbhkmmckmmcqcyeqcyejdfxjdfx1001库存现金30.0011002银行存款900.0011403原材料200.0016051其他业务收入100.002pzhrqfjzsshzd001109/28/102zd000001001209/30/101zd000001pzh
26、zykmjdje0011购原材料购原材料1403借借35422.701001贷贷35422.700012其他收入其他收入1001借借1000.0000126051贷贷1000.00输输入入记记账账凭凭证证流流程程图图转“记账凭证及相关处置预备任务n建立数据环境建立数据环境n添加添加kjkm、jzpzfb、jzpzzb、建立表间关系、建立表间关系n文本框、表格与数据表建立关联文本框、表格与数据表建立关联n日期、附件张数文本框设置日期、附件张数文本框设置n日期文本框:日期型,日期文本框:日期型,Value属性为属性为 。n附件张数文本框:数值型,掩码为附件张数文本框:数值型,掩码为99。n辅助功能
27、的实现辅助功能的实现nForm1的的BufferMode:2-开放式。开放式。n命令按钮形状方法程序:命令按钮形状方法程序:buttonstatus1、 buttonstatus2、 buttonstatus3nForm1.load、unload、Init事件事件nText6.InteractiveChange事件事件用用VFPVFP实现记账凭证处置实现记账凭证处置“新增凭证按钮的新增凭证按钮的ClickClick过程过程(1/2)(1/2)nif len(allt(thisform.text6.value)0 &假设假设Text6中输入了凭证号中输入了凭证号n sele (thisf
28、orm.dataenvironment.cursor_JZPZFB.alias) &选择选择jzpzfb任务区任务区n locate for allt(pzh)=allt(thisform.text6.value) &查查jzpzfb中有无匹配凭证号中有无匹配凭证号n if .not.found() &假设输入至假设输入至Text6中的凭证号是一个新的凭证号中的凭证号是一个新的凭证号n thisform.buttonstatus2 &“输入分录、输入分录、“取消按钮有效,其他按钮无取消按钮有效,其他按钮无效效n append blank &在在jzpzf
29、b中追加一条空记录中追加一条空记录n thisform.text1.value=thisform.text6.value & Text1自动取自动取Text6中的值中的值n thisform.text6.value=space(0) & Text6中的内容清空中的内容清空n thisform.text6.readonly=.t. & Text6的的ReadOnly属性设置为属性设置为.t.n thisform.text2.value=date() & Text2中自动取值为系统当前日期中自动取值为系统当前日期n thisform.refresh &刷新表
30、单刷新表单 前往记账凭证及相关处置用用VFPVFP实现记账凭证处置实现记账凭证处置“新增凭证按钮的新增凭证按钮的ClickClick过程过程(2/2)(2/2)nelse &假设输入至假设输入至Text6中的凭证号已存在于中的凭证号已存在于jzpzfb中中n thisform.buttonstatus1 &“新增凭证、新增凭证、“封锁按钮有效,其他按钮无封锁按钮有效,其他按钮无效效n =messagebox(已存在此凭证号的凭证已存在此凭证号的凭证!,48) &提示对话框提示对话框n thisform.text6.setfocus & Text6文本框获得焦点文
31、本框获得焦点n endifnelse &假设假设Text6中还未输入凭证号中还未输入凭证号n thisform.buttonstatus1 &“新增凭证、新增凭证、“封锁按钮有效,其他按钮无封锁按钮有效,其他按钮无效效n =messagebox(请输入新增凭证的凭证号请输入新增凭证的凭证号!,48) &提示对话框提示对话框n thisform.text6.setfocus & Text6文本框获得焦点文本框获得焦点nendif用用VFPVFP实现记账凭证处置实现记账凭证处置“输入分录按钮的输入分录按钮的ClickClick过程过程nsele (thisform.
32、dataenvironment.cursor_JZPZZB.alias)nappe blanknreplace pzh with thisform.text1.valuenthisform.grid1.refreshnthisform.buttonstatus3用用VFPVFP实现记账凭证处置实现记账凭证处置“确定按钮的确定按钮的ClickClick过程过程(1/3)(1/3)n sele (thisform.dataenvironment.cursor_JZPZZB.alias)n set filter to allt(pzh)=allt(thisform.text1.value)n loc
33、ate for len(allt(km)=0n if .not. found()n locate for len(allt(jd)=0n if .not. found()n locate for je=0.00n if .not. found()n sum je to je_jie for allt(jd)=借n sum je to je_dai for allt(jd)=贷n if je_jie=je_dai 用用VFPVFP实现记账凭证处置实现记账凭证处置“确定按钮的确定按钮的ClickClick过程过程(2/3)(2/3)n if len(allt(thisform.text5.valu
34、e)0n sele (thisform.dataenvironment.cursor_JZPZFB.alias)n =tableupdate(.t.)n sele (thisform.dataenvironment.cursor_JZPZZB.alias)n =tableupdate(.t.)n thisform.refreshn thisform.buttonstatus1n thisform.text6.setfocusn thisform.text6.readonly=.f.n elsen =messagebox(请输入制单人请输入制单人! ,48)n thisform.text5.se
35、tfocusn thisform.buttonstatus3n thisform.text6.readonly=.t.n endif 用用VFPVFP实现记账凭证处置实现记账凭证处置“确定按钮的确定按钮的ClickClick过程过程(3/3)(3/3)n elsen =messagebox(借贷不平衡借贷不平衡!,48)n thisform.grid1.column_JE.setfocus n endifn elsen =messagebox(金额不能为金额不能为0!,48)n thisform.grid1.column_JE.setfocusn endifn elsen =messagebo
36、x(指定借或贷指定借或贷!,48)n thisform.grid1.column_JD.setfocusn endifn elsen =messagebox(请指定科目请指定科目!,48)n thisform.grid1.column_KM.setfocusn endif用用VFPVFP实现记账凭证处置实现记账凭证处置“取消按钮的取消按钮的ClickClick过程过程nsele (thisform.dataenvironment.cursor_JZPZFB.alias)n=tablerevert(.t.)nsele (thisform.dataenvironment.cursor_JZPZZB
37、.alias)n=tablerevert(.t.)nthisform.refreshnthisform.buttonstatus1nthisform.text6.readonly=.f.nthisform.text6.setfocus用用VFPVFP实现记账凭证处置实现记账凭证处置“封锁按钮的封锁按钮的ClickClick过程过程na=messagebox(真的想退出吗真的想退出吗?,4+48,提示提示)nif a=6n thisform.releasenendif nif messagebox(真的想退出吗真的想退出吗?,4+48,提示提示)=6n thisform.releasenendi
38、f前往记账凭证及相关处置其他辅助功能n防止手工修正防止手工修正Text1、Text2、Column_PZH、Text4中的值中的值nReadOnly设置为:设置为:.T.-真真n防止对已审核凭证进展更改防止对已审核凭证进展更改nText3、Text5、Grid1的的When过程过程n允许正常输入与修正操作:允许正常输入与修正操作:Text6.GotFocusn防止修正形状下执行新增凭证和封锁操作防止修正形状下执行新增凭证和封锁操作nText3、Text5、textZY、ComboKM、ComboJD、ComboJE的的InteractiveChange事件事件n使输入凭证号更方便使输入凭证号更
39、方便nText6.Click:this.value=space(0)本节小结本节小结n本节终了!6.4 登记现金日记账登记现金日记账n不要求不要求6.5 登记总账处置登记总账处置n总账即总分类账,是按照一级科目设立账户,以货币为计总账即总分类账,是按照一级科目设立账户,以货币为计量单位,延续核算整个企业各种资金占用、资金来源、资量单位,延续核算整个企业各种资金占用、资金来源、资金增减变动及其结余的总括情况的一种分类账。金增减变动及其结余的总括情况的一种分类账。n登记总账的根据是:会计科目表登记总账的根据是:会计科目表kjkm.dbf、记账凭证、记账凭证附表附表jzpzfb.dbf、记账凭证主表
40、、记账凭证主表jzpzzb.dbf。n会计科目:会计科目:KJKM(kmbh,kmmc,jdfx,qcye)n记账凭证附表:记账凭证附表:JZPZFB(pzh, rq,fjzs,sh,zd)n记账凭证主表:记账凭证主表:JZPZZB(pzh,zy,km,jd,je)n总账:总账:ZZ(rq,zzh,kmbh,kmmc,jffs,dffs,jdfx,ye)n功能演示功能演示n根本过程及程序流程根本过程及程序流程n相关命令与函数及程序相关命令与函数及程序登登记记总总账账根根本本过过程程rqpzhzykmjdjeshzd10/13/1010/13/10b1b1aaaaaaaaaa14031403借借
41、20.0020.00sh01sh01zd01zd0110/13/1010/13/10b1b110011001贷贷20.0020.00sh01sh01zd01zd0110/13/1010/13/10b2b2bbbbbbbbbbbbbbbb10011001借借50.0050.00sh01sh01zd01zd0110/13/1010/13/10b2b210021002借借40.0040.00sh01sh01zd01zd0110/13/1010/13/10b2b260016001贷贷90.0090.00sh01sh01zd01zd01rqzzhkmbhkmmcjffsdffsjdfxye08/13/1
42、008/13/10汇汇a1-a2a1-a210011001库存现金库存现金30.0030.0040.0040.001 120.0020.0008/13/1008/13/10汇汇a1-a2a1-a210021002银行存款银行存款100.00100.00200.00200.001 1800.0800.00 009/13/1009/13/10汇汇b1-b2b1-b210011001库存现金库存现金40.0040.000.000.001 160.0060.0009/13/1009/13/10汇汇b1-b2b1-b210021002银行存款银行存款11.0011.0060.0060.001 1751.
43、0751.00 0kmbhkmmcqcyejdfx10011001 库存现金库存现金30.0030.001 110021002 银行存款银行存款900.00900.001 111221122 应收账款应收账款 15000.00 15000.001 11区区zz2区区jzpz3区区kjkm转登记总账处置pzhrqfjzsshzdb110/13/105sh01_#$zd01b210/13/102sh01_#$zd024区区jzpzfb登登记记总总账账流流程程图图转登记总账处置相关命令与函数nset filter to nset filt to len(allt(sh)!=0 and right(a
44、llt(sh),3)!=_#$nset filt to len(allt(kmbh)=4nset filt to allt(kmbh)=kmbh1nset filt to rq=rq1 .and. zzh=zzh1nsum to for nsum je to jffs1 for left(km,4)=kmbh1 .and. jd=借nsum je to dffs1 for left(km,4)=kmbh1 .and. jd=贷ndo whileloopexitenddongo top、go bottom、skipneof()、found()nqcs1=iif(eof(),qcye1,ye)转登
45、记总账处置登记总账程序登记总账程序djzz.prgdjzz.prgnset talk offnset exact onnopen database zwclnsele 1nuse zznsele 2nuse jzpznset filt to len(allt(sh)!=0 and right(allt(sh),3)!=_#$ ngo topnpzh1=pzhngo bottomnpzh2=pzhnzzh1=汇汇+allt(pzh1)+-+allt(pzh2) 登记总账程序登记总账程序djzz.prgdjzz.prgnrq1=rqngo topnsele 3nuse kjkmnset filt
46、to len(allt(kmbh)=4ngo topndo while .not. eof()n kmbh1=allt(kmbh)n kmmc1=kmmcn jdfx1=jdfxn qcye1=qcyen sele jzpzn loca for left(km,4)=allt(kmbh1) 登记总账程序登记总账程序djzz.prgdjzz.prgn if .not. found()n sele kjkmn skipn loopn endif n sum je to jffs1 for left(km,4)=kmbh1 .and. jd=借借n sum je to dffs1 for left(
47、km,4)=kmbh1 .and. jd=贷贷n sele zzn set filt to allt(kmbh)=kmbh1n go bottomn qcs1=iif(eof(),qcye1,ye)n ye1=iif(jdfx1=1,qcs1+jffs1-dffs1,qcs1-jffs1+dffs1) 登记总账程序登记总账程序djzz.prgdjzz.prgn appe blann repl rq with rq1,zzh with zzh1n repl kmbh with kmbh1,kmmc with kmmc1n repl jffs with jffs1,dffs with dffs1n
48、 repl jdfx with jdfx1,ye with ye1n sele kjkmn skipnenddonsele 4 nuse jzpzfbnrepl sh with allt(sh)+_#$ for len(allt(sh)!=0 .and. right(allt(sh),3)!=_#$n=messagebox(生成总账终了生成总账终了!,48,提示提示)nsele zznset filt to rq=rq1 .and. zzh=zzh1nbrow noeditnclose database nset exact offnset talk onnretu 6.6 6.6 损益表数据
49、自动生成及输出损益表数据自动生成及输出n损益表损益表syb.dbf中的数据由总账表中的数据由总账表zz.dbf中获得。中获得。n总账:总账:ZZ(rq,zzh,kmbh,kmmc,jffs,dffs,jdfx,ye)n损益表:损益表:SYB(xm,hc,bys,ljs,kmbh,bz)n损益表数据生成原理:确定会计期间,预置损益表数据生成原理:确定会计期间,预置syb.dbf表中的有关内容,表中的有关内容,kmbh长度取长度取1、4、8分分别处置,由程序根据总账表的数据自动生成损益别处置,由程序根据总账表的数据自动生成损益表文件中的本月数和本年累计数。表文件中的本月数和本年累计数。n经过经过V
50、FP6.0的报表生成器完成损益表的输出,也的报表生成器完成损益表的输出,也可经过建立查询在屏幕上输出有关内容。可经过建立查询在屏幕上输出有关内容。rqzzhkmbhkmmcjffsdffsjdfxye6001主营业务收入主营业务收入0.0080600.006051其他业务收入其他业务收入0.001000.006601销售费用销售费用12450.370.006602管理费用管理费用2567.250.00 xmhcbysljskmbhbz一、营业收入一、营业收入181600.0081600.00 60016051d减:营业成本减:营业成本20.000.00 64016402j 营业税金及附加营业税
51、金及附加30.000.00 6403j 销售费用销售费用412450.3712450.37 6601j 管理费用管理费用52567.252567.25 6602j 财务费用财务费用60.000.00 6603j 资产减值损失资产减值损失70.000.00 6701j加:公允价值变动收益加:公允价值变动收益80.000.00 6101d 投资收益投资收益90.000.00 6111d二、营业利润二、营业利润1066582.3866582.38 h总账表部分数据总账表部分数据损益表部分数据损益表部分数据生成损益表表单生成损益表表单nuse zzngo bottnthisform.text1.val
52、ue=allt(str(year(rq)nthisform.text2.value=allt(str(month(rq)nuse表单的表单的Init过程代码过程代码:损损益益表表数数据据自自动动生生成成及及输输出出N-N-S S图图生成损益表代码nset talk offnset exact onnset safety offnsele 1nuse zznset filter to year(rq)=val(thisform.text1.value) and month(rq)=val(thisform.text2.value)ngo topnsele 2nuse sybnrepl all b
53、ys with 0,ljs with 0ngo top &以便从损益表的首记录开场,以下求本月数n do while .not. eof()n kmbh1=allt(kmbh) &kmbh1为为syb表当前记录的表当前记录的kmbh(去掉前后空格去掉前后空格)n length=len(kmbh1) &length为为syb表当前记录的表当前记录的kmbh去掉前后空格后去掉前后空格后的长度的长度n do casen case length=8n declare sz(2) &数组数组sz表示本月数表示本月数n sele 1 &总账表任务区总账表任务区n i
54、=1n do while ibz=d,dffs-jffs,jffs-dffs)n elsen sz(i)=0n endifn i=i+1n enddon sele 2 &损益表任务区损益表任务区n repl bys with sz(1)+sz(2)n case length=4n sele 1 &总账表任务区总账表任务区n loca for allt(kmbh)=kmbh1n if found()n bys1=iif(b-bz=d,dffs-jffs,jffs-dffs)n elsen bys1=0n endifn sele 2 &损益表任务区损益表任务区n repl
55、bys with bys1n case length=1n r=recn()n sum bys to bys1 for bz=dn sum bys to bys2 for bz=jn go rn repl bys with bys1-bys2n endcn skipnendd n go top &以便从损益表的首记录开场以便从损益表的首记录开场,以下求本年累计数以下求本年累计数ndo while .not. eof()n kmbh1=allt(kmbh) &kmbh1为为syb表当前记录的表当前记录的kmbh(去掉前后空格去掉前后空格)n length=len(kmbh1) &
56、amp;length为为syb表当前记录的表当前记录的kmbh去掉前后空格后的长度去掉前后空格后的长度n do casen case length=8n declare sz1(2) &数组数组sz1表示本年累计数表示本年累计数n sele 1 &总账表任务区总账表任务区n i=1n do while i=2n set filter to year(rq)=val(thisform.text1.value) .and.;n month(rq)=val(thisform.text2.value) .and. allt(kmbh)=subs(kmbh1,4*i-3,4)n go b
57、ottomn sz1(i)=iif(eof(),0,ye)n i=i+1n enddon sele 2 &损益表任务区损益表任务区n repl ljs with sz1(1)+sz1(2) o case length=4o sele 1 &总账表任务区o set filter to year(rq)=val(thisform.text1.value) .and.;o month(rq)=val(thisform.text2.value) .and. allt(kmbh)=kmbh1o go bottomo ljs1=iif(eof(),0,ye)o sele 2 &损益
58、表任务区o repl ljs with ljs1o case length=1o r=recn()o sum ljs to ljs1 for bz=do sum ljs to ljs2 for bz=jo go ro repl ljs with ljs1-ljs2o endco skipoenddocopy to syb+allt(thisform.text1.value)+-+allt(thisform.text2.value)+.dbf;ofields xm,hc,bys,ljs &生成的损益表以类似于syb2021-1.dbf的方式保管omessagebox(生成损益表终了!,4
59、8,提示)osele xm as 工程,hc as 行次,bys as 本月数,ljs as 本年累计数 from;osyb+allt(thisform.text1.value)+-+allt(thisform.text2.value)+.dbfoclose databasesoset safety onoset exact offoset talk on6.7 账务处置与报表系统的菜单设计账务处置与报表系统的菜单设计o1、功能模块、功能模块o2、菜单规划与设计、菜单规划与设计o2、菜单规划与设计、菜单规划与设计o菜单设计o2、菜单规划与设计、菜单规划与设计o2、菜单规划与设计、菜单规划与设计
60、o3、报表设计、报表设计o创建与修正报表:创建与修正报表:modi report 报表文件名报表文件名o预览报表:预览报表:report form 报表主名报表主名.frx for 条件条件 previewo打印报表:打印报表:report form 报表主名报表主名.frx for 条件条件 to printero4、查询设计、查询设计o创建与修正查询:创建与修正查询:modi query 查询文件名查询文件名o执行查询:执行查询:do 查询主文件名查询主文件名.qpro5、菜单的运转、菜单的运转o执行执行菜单,生成菜单,生成:生成扩展名为:生成扩展名为.mpr的可执行菜单文的可执行菜单文件件o执行菜单:执行菜单:Do 菜单文件主名菜单文件主名.mpr6.8 MIS操作维护设计与实现操作维护设计与实现o1、在、在zwcl数据库中建立数据库中建立mima.dbf表表字段名字段名类型类型宽度宽度含义含义czy字符型字符型16操作员操作员mm字符型字符型16密码密码前往:用户登录o2、添加操作员、添加操作员o设计表单设计表单oText2、Text3的的PasswordChar:*o退出:退出:this
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度包雪场地积雪清理与运输合同
- 二零二五年度电子商务平台广告发布与推广服务合同
- 二零二五年度保温材料销售渠道拓展合同
- 二零二五年度BIM技术在建筑项目协同施工合同样本
- 二零二五年度白酒企业跨界合作销售合同
- 二零二五版绿色环保布草洗涤合同
- 2025版插班生教育辅导与心理支持服务合同
- 二零二五年度商业综合体安全巡逻员聘用及绩效考核合同
- 2025版海关监管区保安服务合同终止及货物通关协议
- 2025版知识产权侵权保证合同模板范本
- 急性心力衰竭中国指南(2022-2024)解读
- 铝单板雨棚施工方案
- 《心脑血管疾病防治》课件
- 叠衣服课件小学生
- 【MOOC期末】《电子技术实习SPOC》(北京科技大学)期末慕课答案
- 特征值稳定性证明-洞察分析
- 智慧城市建设投标实施方案
- UL4703标准中文版-2020光伏线UL中文版标准
- 设备部班组安全培训
- 2024安置点生活垃圾清运合同书
- VMware双活数据心解决方案详解
评论
0/150
提交评论