企业财务管理系统源码正式帐页设计(完整版)实用资料_第1页
企业财务管理系统源码正式帐页设计(完整版)实用资料_第2页
企业财务管理系统源码正式帐页设计(完整版)实用资料_第3页
企业财务管理系统源码正式帐页设计(完整版)实用资料_第4页
企业财务管理系统源码正式帐页设计(完整版)实用资料_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

企业财务管理系统源码正式帐页设计(完整版)实用资料(可以直接使用,可编辑完整版实用资料,欢迎下载)

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

企业财务管理系统源码正式帐页设计(完整版)实用资料(可以直接使用,可编辑完整版实用资料,欢迎下载)正式帐页详细设计帐册分析总帐

LP

选择:会计月份、会计科目­会计科目、科目级次­科目级次、输出方式(分页/连续)、包含未记帐凭证日记帐

LH

除资金日报表外,其他选择内容相同按月份查询选择:会计月份、科目、币种、包含未记帐凭证、合并同类分录按日历查询选择:会计日期、科目、币种、包含未记帐凭证、合并同类分录­1

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

现金日记帐银行日记帐其他日记帐资金日报表(不属于帐册范围)选择:日期(年月日)、级次­级次、包含帐前凭证三栏帐

LH\GJ\ZQ

说明:可以不输入的项目有斜体表示科目三栏帐选择:会计月份、科目、币种、包含未记帐凭证、合并同类分录部门三栏帐科目选择:会计月份、科目、币种、包含未记帐凭证部门选择:会计月份、部门、币种、包含未记帐凭证科目­部门:会计月份、科目、部门、币种、包含未记帐凭证项目三栏帐科目选择:会计月份、科目、项目类别、币种、包含未记帐凭证项目选择:会计月份、项目类别、项目、币种、包含未记帐凭证科目­项目选择:会计月份、科目、项目类别、项目、币种、包含未记帐凭证部门项目任意三栏帐选择:会计月份、部门、项目类别、项目、币种、包含未记帐凭证­2

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

单位三栏帐科目选择:会计月份、会计科目、单位类别、核算币种、包含未记帐凭证单位选择:会计月份、单位类别、单位编号、核算币种、包含未记帐凭证科目­单位选择:会计月份、会计科目、单位类别、单位编号、核算币种、包含未记帐凭证个人三栏帐科目选择:会计月份、科目、部门、币种、包含未记帐凭证个人选择:会计月份、部门、个人、币种、包含未记帐凭证科目­个人选择:会计月份、科目、部门、个人、币种、包含未记帐凭证多栏帐

LBX

科目多栏帐选择:会计月份、分析科目(__

__

__)、出第__级多栏式帐、分析级次(所有最末级栏目)、币种、合并对称编号栏目、合并凭证分录、包括未记帐凭证应交增值税以前版本存在的问题问题收集冯军:北京医院要求很多,大部分很合理,有关细节请问张志勇、黄金港。明新建:我们服务过程中,遇到的问题往往是帐页的格式与打印方式。帐页的格式由于用户的不同需要灵活定义,但不能违反基本会计规范的约定,我们应该提供一种经常使用的缺省状态的帐页格式。­3

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

打印方式比较麻烦,有的用户提出帐页可否在上次打印的基础上连续打印?但这样作的缺点是操作太繁锁,但不这样作的结果是导致帐页不可连续性或浪费性。张秀娟:

1、感觉最最迫切的问题是正式帐页打印,本次打印最后一页一般是不满页的,想下次打印时能够接着上次打印的最后一页的某一行开始打印,以实现用户意义上的连续打印。用户的正式帐页一般是每月打印一次,而不是每年打印一次。

2、正式帐页每列宽度的微调整,不要再用一个文件的方式显示出来(LSZBKD.INI)太不容易让用户接受。

3、若用户选择“打印奇数页”“打印偶数页”,页左、页右空白需要调换,原软件没有很好的处理。蔺国强:

1、当前的正式帐页的输出是可以定页输出的,但由于帐页是动态形成的,因此每次在定页输出时都要将全部的帐形成一遍,这样才能再只输出指定的几面,这种情况下,若一本帐过多时,经常给出现中断,再接原来的断点输出时,前面的准备工作要做两天才可以。在中油中就有一个单位是这样:他的往来帐有

