工资管理系统设计方案.docx

上传人:b****7 文档编号:15681846 上传时间:2023-07-06 格式:DOCX 页数:73 大小:196.09KB
下载 相关 举报
工资管理系统设计方案.docx_第1页
第1页 / 共73页
工资管理系统设计方案.docx_第2页
第2页 / 共73页
工资管理系统设计方案.docx_第3页
第3页 / 共73页
工资管理系统设计方案.docx_第4页
第4页 / 共73页
工资管理系统设计方案.docx_第5页
第5页 / 共73页
工资管理系统设计方案.docx_第6页
第6页 / 共73页
工资管理系统设计方案.docx_第7页
第7页 / 共73页
工资管理系统设计方案.docx_第8页
第8页 / 共73页
工资管理系统设计方案.docx_第9页
第9页 / 共73页
工资管理系统设计方案.docx_第10页
第10页 / 共73页
工资管理系统设计方案.docx_第11页
第11页 / 共73页
工资管理系统设计方案.docx_第12页
第12页 / 共73页
工资管理系统设计方案.docx_第13页
第13页 / 共73页
工资管理系统设计方案.docx_第14页
第14页 / 共73页
工资管理系统设计方案.docx_第15页
第15页 / 共73页
工资管理系统设计方案.docx_第16页
第16页 / 共73页
工资管理系统设计方案.docx_第17页
第17页 / 共73页
工资管理系统设计方案.docx_第18页
第18页 / 共73页
工资管理系统设计方案.docx_第19页
第19页 / 共73页
工资管理系统设计方案.docx_第20页
第20页 / 共73页
亲,该文档总共73页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

工资管理系统设计方案.docx

《工资管理系统设计方案.docx》由会员分享,可在线阅读,更多相关《工资管理系统设计方案.docx(73页珍藏版)》请在冰点文库上搜索。

工资管理系统设计方案.docx

工资管理系统设计方案

工资管理系统设计方案

一、需求分析:

二、数据结构:

 

表名:

HISTORYDATA.DBF作用:

历史数据

字段名称

数据类型

长度

小数位数

中文注释

BM_ID

Character

3

部门编号

ZG_ID

Character

6

职工编号

ZGXM

Character

10

职工姓名

JBGZ

Numeric

8

2

基本工资

JIAOLIN

Integer

4

教龄

TIETEN

Numeric

6

2

贴10

JIATIE

Numeric

6

价贴

DIPU

Numeric

6

1

地补

CHETIE

Numeric

6

2

车贴

DUSHEN

Numeric

6

1

独生

FANGTIE

Numeric

6

1

房贴

CHUNTIE

Numeric

6

1

纯贴

GANGTIE

Numeric

6

岗贴

SHUBAOFEI

Numeric

6

书报费

JIAOTIE

Integer

4

教贴

TIETHIRTY

Numeric

6

贴30

YITIE

Integer

4

医贴

GONGTIE

Integer

4

工贴

QITA

Numeric

6

其他

YINGFA

Numeric

8

2

应发

HUIFEI

Numeric

6

2

会费

XIANXUE

Integer

4

献血

GONGJIJIN

Numeric

8

2

公积金

YAOLAOJIN

Numeric

8

2

养老金

SUODESUI

Numeric

6

2

所得税

YIBAO

Numeric

6

1

医保

SHIBAO

Numeric

6

1

失保

QITATWO

Numeric

8

2

扣其他

GONGKOU

Numeric

8

2

共扣

SHIFA

Numeric

8

2

实发

ENTDATE

Date

8

编辑日期

OPERATOR

Character

10

操作员

 

表名:

PAUSECASH.DBF作用:

职工停发表(用于存放暂时停发工资的职工数据)

字段名称

数据类型

长度

小数位数

中文注释

BM_ID

Character

3

部门编号

ZG_ID

Character

6

职工编号

ZGXM

Character

10

职工姓名

JBGZ

Numeric

8

2

基本工资

JIAOLIN

Integer

4

教龄

TIETEN

Numeric

6

2

贴10

JIATIE

Numeric

6

价贴

DIPU

Numeric

6

1

地补

CHETIE

Numeric

6

2

车贴

DUSHEN

Numeric

6

1

独生

FANGTIE

Numeric

6

1

房贴

CHUNTIE

Numeric

6

1

纯贴

GANGTIE

Numeric

6

