工资系统数据库结构设计说明书.docx
《工资系统数据库结构设计说明书.docx》由会员分享,可在线阅读,更多相关《工资系统数据库结构设计说明书.docx(25页珍藏版)》请在冰豆网上搜索。
工资系统数据库结构设计说明书
工资系统数据库结构设计说明书
目录
1、工资环节归类主表(Tachetab):
2、工资项目定义对应表(Incomeorpaydetailtab)
3、工资项目属性表(gzxmsxtab)
4、工资项目计算公式表(TacheDetailtab)
5、计算公式因子表(gsyztab)
6、工资主表/工资历史数据表(EmployeeSalaryTab/SalaryHistoryTab)
7、工资级别表(SalaryLevelTab)
8、职员基本工资表(BaseSalaryTab)
9、职员基本工资变动历史表(BaseSalaryChange)
10、银行信息表(BankTab)
11、员工银行帐号表(Empbankaccountidtab)Empbankaccountidtab
12、员工银行帐号变动历史表(Empbankaccidhistorytab)empbankaccidhistorytab
13、工资审核历史表(salarychecktab)salarychecktab
14、工资业务关帐表(syscloseaccount)syscloseaccount
15、月考勤信息主表(Workattendancetab)workattendacetab
16、考勤历史库表(hrmcheckwork)hrmcheckwork
17、税率表TaxRateTab(返回目录)
18、员工扣款表EmpFixedCut(返回目录)
19、工资主表/工资历史数据表(EmployeeSalaryTab/SalaryHistoryTab)(返回目录)
20、固定扣款历史表FixedCutTab(返回目录)
21、退还扣款记录表ReturnMoneyTab(返回目录)
22、退还扣款发放批次表BatchTab(返回目录)
23、退还扣款发放批次明细表BatchDetailTab(返回目录)
24、批次级别表dbo.BatchLevelTab(返回目录)
25、工资计算处理工作控制表workcontrolTab(返回目录)
26、导入格式表loadformatsettab(返回目录)
27、十三期工资表salary13tab(返回目录)
28、
本地数据库表:
28报警参数表(Alarmtab.db)(返回目录)
29计算项代码临时表(caclidno.DB)(返回目录)
30、计算操作控制表(controltab.db)(返回目录)
30、打印偏移量表(printoffset.db)(返回目录)
1、工资环节归类主表(Tachetab):
(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
TacheID
Char
2
NOTNULL
环节ID
TacheName
Char
20
NOTNULL
环节名称
IsUsed
Char
1
NOTNULL
'N'
是否在使用中
Remark
Char
80
Null
备注
说明:
该表用于存放工资项目归类信息。
A、PrimaryKey是TacheID
B、对高丰公司:
此表的数据内容现在主要包括:
财务扣款、行政扣款、人事扣款、应收项目、部门扣款
2、工资项目定义对应表(Incomeorpaydetailtab)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
IncomeOrPayID
Char
4
工资表自定义字段名称
IncomeOrPayName
Char
20
工资项目名称
FromField
Char
30
指明工资项目数据的来源表
TacheID
Char
10
项目所属环节ID
IsIncomeOrPay
Char
1
是应收还是应付(+/-)
Flag
Char
1
标志位(作废)
Operator
Char
4
复合操作
IsUsed
Char
1
项目是否被使用
ID_NO
Char
4
用于表示项目层次的标识符
Oper_Flag
Char
1
操作标志(已不用)
isworkcutflag
Char
(1)
“N”
考勤扣款标志(Y/N:
归属考勤扣款/不归属考勤扣款)
说明:
A、PrimaryKey是IncomeOrPayID
B、其他说明:
IncomeOrPayID对应工资表中的自定义字段名,取值为表employeesalarytab的自定义字段名称(N1~N100);
FromField:
如果数据来自系统表,则往这里填。
现在来源都为固定扣款表EmpFixedCut,所以所有非空的FromField都应该填入EmpFixedCut。
所有固定扣款都从这个接口导入。
Flag标志:
0为计算项、1为导入项、2为手工输入项。
对于flag为‘1’的情况:
若fromfield非空,则为固定导入项,否则为灵活的导入项。
IsUsed:
'N'表示没有使用,'Y'表示增加使用,'S'表示以前使用现在不再使用
ID_NO:
用于表示项目的层次,环节为一个字符,第二层次的是两个字符,如此类推
C、对于字段“ID_NO”的编码规则如下:
环节归类项目代码编码为一位;工资项目代码为两位;工资项目下有项目明细就为三位,如此类推。
最多允许4位。
同一归类环节下的工资项目的代码第一位相同。
3、工资项目属性表(gzxmsxtab)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
IncomeOrPayID
Char
10
NOTNULL
工资表自定义字段名称
SalaryLevel
SmallInt
20
NOTNULL
工资级别
SalaryLevelName
Char
工资级别名
Flag
Char
1
项目性质
说明:
A、PrimaryKey是(IncomeOrPayID,SalaryLevel)
B、项目性质:
0--计算项;1--导入项;2--手工输入项
4、工资项目计算公式表(TacheDetailtab)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
IncomeOrPayID
Char
4
NOTNULL
工资表自定义字段名称
LevelID
SmallInt
NOTNULL
工资级别代码
Expressions1
Text
NOTNULL
用于显示给用户看的公式
Expressions2
Text
NOTNULL
翻译后的公式
说明:
A、PrimaryKey是(IncomeOrPayID,LevelID)
B、这里主要用于属性为计算项的工资项目定义计算公式
C、公式的定义要求如下:
算法公式当中能够使用的合法的关键字、字符有:
●系统公式因子(见公式因子);
●关键字:
IF。
。
。
THEN、IF、ELSEIF、ELSE
●逻辑运算符:
AND、OR
●算术运算符:
—、+、*、/
●以及(、)和所有数字。
2)公式当中的IF.。
。
。
THEN、IF。
。
。
THEN。
。
。
ELSEIF。
。
。
THEN必须成对出现。
3)条件必须用()括起来。
5、计算公式因子表(gsyztab)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
YzID
Char
4
NOTNULL
因子ID
TableName
Char
20
NOTNULL
表名
ColName
Char
255
NOTNULL
字段名或组合语句
FieldType
Char
1
NOTNULL
字段类型,'1'代表字符,其他为数字
Remark
Char
20
NOTNULL
因子中文名字
OperateType
Char
20
操作类型,比如SUM、AVG、MIN、MAX
YzType
Char
1
因子类型
ReferrenceTab
Char
20
ColName的参照表
ReferrenceCol
Char
20
ColName的参照字段ID
ReferrenceName
Char
30
ColName的参照字段显示的名称
说明:
A、PrimaryKey是yzID,同时ColName和Remark都有唯一索引
B、因子类型,'0'表示直接从表中字段取得值,'1'表示是SQL语句,已经包含了有参数的情况。
6、工资主表/工资历史数据表(EmployeeSalaryTab/SalaryHistoryTab)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
EmployeeID
Char
8
NOTNULL
员工号
Name
Char
12
姓名
YearMonth
Char
6
NOTNULL
发放工资年月
BaseSalary
Numeric(8,2)
基本工资
FactoryID
Char
4
所属分公司ID
DeptID
Char
4
所在部门ID
PositionID
Char
2
职位ID
SalaryLevelID
Char
2
工资级别ID
TitleID
Char
6
职称ID(现改作工种内容)task
BankID
Char
20
银行ID
BankAccount
Char
30
银行帐号
Close_Flag
Char
1
'N'
关帐标记
N1
Numeric(8,2)
工资项目1
…….
Numeric(8,2)
工资项目N
N100
Numeric(8,2)
工资项目100
Tax
Numeric(8,2)
所得税
OtherIncome
Numeric(8,2)
应收合计
OtherPay
Numeric(8,2)
应扣合计
RealIncome
Numeric(8,2)
实发工资
ShouldIncome
Numeric(8,2)
应发工资
LoadFlag
Char
1
'N'
导入工资数据标志(对工人而言)
LB
Char
4
工资类别(便于对工人工资分类)
说明:
工资主表与工资历史表结构相同。
计算工资在主表中进行,计算完成后工资数据保存在工资历史表中以供历史查询和计算十三期工资所用。
关键字段说明:
employeeid+yearmonth唯一,保证每月每个员工仅有唯一的一条工资数据;
otherincome:
为除基本工资外的应收项之和;
otherpay:
为所有应扣项之和(不包括所得税)
shouldincome:
为应发工资,等于“基本工资”+“应收合计”;
realincome:
实发工资,等于“应发工资”-“应扣合计”–“所得税”
loadflag:
对工人有用,工人的工资由部门做上来的情况,把工资数据导入进来,则置“Y”
LB:
对工人有用,工人的工资数据为了方便发放工资条,按LB分类排序。
7、工资级别表(SalaryLevelTab)(返回目录)
字段名称
字段类型
字段长度
字段说明
salarylevelid
Char
2
工资级别代码
Salarylevelname
Char
20
工资级别名称
Salaryleveldetailt
Char
20
级别说明
Primarykey:
salarylevelidsalarylevelname必须唯一
8、职员基本工资表(BaseSalaryTab)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
employeeid
Char
8
NOTNULL
员工号
Empname
Char
12
Notnull
姓名
currbasesalary
Numeric(10,2)
Notnull
0
当前工资
oldbasesalary
Numeric(10,2)
0
最近提升前的工资
createby
Char
10
操作员
createdate
DateTime
操作日期(生效时间)
说明:
用于存放职员的基本工资资料。
A.primarykey:
employeeid
9、职员基本工资变动历史表(BaseSalaryChange)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
employeeid
Char
8
NOTNULL
员工号
Empname
Char
12
姓名
frombasesalary
Numeric(8,2)
变动前工资
uptobasesalary
Numeric(8,2)
变动后工资
operator
Char
6
签字人
inured
Char
10
生效日期
remark
Char
20
摘要(说明变动工资简单事由)
createdate
DateTime
变动前的建立时间
createby
Char
10
变动前的建立者
说明:
PrimaryKey是(EmployeeID,Inured)
10、银行信息表(BankTab)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
BankID
Char
4
NOTNULL
银行ID
BankName
Char
20
NOTNULL
银行简称
BankFullName
Char
50
银行全称
BankAddress
Char
50
银行地址
PreAccount
Char
20
Notnull
银行帐号前缀
IsUsed
Char
1
NOTNULL
该银行现在是否还在使用
说明:
该表用于保存银行基本信息资料。
A、primarykey:
bankid;bankname唯一。
B、preaccoun:
唯一,通过前缀来决定帐号属于哪个银行。
11、员工银行帐号表(Empbankaccountidtab)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
Accid
Char
25
Notnull
银行帐号
employeeid
Char
8
NOTNULL
员工号
Cid
Char
18
身份证号
Empname
Char
20
户名
Bankid
Char
4
Notnull
银行代码
Getsum
Numeric(8,2)
累计工资
Opendate
DateTime
开户时间
Status
Char
8
新开户/已开户
说明:
该表用于存放员工的当月代发工资的银行帐号资料。
每个员工只有一条记录。
A、employeeid为主键。
Accid为唯一索引。
B、status:
状态在每月初始化工资数据时改变状态。
“新开户”置成“已开户”。
C、在该表建立触发器,保证银行帐号与银行代码一致。
12、员工银行帐号变动历史表(Empbankaccidhistorytab)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
Accid
Char
25
Notnull
银行帐号
employeeid
Char
8
NOTNULL
员工号
Cid
Char
18
NOTNULL
身份证号
Empname
Char
20
户名
Bankid
Char
4
银行代码
Getsum
Numeric(18,2)
累计工资
Opendate
DateTime
canceldate
DateTime
取消时间
Status
Char
4
/*销户*/
说明:
用于存放员工的历史帐号信息。
A、accid为主键。
一个员工可以有多个历史帐号,但不能存在两条相同的历史帐号。
13、工资审核历史表(salarychecktab)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
CheckUser
Char
12
NOTNULL
审核人
YearMonth
Char
6
NOTNULL
工资发放年月
FactoryID
Char
4
NOTNULL
分公司ID
DeptID
Char
4
NOTNULL
部门ID
SalaryType
SmallInt
NOTNULL
工资类型
CheckTime
DateTime
NOTNULL
审核时间
说明:
该表用于每月工资审核的记录信息,用于控制工资存档的修改。
按不同的审核用户来控制,如用户A不能对用户B审核存档的工资进行改动。
A、PrimaryKey是(CheckUser,SalaryType,YearMonth,FactoryID,DeptID)
14、工资业务关帐表(syscloseaccount)(返回目录)
字段名
类型
长度
是否可空
缺省值
中文说明
Salarydate
Char
7
NOTNULL
工资月份
Corpid
Char
8
NOTNULL
公司代码
Deptid
Char
8
NOTNULL
部门代码
salarylevelid
Char
2
NOTNULL
工资级别
Closedate
Char
10
关帐日期
Operator
Char
10
经手人
Flag
Char
4
预留字段
说明:
该表用于控制整个工资系统是否能再能修改工资数据。
A、PrimaryKey是(salarydate,salarylevelid,corpid,deptid)
B、每月工资核算结束后关帐,就插入一条记录,关帐就不能修改工资数据
15、月考勤信息主表(Workattendancetab)(返回目录)
字段名称
字段类型
字段长度
字段说明
EmployeeID
Char
8
员工号
Name
Char
姓名
FactoryID
Char
8
分公司代码
DeptID
Char
8
部门代码
YearMonth
Char
6
考勤月份
workdays
Numeric(6,2)
工作日(天)
RealWorkDays
Numeric(6,2)
实际工作日(天)
SickLeave
Numeric(6,2)
病假(天)
ThingLeave
Numeric(6,2)
事假(天)
WedLeave
Numeric(6,2)
婚假(天)
DieLeave
Numeric(6,2)
丧假(天)
Maternity
Numeric(6,2)
产假(天)
NormalOverTime
Numeric(6,2)
有薪加班(小时)
SatSunOverTime
Numeric(6,2)
0
周六日加班(现不用)
HolidayOverTime
Numeric(6,2)
法定节假日加班(小时)
FreeOverTime
Numeric(6,2)
无薪加班(小时)
MiddleTurns
Numeric(6,2)
中夜班费
NightTurns
Numeric(6,2)
AbsentTimes
Numeric(6,2)
旷工天数(天)
LeaveEarlyTimes
Numeric(6,2)
迟到次数(现放迟到早退扣款金额)
LateTimes
Numeric(6,2)
迟到次数
BirthControl
Numeric(6,2)
节育假(天)
Remark
Char
255
备注
Sickleavesum
Numeric(6,2)
病假累计和
WedLeaveSum
Numeric(6,2)
婚假累计和
DieLeaveSum
Numeric(6,2)
丧假累计和
MaternitySum
Numeric(6,2)
产假累计和
BirthControlSum
Numeric(6,2)
节育假累计和
Sex
Char
2
性别
age
Int
2
年龄
说明:
该表为月考勤临时表,在考勤维护,检查考勤时,导入考勤数据时产生数据。
该表包含计算工资所需的相关信息资料。
通过该表与旧系统考勤数据接口。
16、考勤历史库表(hrmcheckwork)(返回目录)
字段名称
字段类型
字段长度
字段说明
Yearmonth
Char
6
年月
Employeeid
Char
8
员工号
Name
Char
12
姓名
Deptid
Char
8
部门代码
Turnout
Numeric(6,2)
实际出勤天数
Sickleave
Numeric(6,2)
病假(天)
Thingleave
Numeric(6,2)
事假(天)
Dielearve
Numeric(6,2)
丧假(天)
Maternity
Numeric(6,2)
产假(天)
Absentwork
Numeric(6,2)
旷工(天)
Saturday
Numeric(6,2)
有薪加班(小时)
Sunday
Numeric(8,2)
迟到早退扣款(金额)
Peacetime
Numeric(6,2)
法定节假日加班(小时)
Shows
Char
60
备注
Shiftsalary
Numeric(8,2)
中夜班费(金额)
Birthcontrol
Numeric(6,2)
节育假(天)
说明:
该表用于工作流审批考勤存放考勤数据。
系旧系统的表,保留不变。
A、employeeid+yearmonth为主键。
17、税率表TaxR