600

多页,输出到

400

页左右时打印机中断,再输出

401

时,要准备

40

多个小时才能再输出几页,而且每输出一部分后,机器就要死一次,这样这本帐断断续续打印了许多天。不知你们对这个问题能有什么好的办法处理。

2、正式帐页输出中,最好能提供一个输出帐页目录及封面的功能,这样输出帐页就比较全面了。目录中说明每个科目的帐页所在的页号。

3、现在的正式帐页输出中提供的指定页输出、奇偶页输出等最好能象OFFICE

提供的输出一样,包括通配符的使用,这样大家用起来方便一点。石连山:正式帐页连续打印时,缺少目录表(即打印内容与所在页号的对应关系)这样在查询打印内容时,会很麻烦。问题分析帐页格式比较灵活的设置,但不违反财务规范;­4

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

提供缺省设置,可以恢复;提供调整列宽的设置打印方式连续打印;连续打印是否考虑打印表头信息;打印奇偶页和上留空、左留空的处理;打印选择提供打印范围,并允许使用统配符帐页打印数据处理速度慢,但选择打印页数时需要重新将数据全部生成,而且在打印大数据量时经常出现死机现象打印前和打印时最好提供打印目录问题解决方案分散处理分散数据处理量,主要解决中油帐页打印问题:科目级数多,数据多而且一年帐页集中打印;处理的方式将数据按区间进行划分、按科目或部门等进行划分形成目录为进行分散处理和打印中断后的继续打印,在一次打印完成后形成相应的目录,对于打印过的内容可以选择任意页进行打印设计思路以辅助系统的三栏帐为例三栏帐划分为三类:科目、对象(部门、单位、项目、个人)、科目­对象分散处理:科目,将相关的对象选择出来,逐个传递,在帐页处理模块中进行判断,如果有数据发生则打印;对象,将相关的科目选择出来,逐个传递,在帐页处理模块中进行判断,如果有数据发生则打印;科目­对象,将会计月份进行分割,逐月传递,在帐页处理模块中分段生成数据并进行打印;目录格式:科目,科目、起始页号、起始行号、终止页号、终止行号对象,对象、起始页号、起始行号、终止页号、终止行号­5

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

科目­对象,月份、起始页号、起始行号、终止页号、终止行号问题:

1、考虑在增加目录表的同时是否增加打印日志表,用于记录没有数据的详细信息,例如过次页、承前页的余额数据等?

2、如果第一个思路可行,则必定要在公用查询组件中进行部分处理?回答:没有必要保存,过次页和承前页数据是每次计算的。使用的表:

1、帐册字典,所有类型的帐页使用统一表

2、参数定义,将帐页进行分类,根据类型设置参数表;可以分为总帐、三栏帐和日记帐、多栏帐三种

3、目录表,同实际目录内容相似;不同对象所在的起始页号和终止页号,对于对象的内容取决于不同的帐页,注意参考总帐和多栏帐的目录格式

4、打印日志表,记录打印的参数,如该页的过次页余额和承前页余额、每个对象的信息和起始页号、起始行号等设计讨论讨论记录

1、不同帐页的不同帐式;处理:在同一帐册中的不同帐页需要不同帐式时,在帐册参数定义中增加帐式参数;如果在同一帐册中帐式相同则在帐册定义中增加帐式参数最后方案:

2、不同科目之间增加一行摘要的处理;处理:需要对查询组件的数据处理进行修改,使用科目统配时形成摘要行;同时,根据起始行号计算过次页和承前页余额的值(以前没有考虑连续打印的情况,即该帐页不是从第一行打印的情况)。

3、打印处理是工作量重点;

4、辅助帐页是否提供帐册定义处理:增加帐册类型表,用于控制是否可以定义该类型的帐册

5、统计各帐页打印的极值,明确数据处理分解方式备注:了解各帐册输出的方式,对于没有必要分解的数据可以不分解;收集用户帐册,考虑单位往来和个人往来的处理,需要了解帐页的详细格式和业务方面的需求

