论文部分内容阅读
[摘 要] 本文在阐述总账与损益表结构的基础上,分析用Visual FoxPro设计与编制损益表的基本原理,探讨实现损益表信息处理的过程和方法,并提供了相应的程序代码。
[关键词] 损益表;信息处理;Visual FoxPro程序设计
[中图分类号]F232[文献标识码]A[文章编号]1673-0194(2008)05-0011-03
损益表也被称为利润表,它是报告企业经营成果信息的工具,其格式因企业而异。这里以某企业月度损益表的编制为基础,以Visual FoxPro(简称VFP)为数据库管理系统,分析与说明多步骤式企业损益表的编制原理和实现方法,文中所述程序代码已通过上机验证。
1 数据表及其结构设计
一般来说,损益表中包括项目、行次、本月数、本年累计数等信息内容,多步骤式损益表是运用会计规则中的配比规则,在损益表中分别列示出营业收入、营业利润、利润总额及净利润,从而分步骤计算出企业在某个会计期间内的损益。
由于损益表中的信息是根据总账中的损益类数据编制和生成的,因此,必须明确总账与损益表的数据结构。假定总账的结构为zz.dbf{rq(D8),zzh(C11),kmbh(C4),kmmc(C16),jffs(N12.2),dffs(N12.2),jdfx(C1),ye(N12.2)},字段rq、zzh、kmbh、kmmc、jffs、dffs、jdfx、ye分别对应于日期、总账号、科目编号、科目名称、借方发生额、贷方发生额、借贷方向、余额,D、C、N分别表示日期型、字符型、数值型,数字表示字段宽度,小数点右边的数字表示小数位数,zz.dbf是总账的文件名。
根据实际需要,将损益表的结构设计为syb.dbf{xm(C46),hc(C2),bys(N12.2),ljs(N12.2),kmbh(C8),bz(C1)},字段xm、hc、bys、ljs、kmbh、bz分别表示项目、行次、本月数、本年累计数、科目编号、标志,syb.dbf是损益表的文件名。在syb.dbf中设置kmbh与bz字段主要是为了便于程序的设计。
2 编制损益表的基本原理
2. 1预置syb.dbf中相关字段的信息内容
损益表中的xm(项目)、hc(行次)、kmbh(科目编号)、bz(标志)需要预置,如表1所示。其中,“营业收入”项目的kmbh由总账中主营业务收入的科目编号6001和其他业务收入的科目编号6051构成,“营业成本”项目的kmbh由总账中主营业务成本的科目编号6401和其他业务支出的科目编号6402构成,其他由4位数字组成的kmbh与总账中对应科目的科目编号一致。需要引起注意的是,预置科目编号时一定要与总账中使用的科目编号一致,这里采用了2007新会计制度科目表中对应的科目编号。
此表单运行后,Text1、Text2文本框将直接显示总账中最近一次登账所属的年份和月份,用户可以修改或不修改此会计期间,单击“确定”按钮就自动生成并保存相应会计期间的损益表(其文件名以类似于syb2007-7.dbf的形式保存,表示损益表的会计期间是2007年7月),单击“退出”按钮则释放表单。
3. 2表单的初始化过程及代码设计
为使表单启动后,Text1、Text2中直接显示与总账中最后一条记录的rq(日期)对应的年份和月份,可在表单的Init(初始化)过程中打开总账表,然后定位于末记录,再将Text1、Text2的Value属性分别设置为末记录对应rq中的年份和月份(注意转换为字符型数据并去掉前导及后导空格),最后需关闭总账表。表单的Init过程对应的VFP程序代码如下:
use zz
go bott
thisform.text1.value=allt(str(year(rq)))
thisform.text2.value=allt(str(month(rq)))
use
3. 3“确定”按钮的Click过程及代码设计
3. 3. 1“确定”按钮的Click过程
表单运行期间,单击“确定”按钮时,由VFP程序自动生成指定会计期间的损益表。为防止命令执行的结果传送到相关的窗口或界面,需使用set命令将talk设置为off。为使生成并保存某会计期间的损益表时,能直接覆盖可能已存在的该会计期间的损益表文件名,也需要使用set命令将safety设置为off。为生成符合要求的损益表,可在1区打开总账表,在2区打开损益表,具体过程如图2所示。
3. 3. 2“确定”按钮的Click过程代码
依据图2所述的生成损益表的N-S图,“确定”按钮的Click过程对应的VFP程序代码如下(程序中的分号为续行符,
[关键词] 损益表;信息处理;Visual FoxPro程序设计
[中图分类号]F232[文献标识码]A[文章编号]1673-0194(2008)05-0011-03
损益表也被称为利润表,它是报告企业经营成果信息的工具,其格式因企业而异。这里以某企业月度损益表的编制为基础,以Visual FoxPro(简称VFP)为数据库管理系统,分析与说明多步骤式企业损益表的编制原理和实现方法,文中所述程序代码已通过上机验证。
1 数据表及其结构设计
一般来说,损益表中包括项目、行次、本月数、本年累计数等信息内容,多步骤式损益表是运用会计规则中的配比规则,在损益表中分别列示出营业收入、营业利润、利润总额及净利润,从而分步骤计算出企业在某个会计期间内的损益。
由于损益表中的信息是根据总账中的损益类数据编制和生成的,因此,必须明确总账与损益表的数据结构。假定总账的结构为zz.dbf{rq(D8),zzh(C11),kmbh(C4),kmmc(C16),jffs(N12.2),dffs(N12.2),jdfx(C1),ye(N12.2)},字段rq、zzh、kmbh、kmmc、jffs、dffs、jdfx、ye分别对应于日期、总账号、科目编号、科目名称、借方发生额、贷方发生额、借贷方向、余额,D、C、N分别表示日期型、字符型、数值型,数字表示字段宽度,小数点右边的数字表示小数位数,zz.dbf是总账的文件名。
根据实际需要,将损益表的结构设计为syb.dbf{xm(C46),hc(C2),bys(N12.2),ljs(N12.2),kmbh(C8),bz(C1)},字段xm、hc、bys、ljs、kmbh、bz分别表示项目、行次、本月数、本年累计数、科目编号、标志,syb.dbf是损益表的文件名。在syb.dbf中设置kmbh与bz字段主要是为了便于程序的设计。
2 编制损益表的基本原理
2. 1预置syb.dbf中相关字段的信息内容
损益表中的xm(项目)、hc(行次)、kmbh(科目编号)、bz(标志)需要预置,如表1所示。其中,“营业收入”项目的kmbh由总账中主营业务收入的科目编号6001和其他业务收入的科目编号6051构成,“营业成本”项目的kmbh由总账中主营业务成本的科目编号6401和其他业务支出的科目编号6402构成,其他由4位数字组成的kmbh与总账中对应科目的科目编号一致。需要引起注意的是,预置科目编号时一定要与总账中使用的科目编号一致,这里采用了2007新会计制度科目表中对应的科目编号。
此表单运行后,Text1、Text2文本框将直接显示总账中最近一次登账所属的年份和月份,用户可以修改或不修改此会计期间,单击“确定”按钮就自动生成并保存相应会计期间的损益表(其文件名以类似于syb2007-7.dbf的形式保存,表示损益表的会计期间是2007年7月),单击“退出”按钮则释放表单。
3. 2表单的初始化过程及代码设计
为使表单启动后,Text1、Text2中直接显示与总账中最后一条记录的rq(日期)对应的年份和月份,可在表单的Init(初始化)过程中打开总账表,然后定位于末记录,再将Text1、Text2的Value属性分别设置为末记录对应rq中的年份和月份(注意转换为字符型数据并去掉前导及后导空格),最后需关闭总账表。表单的Init过程对应的VFP程序代码如下:
use zz
go bott
thisform.text1.value=allt(str(year(rq)))
thisform.text2.value=allt(str(month(rq)))
use
3. 3“确定”按钮的Click过程及代码设计
3. 3. 1“确定”按钮的Click过程
表单运行期间,单击“确定”按钮时,由VFP程序自动生成指定会计期间的损益表。为防止命令执行的结果传送到相关的窗口或界面,需使用set命令将talk设置为off。为使生成并保存某会计期间的损益表时,能直接覆盖可能已存在的该会计期间的损益表文件名,也需要使用set命令将safety设置为off。为生成符合要求的损益表,可在1区打开总账表,在2区打开损益表,具体过程如图2所示。
3. 3. 2“确定”按钮的Click过程代码
依据图2所述的生成损益表的N-S图,“确定”按钮的Click过程对应的VFP程序代码如下(程序中的分号为续行符,