岗贴

SHUBAOFEI

Numeric

6

书报费

JIAOTIE

Integer

4

教贴

TIETHIRTY

Numeric

6

贴30

YITIE

Integer

4

医贴

GONGTIE

Integer

4

工贴

QITA

Numeric

6

其他

YINGFA

Numeric

8

2

应发

HUIFEI

Numeric

6

2

会费

XIANXUE

Integer

4

献血

GONGJIJIN

Numeric

8

2

公积金

YAOLAOJIN

Numeric

8

2

养老金

SUODESUI

Numeric

6

2

所得税

YIBAO

Numeric

6

1

医保

SHIBAO

Numeric

6

1

失保

QITATWO

Numeric

8

2

扣其他

GONGKOU

Numeric

8

2

共扣

SHIFA

Numeric

8

2

实发

ENTDATE

Date

8

编辑日期

OPERATOR

Character

10

操作员

表名:

GSINFO.DBF作用:

使用单位的情况

字段名称

数据类型

长度

小数位数

中文注释

COMPNM

Character

40

公司名称

ADDRESS

Character

40

公司地址

TELPHONE

Character

10

电话号码

ENTDATE

Date

8

编辑日期

OPERATOR

Character

10

操作员

表名:

DEPART.DBF作用:

部门情况表

字段名称

数据类型

长度

小数位数

中文注释

BM_ID

Character

3

部门编号

BM_NAME

Character

20

部门名称

BM_LEADER

Character

10

负责人

ENTDATE

Date

8

编辑日期

OPERATOR

Character

10

操作员

 

表名:

EMPLOYEE.DBF作用:

职工情况表

字段名称

数据类型

长度

小数位数

中文注释

BM_ID

Character

3

部门编号

ZG_ID

Character

6

职工编号

ZGXM

Character

10

职工姓名

DUTY

Character

20

职务

ISUSED

Logical

1

是否停发

ENTDATE

Date

8

编辑日期

OPERATOR

Character

10

操作员

 

表名:

GZDATA作用:

当月数据表

字段名称

数据类型

长度

小数位数

中文注释

BM_ID

Character

3

部门编号

ZG_ID

Character

6

职工编号

ZGXM

Character

10

职工姓名

JBGZ

Numeric

8

2

基本工资

JIAOLIN

Integer

4

教龄

TIETEN

Numeric

6

2

贴10

JIATIE

Numeric

6

价贴

DIPU

Numeric

6

1

地补

CHETIE

Numeric

6

2

车贴

DUSHEN

Numeric

6

1

独生

FANGTIE

Numeric

6

1

房贴

CHUNTIE

Numeric

6

1

纯贴

GANGTIE

Numeric

6

岗贴

SHUBAOFEI

Numeric

6

书报费

JIAOTIE

Integer

4

教贴

TIETHIRTY

Numeric

6

贴30

YITIE

Integer

4

医贴

GONGTIE

Integer

4

工贴

QITA

Numeric

6

其他

YINGFA

Numeric

8

2

应发

HUIFEI

Numeric

6

2

会费

XIANXUE

Integer

4

献血

GONGJIJIN

Numeric

8

2

公积金

YAOLAOJIN

Numeric

8

2

养老金

SUODESUI

Numeric

6

2

所得税

YIBAO

Numeric

6

1

医保

SHIBAO

Numeric

6

1

失保

QITATWO

Numeric

8

2

扣其他

GONGKOU

Numeric

8

2

共扣

SHIFA

Numeric

8

2

实发

ENTDATE

Date

8

编辑日期

OPERATOR

Character

10

操作员

表名:

USERTABLE.DBF作用:

用户表

字段名称

数据类型

长度

小数位数

中文注释

USER_ID

Integer

4

用户编号

USERNM

Character

10

用户名

PASSWORD

Character

10

密码

LEVEL

Numeric

1

用户级别

ENTDATE

Date

8

编辑日期

OPERATOR

Character

10

操作员

 

表名:

AUTOFIELD.DBF作用:

编号增加表

字段名称

数据类型

长度

小数位数

中文注释

BM_ID

Numeric

3

当前部门编号

 

表名:

FIELDCOVERT.DBF作用:

字段对应表

字段名称

数据类型

长度

小数位数

中文注释

CHINAFIELD

Character

10

字段中文名

FIELDNM

Character

10

字段名

 

表名:

KOUJIAN.DBF作用:

职工收入计算个人调节税应扣减的金额

字段名称

数据类型

长度

小数位数

中文注释

KOUJIAN

Numeric

7

2

扣减额度

 

表名:

TAXSET.DBF作用:

个人调节税率表

字段名称

数据类型

长度

小数位数

中文注释

TAX_ID

Integer

4

序号

LIMITUP

Numeric

7

上限

LIMITDOWN

Numeric

7

下限

TAX

Numeric

2

税率

QUICKJE

Numeric

5

速算扣除数

ENTDATE

Date

8

编辑日期

OPERATOR

Character

10

操作员

 

三、程序源代码:

本程序大量使用了封装类,类的定义如下:

类存放在..\classlibs\myclass.vcx中

appform类:

  增加了一个属性opcode,其作用是来标识操作,它有以下几个值供选择

  1-增加,2-修改,3-查询(默认)

appeditbutton类:

 

自定义公共属性:

mainalias—作用工作表,refreshobj—刷新对象,setfocusobj—默认焦点位置

自定义公共方法:

OnOffBtn—打开或关闭相关的按钮,代码如下:

LPARAMETERSmyselect

DOCASE

CASEmyselect=1&&初始状态

This.CmdAdd.Enabled=.T.

This.CmdModi.Enabled=.T.

This.CmdFind.Enabled=.T.

This.CmdDel.Enabled=.T.

This.CmdSave.Enabled=.F.

This.CmdCancel.Enabled=.F.

CASEmyselect=2&&修改状态

This.CmdAdd.Enabled=.F.

This.CmdModi.Enabled=.F.

This.CmdDel.Enabled=.F.

This.CmdFind.Enabled=.T.

This.CmdSave.Enabled=.T.

This.CmdCancel.Enabled=.T.

ENDCASE

按钮<(F2)新增>Click事件

**********************

*定义几个局部变量

*mytest&&是否使用了缓冲

*oldsele&&原工作表区

*objrefresh&&要更新是表单对像

*tblmainalias&&作用工作表名

*objfoucs&&获得焦点的对象

********************

*测试是否使用了缓冲*

********************

mytest=CURSORGETPROP("Buffering")

IFINLIST(mytest,0,1)

=MessageBox("使用本自定义类必须使用数据缓冲"+CHR(13)+CHR(13)+"请在数据环境中设置",16,"提示")

RETURN

ENDIF

Localoldsele,objrefresh

******************************

*根据表单中定义的各种属性

*将这些属性加入至临时对象

******************************

oldsele=SELECT()

objrefresh=This.Parent.refreshobj

tblmain=This.Parent.mainalias

objfocus=This.Parent.setfocusobj

********************

*自动设置有关的属性*

********************

IFTYPE("ThisFormSet")="U"

ThisForm.opcode=1

ELSE

ThisFormSet.opcode=1

ENDIF

********************

*打开或关闭有关按钮*

********************

This.Parent.OnOffbtn

(2)

****************

*增加一条新记录*

****************

SELECT(tblmain)

APPENDBLAN

&objrefresh..Refresh

&objfocus..SetFocus

SELECT(oldsele)

按钮<(F3)修改>Click事件

*定义几个局部变量

*mytest&&是否使用了缓冲

*oldsele&&原工作表区

*objrefresh&&要更新是表单对像

*tblmainalias&&作用工作表名

*objfoucs&&获得焦点的对象

********************

*测试是否使用了缓冲*

********************

mytest=CURSORGETPROP("Buffering")

IFINLIST(mytest,0,1)

=MessageBox("使用本自定义类必须使用数据缓冲"+CHR(13)+CHR(13)+"请在数据环境中设置",16,"提示")

RETURN

ENDIF

Localoldsele,objrefresh

******************************

*根据表单中定义的各种属性

*将这些属性加入至临时对象

******************************

oldsele=SELECT()

objrefresh=This.Parent.refreshobj

tblmain=This.Parent.mainalias

objfocus=This.Parent.setfocusobj

********************

*自动设置有关的属性*

********************

IFTYPE("ThisFormSet")="U"

ThisForm.opcode=2

ELSE

ThisFormSet.opcode=2

ENDIF

********************

*打开或关闭有关按钮*

********************

This.Parent.OnOffbtn

(2)

****************

*增加一条新记录*

****************

SELECT(tblmain)