6、无发生数据是否打印处理:是否有必要在帐册定义中设置

7、当分解会计月份时,不是开始月份的要删除期初余额最后思路使用最初的数据处理分解方案,关键是分解的粒度;明确需要使用的表:­6

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

打印处理方式:(以个人三栏帐为例)回避

PB

打印中的技术问题,首先考虑正常情况(换页打印)如果传递的分解参数处理后的数据不够一页时放弃打印并返回标志,帐页输出程序自动将参数累加再进行传递,直到传递的参数可以打印一页时再进行打印;在帐册输出时维护目录信息,即记录每个被分解的对象所在的页号,在帐页打印时维护帐册日志,即进行每页的数据范围和对象范围。打印目录和打印日志的处理:帐页打印每打印一页时记录打印日志,即在帐页程序中进行;当根据参数打印完毕后传递参数,在帐册数据程序中记录打印目录;当打印中止时,可以根据打印目录和打印日志选择打印的页号。遗留问题选择帐页连续打印时表头打印如何处理?连续打印方式:方式一方式二方式三问题分析:­7

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

可以使用

composite

类型的数据窗口来解决,考虑复杂情况,在一页纸上可能有多个表头;参数传递和处理算法复杂,在帐页打印时无法处理多组数据参数!目前不考虑的问题:

1、数据发生变动的情况不考虑

2、只有打印后可以出目录,根据该目录可以帮助进行打印定位

sunny意见帐页页号的编码规则在统一帐册中页号从1

开始顺序增加;建议(以后做的工作):在查询打印时增加指定打印页号功能,即页号从指定数字开始编写帐页连续打印处理范围:应收帐款、预收帐款、应付帐款、预付帐款、备用金的个人往来、其他应收款中的个人借款处理方法:可以同

V5.1

的处理;在一张纸上不打印多个表头,即每个帐册只有一个表头;在不同的参数帐页之间加入一个空行,并在摘要中说明下一个打印的内容问题:在使用换页输出方式时,是否打印表头?如果打印是根据定义的参数划分表头还是按明细对象划分(即使用科目统配时,打印一个表头还是每个科目打印一个表头)?答:在换页输出方式时,打印表头;总帐打印时单独处理,每个科目打印一个表头魏代森建议修改定义界面,便于用户理解数据结构­8

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

帐页类型(ZWZYLX)

调整后新的结构备注:通过使用否在控制是否可以定义该类型的帐页帐页

ID(ZWZYID)

createuniqueclusteredindexZWZYIDonZWZYID(ZWZYID_LXBH,ZWZYID_SCZS)帐页格式(ZWZYGS)

­9

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

createuniqueclusteredindexZWZYGSonZWZYGS(ZWZYGS_LXBH,ZWZYGS_GSBH)帐页参数(ZWSLCS)­­­三栏帐参数createuniqueclusteredindexZWSLCSonZWSLCS(ZWSLCS_LXBH,ZWSLCS_GSBH,ZWSLCS_CSBH)帐页目录(ZWSLML)­­­三栏帐目录createuniqueclusteredindexZWSLMLonZWSLML(ZWSLML_LXBH,ZWSLML_GSBH,ZWSLML_MLBH)帐页日志(ZWZYRZ)

­10

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

createuniqueclusteredindexZWZYRZonZWZYRZ(ZWZYRZ_LXBH,ZWZYRZ_GSBH,ZWZYRZ_DYYH)数据处理设计参数分析和模拟处理过程格式参数发生变化时,已经存在的打印目录和打印日志自动取消;­11

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

【换页打印方式】换页打印目录:换页打印日志:说明:换页打印时,起始编号≡终止编号换页打印处理过程描述:­12

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

【连续打印方式】连续打印日志:连续打印处理过程描述:­13

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

备注:一、日志结构不变,打印页号、起始编号、起始序号、终止编号、终止序号二、顺序打印时传递一组参数,要求能够从任意位置(已经打印过的)开始打印三、指定打印时传递临时表(参数),处理时根据临时表内容运算数据处理的核心:在打印的处理时将数据存放到DataStore(全局变量gds_ZyPrint)中,内容同一页帐页内容相对,当组织出一页数据时进行打印并清除数据­14

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

