工资系统设计文档文档格式.docx
- 文档编号:20536120
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:51
- 大小:48.56KB
工资系统设计文档文档格式.docx
《工资系统设计文档文档格式.docx》由会员分享,可在线阅读,更多相关《工资系统设计文档文档格式.docx(51页珍藏版)》请在冰豆网上搜索。
查询已经定义的对照项目(Qry_DZZD(psDZBH:
根据对照目录的权限确定对照项目的操作权限。
增加:
Add_DZZD()
删除:
Del_DZZD()
修改:
Upt_DZZD()
GZDZML(工资对照目录)、GZDZZD(工资对照字典)。
全局职工信息定义:
集团公司制定的统一的职工信息结构。
界面描述:
字典类操作界面。
工资类别:
_______参考项目
删除
项目编号
项目名称
对照表否
对照表编号
类型
长度
数据处理:
初始化(查询):
查询已经定义的职工信息(Qry_ZGInfo())。
同时要查询对照信息。
增加:
设置的项目有项目编号、项目名称、对照表否、对照信息、类型、长度。
项目编号长度为4位,只显示前3位,第一位表示是全局的或单位的(1表示是全局的),类型包括字符型,日期型、判断型,若是日期型则长度设置为10位,判断型长度为2位,不能修改。
调用的方法为Add_ZGInfo()。
删除:
删除前要检查是否有职工数据,若有则不允许删除。
Del_ZGInfo()。
修改:
若修改了对照信息,则要检查是否有职工数据,若有则不能修改。
调用的方法为Upt_ZGInfo()。
对于系统预置的系统项目不允许修改,系统预置的项目包括:
职工编号,职工名称,部门编号,外籍人员;
操作对象:
GZJGZD
全局工资项目定义:
定义集团公司统一制定的工资项目。
工资项目参考项目
移动
保存
显示长度
显示精度
月末清理
查询已经定义的全局工资项目(Qry_GZXM())。
设置的项目有:
项目编号、项目名称、显示长度、显示精度、月底清理否、项目说明(Add_GZXM())。
删除前要检查是否有职工工资项目数据。
若有则不能删除(Del_GZXM())。
系统预置的系统项目不允许修改和删除,这包括上月零头,收入合计,实发合计,所得税,本月零头(Upt_GZXM())。
GZJGZD。
工资类别职工信息定义:
对应上面的全局职工信息定义,该功能是定义在当前工资类别上的职工信息。
字典类操作界面,左侧显示本单位和全局定义(固定)的职工信息。
查询本单位已经定义的职工信息(Qry_ZGInfo(psGZLB:
查询系统定义的职工信息。
Add_ZGInfo(psGZLB:
string)。
Upt_ZGInfo(psGZLB:
删除前先检查是否已经定义了职工数据。
(Del_ZGInfo(psGZLB:
string))
工资类别工资项目定义:
定义当前工资类别的工资项目以及工资项目公式。
字典类操作界面,与全局工资项目定义类似。
显示当前工资类别已经定义的工资项目(Qry_GZXM(psGZLB:
参考项目需要查询集团公司定义的工资项目(Qry_GZXM(psGZLB:
只在界面上完成,按保存按钮后才能保存(先在<
Table>
中设置一个增加状态标记State,保存时处理),并生成新的排序标志(DISP)。
保存:
Upt_GZXM(psGZLB:
检查<
的增加标记,若是增加的数据则存储在一个字符串(strAdd)中,若不是增加的数据则检查当前的数据和原来的数据是否相同,若做了修改则保存到字符串中(strUpt),然后分别将新增的和修改的数据保存。
删除前检查是否已经有职工数据和计算公式(Del_GZXM(psGZLB,psGZXM:
移动:
显示顺序的修改,向上移动,则本条记录与上一条记录的DISP值交换,向下移动则与下一条记录的DISP值交换。
第二页:
计算公式定义
查询:
查询已经定义的计算公式。
并将公式翻译为以文字表达的表达式(Qry_XMGS)。
增加、修改由界面来完成,主要是对<
的操作增加项目分别保存在strAdd中,保存时进行处理。
增加时自动形成公式编号。
删除:
Del_XMGS()。
保存:
若不是增加的公式则检查是否做了修改,形成strUpt,检查向公式表中增加的公式,形成strAdd,调用公式校验检查公式是否合法,不合法则给出提示(Upt_XMGS)。
公式校验:
根据公式表达式和函数列表,将公式翻译为字段表达式,并调用SQL语句来检查,若出错则公式有错(Check_XMGS)。
组合条件定义:
调用条件查询组件返回表达式。
GZJGZD,GZJSGS
所得税率定义:
由集团公司定义各种所得税率(可以为多套)。
<
增加>
删除>
保存>
税别:
_____名称:
____________税别:
级别
下限
上限
所得税率
速算扣除数
01
500
5%
02
2000
10%
25
查询某个税别的所得税定义。
初始进入时查询税别编号最小的所得税定义。
若没有定义则自动进入增加状态。
税别可提供帮助查询其他税种的税率。
查询状态下税别编号不允许修改。
(Qry_SLDef(psSBBH:
税别增加:
自动生成最大编号,税率级别自动生成,不允许修改。
税率的增加和删除只在界面上完成。
税别删除:
删除前检查该税别是否已经被某单位使用(Del_SLDef(psSBBH:
税别保存:
首先删除原来的定义,然后全部增加。
保存后进入增加状态(Upt_SLDef(psSBBH:
stirng))。
GZSLZD(公共)
币种面值定义
由集团公司定义各种货币的面值。
查询显示某个币种已经定义的币种面值定义(Qry_BZMZ(psBZBH:
选择某个币种时查询显示某个币种的面值定义。
Add_BZMZ(psBZBH:
string)
Del_BZMZ(psBZBH:
Upt_BZMZ(psBZBH:
GZMZZD(公共)。
银行目录定义
由集团公司定义银行清单。
查询显示已经定义的银行清单(Qry_YHZD())。
Add_YHZD()
删除前检查是否有单位定义了该银行的文件结构(Del_YHZD(psYHBH:
Upt_YHZD()
GZYHZD(公共)
工资录入:
录入职工工资。
工资录入界面,职工数据提供分页浏览(上一页下一页第一页最末页):
单位:
xxxxx工资类别:
yyyyy月份:
zz快速定位:
______
职工编号姓名部门外籍人员实发合计….
部门编号部门名称
+001开发部
+001001财务产品部
录入页面处理可参考余额初始。
1、查询部门:
查询当前单位已经定义的部门,并且以树形结构显示(Qry_BMDef(),界面可参考分级字典)。
2、查询工资报表定义的内容(默认取第一个报表selectGZGZBB_DYLM,GZJGZD_XMMCfromGZGZBBwhereGZGZBB_DYLM=GZJGZD_DYLMand..),标题显示项目名称,根据报表中的对应列名查询所选择的部门编号并且不是停发工资的GZBZSE表中的数据(Qry_GZInfo())。
并且根据对应列名性质确定工资录入单元格是否允许修改(在单元格内嵌入输入框)。
3、计算:
新建一个页面对话框,查询显示定义的公式列表(调用工资项目公式定义中的查询公式方法),然后查询系统参数设置中的“工资项目计算时选择计算项目”选项,若是true,则直接将所有的公式列表返回,否则显示公式列表让用户选择,确定后将选择的公式返回主界面,然后再调用公式计算(Cal_XMGS()),刷新当前页面的内容(以Form的形式提交)。
公式计算算法:
对每条定义的公式,updateGZBASEset公式项目列名=公式表达式where…
4、列值调整:
调整工资项目的值,将要调整的对应列名和调整表达式传递到中间层,修改对应的字段的值,完毕后将数据返回(Adj_GZXM(),UpdateGZBASEset项目列名=调整表达式where…),在界面修改调整的内容。
5、数据浏览,修改:
将全部数据读出形成一个数组保留在客户端,根据部门的变化或分页浏览过滤数据,并将修改的数据动态保存到数组中。
(是否可行,但涉及到计算和列值调整是不能在完全在客户端完成的,或在浏览下一页时将数据保存到数据库中,但数据集合中的数据不能反映,可以考虑使用aspx)。
6、保存:
将界面上修改的内容保存到数据库中(有时数据量较大),Upt_GZData()
7、分摊:
将本次工资中的工资项目分摊到前几个月的某个工资项目中。
被分摊的工资项目:
______分摊到项目:
____
分摊期间:
___月至___月<
平均分摊>
<
X1月
X2月
X3月
….
百分比%
数据处理:
1、查询工资项目:
2、分摊期间只能是本月或本月以前的月份。
3、平均分摊:
根据分摊的月份,计算每个月应分摊的百分比,可修改。
4、保存:
保存到分摊方案表中。
5、计算(包含在工资录入的计算中):
查询分摊记录表(GZFTJL),查询以前分摊中是否有与本次分摊有相同的月份,若有,则将本次的分摊金额加上前几次分摊的金额后计算得到本次应交税金。
计算方法:
查询GZBASE_BAK(本月为GZBASE)表中分摊月份的最后一次发放的应交税金项目的金额和收入合计项目的金额(若没有数据则查询前一次发放的项目金额,或最近发放次数的项目金额,实际是前一次发放),按照公式:
Sum选择月((当月收入合计+当月分摊金额)*所得税率-当月所得税金额),得到本次发放应交税金,其中当月分摊金额=本次分摊金额+前几次分摊金额之和。
将本次分摊记录到GZFTJL表中。
GZGZBB,GZJGZD,GZBASE
银行代发:
每次发放所选择的银行可能不一样,定义每次发放的银行文件格式,并生成代发文件。
银行格式定义和文件栏目设置(参看需求文档)。
列示发放次数:
查询项目定义。
列示银行字典:
调用银行字典定义中的查询即可。
银行格式定义:
定义是否有标志行、标志内容和合计行、合计内容、筛选条件以及文件格式等(若是有标志行,则可以定义标志内容,有合计行则允许定义合计内容)。
栏目定义:
定义文件的各栏及对应的数据类型、长度、精度、对应项目。
栏目格式查询:
查询已经定义的栏目格式,Qry_LMDY()。
增加、修改、插入在界面上完成,保存时分别形成strAdd和strUpt,分别保存到数据库中(Upt_LMDY)。
Del_LMDY()
数据预览:
查询栏目定义(GZWJGS)中定义的标题和对应列名组成字段列表并执行查询生成数据集,查询银行格式(GZYHGS)设置,根据设置显示数据集内容(Qry_DFData())。
银行代发数据形成:
选择文件,将数据保存到选择的文件中,需调用OCX。
GZGZBB,GZYHGS,GZWJGS
个人所得税
生成、打印、申报个人所得税报表。
显示申报月份(不能修改),维护申报项目,选择收入项目和工资项目和可选项目。
确定后显示所选择的项目和个人所得税项目(费用金额、应纳税额、所得税率、速算扣除数、扣除金额)。
界面以Cell控件显示以打印和格式设置。
查询工资项目:
调用工资项目维护查询即可(Qry_GZXM)。
查询收入项目:
过滤工资项目中的收入项目。
计算所得税:
查询是否已经有个人所得税数据(GZNSBB中是否有本月数据),若有则提示是否重新计算,计算公式为:
应交税金=(收入合计–附加费用额)*所得税率–速算扣除数(Cal_SDS()),若GZNSBB中没有数据,则根据所选择的收入合计项目和所得税率计算扣税金额保存到GZNSBB中。
查询所得税数据:
Qry_SDS(),列示固定列如职工编号、职工姓名、收入合计、费用金额、所得税率、速算扣除数、应交税金和其他用户选择的工资项目(selectGZNSBB_ZGNM,GZNSBB_SRHJ,GZNSBB_FYJE,…GZBASE_XM…fromGZBASE,GZNSBBwhereGZNSBB_ZGNM=GZBASE_ZGNMand…)。
申报:
选择申报的文件,将生成的个人所得税保存到文件中(需要OCX)。
条件查询:
调用条件查询公共组件,返回条件定义,确定后以Form形式将条件提交,将查询出的Recordset根据条件过滤,生成新的页面刷新。
GZNSBB
汇总表
自定义查询报表。
单位:
____
工资类别:
日期:
____年__月至__月
确定取消
汇总表定义>
:
在设置界面,列示已定义好的汇总表,可以增加、修改、删除;
●增加时,显示如界面分为四步,第一步定义统计依据,统计依据为除职工编号、姓名之外的职工信息字段;
●统计内容为所有可用的工资项目字段;
●排序字段从统计依据和统计字段中选取;
●如果查询合并公司,可选的职工信息、工资项目都是全局的;
查询普通公司则为可使用的所有全局项目和基于工资类别的项目。
过滤条件为任意组合条件,可选的字段为可用的职工信息及工资项目字段;
1、设置条件:
设置查询日期条件,根据当前登陆的公司性质确定界面上的选项:
当前公司若是合并公司则选择该公司的下级单位(提供单位帮助),不能选择工资类别,若是普通公司则可以选择工资类别(提供类别帮助)。
2、查询数据:
创建临时表,根据设置的条件查询职工信息和的工资信息数据插入到该临时表中。
动态生成LSHZXM(统计依据为职工信息,统计内容为工资项目)中的数据。
3、自定义查询:
调用任意汇总表公共组件(传入参数)。
LSTJBB等任意汇总表中需要的表。
单位工资类别启用:
a)只有普通公司才有权利启用(表结构和表间的关系描述不足)
b)维护gzdwlb,当某一单位启用该类别时在gzdwlb中增加一条记录。
c)普通公司自己设置的工资类别可以为其他普通公司启用,但只能为本公司维护。
d)工资发放项目设置(第二页):
初始时从gzjgzd中取数(该单位当前的工资类别核算的工资项目和职工信息被选中,其他的可以选择,)如果选中则在gzjgzd中insert一条记录(该工资类别如:
gzjgzd_lbbh的值为‘01’),反之delete一条记录,这些项目为职工信息(gzjgzd_fz01……)和工资项目信息(gzjgzd_xm01……),同时在gzjgzd的数据和gzbase保持一致。
类似多次发放中的处理。
e)包括的项目信息增加至工资报表和工资报表项目表?
此时不应该维护该表,当是多次发放、工资条定义、发放表定义的时候才维护……。
f)如果不存在此工资类别的职工信息,则可以取消启用。
系统参数设置:
g)普通公司和合并公司分别维护不同的内容
h)维护表:
lsgscs。
i)采用卡片形式设置。
j)工资条打印设置。
k)是否允许各单位增加工资类别,只有当为总公司的系统管理才可以设置。
在单位工资类别启用中选择,当为0:
只能是总公司设置,分公司选择、或1:
分公司只能维护自己增加的工资类别,不能维护其他公司增加的工资类别但可以启用。
维护F_VKEY=’GZ_LBZJBZ’的记录。
(在工资类别定义中应该注意)。
l)结构参数设置中的有效维护级数是根据已经增加的最末级数确定的。
m)工资项目计算时选择计算项目:
选中表明工资项目计算时可以选择那些项目,否则不能选择。
放在lsgscs中。
n)员工编号编制规则的意思是统一和根据部门编制的:
BM/TY、BM/XH。
o)普通公司和合并公司维护的项目不同:
是否允许各单位增加工资类别,此设置由系统管理控制,“工资发放方案,是否各月不同,此设置由本单位控制。
其他设置都有本单位设置。
”考虑到每个月份都可以维护该工资发放案,已经没有任何意义了所以去掉该选项。
职工档案维护:
p)首先检查该职责有没有部门维护的权限(查询、维护等权限),如果没有权限则不能维护,存放在表syressj2002中。
q)职工和部门字典缺少或没有描述该数据结构,原来bscw中的为:
lsbmzd和lszgzd两个表,在lszgzd中加一个字段lszgzd_zwbz,当为1时说明在帐务中也用到了,当为0时仅在工资系统中用到。
r)员工信息维护的是表:
gzjgzd。
在lszgzd和gzjgzd中的职工信息要一致起来,同时维护。
s)银行帐号如果设置为长度固定,则要检查录入的位数是否等于定义的长度。
t)更换部门:
弹出对话框输入更换的部门,(应该没有限制!
)维护工资信息表(gzbase中仅仅维护gzbase_bmbh)和lszgzd对应关系,注意职工和部门的关系。
多次发放的设置:
u)发放项目,这里选择的是针对某一次发放在工资录入中用到的工资项目。
这些数据存放在gzjgzd新自动增加的工资项目在gzjgzd_xmxz中有说明,如:
13表示第三次发放的实发合计即‘实发合计3’)同时还存放到gzgzbb(报表属性)和gzbbxm(针对gzgzbb中的报表的详细信息说明),将来工资发放的数据放在gzbase中。
选中的工资项目信息的维护主要在gzgzbb和gzbbxm中。
v)发放方案针对的是在那个银行发放。
默认继承上月的发放方案(开始默认为是职工所在的银行,在职工档案定义的时候定义的),同时还要确定职工在那个银行里发放,一次工资发放一个职工只能确定在一个银行里发,将这个信息放在GZFFFA中,“根据系统参数确定是否按月存贮在系统参数设置中定。
放到工资信息表gzbase中”在参数设置中已经去掉这个设置所以统一处理方式为:
每个月都可以维护发放方案,下个月自动继承上个月的发放方案。
表结构为:
工资发放方案:
@GZ@GZFFFA@YY@
表名
工资发放方案
注释
数据量的估计
行
存储空间的估计兆
索引
Uniqueindexndx_GZFFFAonGZFFFA(GZFFFA_DWBH,GZFFFA_LBBH,GZFFFA_FFCS,GZFFFA_ZGBH)
别名
列名
数据类型
空值
缺省
规则
单位编号
GZFFFA_DWBH
Varchar(30)
N
类别编号
GZFFFA_LBBH
Varchar
(2)
发放次数
GZFFFA_FFCS
封存状态
GZFFFA_FCZT
Varchar
(1)
某次发放的封存状态0、1
发放银行
GZFFFA_FFYH
职工编号
GZFFFA_ZGBH
Varchar(20)
w)包括的项目信息增加至工资报表和工资报表项目表:
目的是为了将查询或发放中为其提供查询显示的字段。
工资发放的封存和启封:
x)对多次发放进行封存启封,封存后本次发放的工资项目和职工信息不允许维护。
应该对多次发放的设置起限制作用。
主要是针对某次工资发放前的临时限制作用。
y)数据对象:
GZFFFA。
维护gzfffA_fczt字段。
zz)(去掉:
应该为gzlbzd_fzdx即封存对象,在他里面存放的是某一
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工资 系统 设计 文档