&objrefresh..Refresh

&objfocus..SetFocus

SELECT(oldsele)

按钮<(F4)删除>Click事件

**********************

*定义几个局部变量

*mytest&&是否使用了缓冲

*oldsele&&原工作表区

*objrefresh&&要更新是表单对像

*tblmainalias&&作用工作表名

*objfoucs&&获得焦点的对象

********************

*测试是否使用了缓冲*

********************

mytest=CURSORGETPROP("Buffering")

IFINLIST(mytest,0,1)

=MessageBox("使用本自定义类必须使用数据缓冲"+CHR(13)+CHR(13)+"请在数据环境中设置",16,"提示")

RETURN

ENDIF

Localoldsele,objrefresh

******************************

*根据表单中定义的各种属性

*将这些属性加入至临时对象

******************************

oldsele=SELECT()

objrefresh=This.Parent.refreshobj

tblmain=This.Parent.mainalias

objfocus=This.Parent.setfocusobj

**************

*删除一条记录*

**************

SELECT(tblmain)

result=MessageBox("确定要删除这条记录吗?

",32+4+256,"提示")

IFresult=6THEN

DELETE

=TableUpdate(.F.)

ENDIF

********************

*自动设置有关的属性*

********************

IFTYPE("ThisFormSet")="U"

ThisForm.opcode=3

ELSE

ThisFormSet.opcode=3

ENDIF

&objrefresh..Refresh

SELECT(oldsele)

按钮<(F6)保存>Click事件

**********************

*定义几个局部变量

*mytest&&是否使用了缓冲

*oldsele&&原工作表区

*objrefresh&&要更新是表单对像

*tblmainalias&&作用工作表名

*objfoucs&&获得焦点的对象

********************

*测试是否使用了缓冲*

********************

mytest=CURSORGETPROP("Buffering")

IFINLIST(mytest,0,1)

=MessageBox("使用本自定义类必须使用数据缓冲"+CHR(13)+CHR(13)+"请在数据环境中设置",16,"提示")

RETURN

ENDIF

Localoldsele,objrefresh

******************************

*根据表单中定义的各种属性

*将这些属性加入至临时对象

******************************

oldsele=SELECT()

objrefresh=This.Parent.refreshobj

tblmain=This.Parent.mainalias

objfocus=This.Parent.setfocusobj

******************

*保存编辑过的记录*

******************

SELECT(tblmain)

result=MessageBox("确定要保存所做的修改吗?

",32+4,"提示")

IFresult=6THEN

********************

*自动设置有关的属性*

********************

IFTYPE("ThisFormSet")="U"

ThisForm.opcode=3

ELSE

ThisFormSet.opcode=3

ENDIF

********************

*打开或关闭有关按钮*

********************

This.Parent.OnOffbtn

(1)

=TableUpdate(.T.)

&objrefresh..Refresh

ENDIF

SELECT(oldsele)

按钮<(F7)放弃>Click事件

**********************

*定义几个局部变量

*mytest&&是否使用了缓冲

*oldsele&&原工作表区

*objrefresh&&要更新是表单对像

*tblmainalias&&作用工作表名

*objfoucs&&获得焦点的对象

********************

*测试是否使用了缓冲*

********************

mytest=CURSORGETPROP("Buffering")

IFINLIST(mytest,0,1)

=MessageBox("使用本自定义类必须使用数据缓冲"+CHR(13)+CHR(13)+"请在数据环境中设置",16,"提示")

RETURN

ENDIF

Localoldsele,objrefresh

******************************

*根据表单中定义的各种属性

*将这些属性加入至临时对象

******************************

oldsele=SELECT()

objrefresh=This.Parent.refreshobj

tblmain=This.Parent.mainalias

objfocus=This.Parent.setfocusobj

****************

*增加一条新记录*

****************

SELECT(tblmain)

result=MessageBox("确定要放弃所做的修改吗?

",32+4+256,"提示")

IFresult=6

=TableRevert(.T.)

********************

*自动设置有关的属性*

********************

IFTYPE("ThisFormSet")="U"

IFThisForm.opcode=1

GOTOBOTTOM

ENDIF

ThisForm.opcode=3

ELSE

IFThisFormSet.opcode=1

GOTOBOTTOM

ENDIF

ThisFormSet.opcode=3

ENDIF

&objrefresh..Refresh

*****************

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2