处理流程­15

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

­16

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

­17

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

­18

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

参数分析:指定打印方式临时表结构­19

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

帐页输出部分详细设计参数组织参数的分类:参数分为四组:格式变量,公用变量,顺序打印变量,指定打印变量格式变量是定义帐页格式中的内容,从

ZWZYGS

表中取出;顺序打印变量在顺序打印方式下有效,否则为空指定打印变量在指定打印方式下有效,否则为空,而且内容组织在临时表中参数的组织:参数组织的重点在顺序打印变量和指定打印变量为便于理解,和传递参数结构的调整,创建三栏帐页参数结构体

stru_zycs_sl,内容见参数表,同时编写一个参数生成函数

f_GetZycs_Sl(stru_zycs_sl)return

string

返回传递的参数字符串,在参数字符串中以“;”做分组,以“&”做分隔

[顺序打印变量的组织]

选择的范围可以是打印日志中存在的页号或最大页号加一一、日志表中存在的页号参数编号=起始编号(日志表中);起始页号=MIN(页号)WHERE

起始编号=参数编号OR

终止编号=参数编号;打印页号=页号;数据序号=起始序号;二、日志表中最大页号加一

IF

最大页号的结束标志=0

THEN

参数编号=最大页号的起始编号;起始页号=MIN(页号)WHERE起始编号=参数编号

OR

终止编号=参数编号;数据序号=最大页号的起始序号

ELSE

参数编号=最大页号的终止编号+1;起始页号=1;数据序号=1

END

IF

打印页号=页号;详见:f_zszy_print_sx

[指定打印变量的组织]

将传递参数表的结构做调整,为打印日志中的内容;使用指定打印方式是,必须是打印日志中的页所以参数组织很简单,将参数表中的内容存放到临时表中即可详见:f_zszy_print_zd­20

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

参数传递及返回处理

[顺序打印变量的传递]

取出一组参数;保存该参数的编号和起始数据序号(用于连续打印方式)删除目录表中的该参数以后的数据(起始页号=终止页号=数据行数=0)删除日志表中该页以后的数据传递给相应的帐页处理窗口;

DO

WHILE

参数存在接受返回参数,形成目录表内容

{IF

打印完

THEN

起始打印参数=新一组参数编号;起始打印序号=1

打印页号+1

ELSE

起始打印参数和序号内容不变打印页号不变

END

IF}//用于连续打印方式取下一组参数组织传递参数

LOOP

[指定打印变量的传递]

建立变量临时表将指定打印页号的日志内容取出存放在变量临时表将变量临时表传递给相应的帐页处理窗口接受返回参数,提示打印完成帐页打印公用结构帐页查询的结构:接受传递参数将参数传递给动态生成的用户对象返回数据

DS

DS

和相关参数传递给打印组建进行打印一、修改传递变量的结构“0;”表示查询方式,原有处理不变“1;”表示打印方式,在

OPEN

事件中处理帐页的输出然后

CLOSE

二、分解参数调用

uo_info.uf_zszy_getparm(vsparm)函数即可­21

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

三、程序结构将数据处理(包括分解参数)程序放在打印组件的用户对象中,使用组件对象的

Instance

Variables

保存变量的值,当需要组织数据时返回组织数据所需的

vsParm;在打印组件中数据的处理和打印是同数据处理分离的,处理的依据是组织数据后的

DataStore和传递的参数;原有帐页查询部分不变,插入帐页输出部分的程序处理:

iUoSource

=

Create

uo_zw_kmMxz_Data

/*帐页输出部分*/

if

Get_Token(vsParm,";")="1"

then

if

uo_info.uf_Zszy_GetParm(vsParm)<0

then

//分解参数

Close(this)

Message.StringParm="­1;分解传递参数失败!"

return

end

if

Begin:

vsParm=uo_info.uf_Zszy_Print(iuoSource.ds_Info)

if

Get_Token(vsParm,";")="1"

then

//组织数据

if

iUoSource.uf_InitData(vsParm)

=

­1

then

Close(this)

Message.StringParm="­1;组织数据失败!"

return

end

if

//为查询组件赋值,但不进行初始,注意在不同输出方式下,表头内容的不同

isFormat=uo_info.isSczs

wf_zszy()

else

//关闭返回

Close(this)

message.stringparm=vsParm

return

end

if

goto

Begin

end

if

/*帐页查询部分*/

讨论结果:(With

Victor)基本可行,数据的传递使用全局

DataStore:gds_ZyPrint,注意在帐页输出窗口退出时进行

gds_ZyPrint

的注销问题解答:

1、“过次页”,“承前页”数据的形成余额列三栏帐:F_SLYE,F_DQDJ,F_WBYE,F_DQHL,F_JEYE;总帐:F_JEYE

2、连接摘要行的形成:在目录表中增加“摘要内容”列保存在连续打印方式下摘要行的内容;在传递参数的结构体中也­22

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

增加摘要内容变量;摘要内容是在参数分解形成目录时形成的

1、无额打印和有额打印的处理将两个标志交帐页组织数据时处理,组织完数据后进行数据过滤;注意,数据为空时时在查询组件的帐页打印函数中处理的。无额打印指无发生数据(原始凭证)无余额是否打印;标志:uo_info.isWedy

有额打印指无发生数据有余额是否打印;标志:uo_info.isYedy

标志取值含义:“1”:打印;“0”:不打印

2、需要为查询组件(info)赋值范围

vsFilter=""

iuoSource.ds_info.SetFilter(vsFilter)

iuoSource.ds_info.Filter()

iuoSource.ds_info.Sort()

uo_Info.uosId

//帐页格式

ID

Uo_Info.uosszbh

//打印格式

SZBH

Uo_Info.Uowmain

=

this

//帐页查询窗口

Uo_Info.uosCryTicCol

//隐含列

Uo_Info.uoiJedecn

//金额精度

Uo_Info.uoiSldecn

//数量精度

Uo_Info.uoiDjdecn

//单价精度

Uo_Info.uoiHldecn

//汇率精度

Uo_Info.uosChangeColText

//列标题变量

Uo_Info.Uosvar

//表头变量注意:为表头变量赋值时,根据打印方式(uo_info.isSfhy“1”:换页;“0”连续)不同表头内容不同;当换页方式时,内容同查询时相同;当连续方式时,表头变量参考文档;注意对数据的过滤5、返回值的内容和格式顺序输出正常:“1;起始页号;终止页号;数据行数;完成标志”连续输出正常:“1;1”没有数据:“0”出错:“­1;错误提示信息”­23

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

三栏式帐页处理参照表说明:

1、选择科目的地方应同时符合帐式的要求,详见“帐式科目关系表”

2、选择科目对录入币种的控制,详见“科目币种关系表”

3、{/}为选项;()为注释;[]为条件;兰色为定义要求;红色为注意;黑体为显著表示­24

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

­25

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

­26

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

­27

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

­28

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

帐式科目关系表符号说明√:允许;×:禁止;—:无关问题:不明细科目如何判断?

答:不使用统配的情况,直接根据不明细级科目的性质判断;使用统配的情况,则要根据所包含的明细科目的性质进行判断(例如:判断数量式,一个非明细科目不核算数量,但下级存在核算数量的明细科目则该科目允许定义)

科目币种关系表统配的判断:

vsString=输入编号

if

Not

IsNumber(vsString)

then

非数字型字符,返回无效

I=1

Do

whileI<=编码的最大级数

and

IsNull(vsString)

and

Trim(vsString)<>””

vsMid=取出第

I级字符

if

Pos(vsMid,”.”)>0

then

if

vsMid<>Fill(‘.’,

该级位数)

then

返回无效

end

if

vsKmbh=取出第

I级前的字符

if

vsKmbh在科目字典中不存在

then

返回科目无效­29

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

end

if

vsMid=取出第

I级后剩余的字符

I++

Next

取统配内容的语句:Where

BH

like‘**­­­’(注:将.替换为_)­30

­

正式帐页详细设计(打印时间:11/27/2021

9:35:00

AM)­­­Jin.Tiger

帐页输出处理选择

温馨提示

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

评论

0/150

提交评论