浙江长征职业技术学院毕业论文
项”命令,再选择顶层表单复选框。然后保存文件,再选择生成菜单选项。 4.4 系统主控表单设计
主控表单用来调用系统菜单,以形成对整个工资管理系统的控制与管理。 运行结果。如图4-4所示。
图4-4系统主控表单
本表单form的属性需做相应设置:
Show window=2 Windowstate=2 Showtips=.t.
Form 表单中的load事件代码为
Do xtcd.mpr with this ,.t. 4.5 工资录入表单设计
工资录入模块是用来录入工资记录的,在具体操作时有些数据需要自动生成。运行结果,如图4-5所示。
图4-5工资录入表
8
浙江长征职业技术学院毕业论文
Form1表单的属性如下:
Autocenter=.t. Showwindow=1 相应事件代码设置:
Txt应发工资的 Click 和gotfocus的代码如下: with this.parent
this.value=.TXT职务工资.value+.TXT综合补贴.value+.TXT出勤补.value+.TXT交通补.value+.TXT外租房补.value+.TXT补发工资.value endwith
Txt合计扣款的 Click 和gotfocus的代码如下:
with this.parent
this.value=.TXT养老保险.value+.TXT公积金.value endwith
Txt实发工资的 Click 和gotfocus的代码如下:
with this.parent
this.value=.TXT应发工资.value-.TXT合计扣款.value endwith
txt 所得税、txt实发现金的代码与其类似略去。各个按钮的功能比较简单,在此略去。
4.6 工资浏览表单设计
本表单用来对多个记录进行浏览,运行结果,如图4-6所示。
图4-6工资浏览
此表单功能较简单,其中所用控件代码,在此省略。
9
浙江长征职业技术学院毕业论文
4.7 工资修改表单设计
此表单由页框控件组成,该页框由四个页面组成。 第一个页面:对查找满足条件的记录进行修改
图4-7-1对满足条件的记录修改
第二个页面:将已查找的记录显示在屏幕上,进行修改,即单个记录的修改
图4-7-2对已找到的记录进行修改
第三个页面:批量修改已满足条件的记录,也可以修改某一字段的内容。
图4-7-3批量修改
10
浙江长征职业技术学院毕业论文
第四个页面:浏览式修改记录,在列表框中选择一个记录,在屏幕上显示选定记录的内容,可以修改记录。
图4-7-4浏览式修改
text1_Interactivechange事件代码:
set exact off
GETzgh1=ALLTRIM(thisform.pageframe1.page1.TEXT1.VALUE) GETxm1=ALLTRIM(thisform.pageframe1.page1.TEXT2.VALUE) GETrq1=thisform.pageframe1.page1.TEXT3.VALUE s=''
if len(getzgh1)>0 s=s+'职工号=GETZGH1' endif
if len(getxm1)>0
s=s+'.and.'+'姓名=GETXM1' endif
if GETRQ1<>{//} s=s+'.and.'+'DTOC(日期)=DTOC(GETRQ1)' endif if
left(s,5)='.and.'.OR.LEFT(S,5)='.AND.' s=subst(s,6) endif
IF LEN(ALLTRIM(S))=0 SET FILTER TO ELSE
set filter to &s ENDIF GO TOP
THISFORM.PAGEFRAME1.PAGE2.CAPTION=姓名+\的详细内容\THISFORM.PAGEFRAME1.PAGE1.REFRESH
THISFORM.PAGEFRAME1.PAGE2.REFRESH
Text2, Text3,Text4,的Interactivechange事件代码也类似,在此省略。
查找记录command1_Click事件代码:
11
浙江长征职业技术学院毕业论文
if not
empty(thisform.pageframe1.page1.text4.value)
n=val(alltrim(thisform.pageframe1.page1.text4.value)) go n
thisform.pageframe1.page2.setfocus
thisform.pageframe1.page2.caption=姓名+\的记录内容\ thisform.refresh else
set exact off
GETzgh1=ALLTRIM(thisform.pageframe1.page1.TEXT1.VALUE) GETxm1=ALLTRIM(thisform.pageframe1.page1.TEXT2.VALUE) GETrq1=thisform.pageframe1.page1.TEXT3.VALUE s=''
if len(getzgh1)>0 s=s+'职工号=GETZGH1' endif
if len(getxm1)>0
s=s+'.and.'+'姓名=GETXM1' endif
if GETRQ1<>{//} s=s+'.and.'+'DTOC(日
期)=DTOC(GETRQ1)' endif if
left(s,5)='.and.'.OR.LEFT(S,5)='.AND.' s=subst(s,6) endif
IF LEN(ALLTRIM(S))=0 SET FILTER TO ELSE
set filter to &s ENDIF GO TOP endif
THISFORM.PAGEFRAME1.PAGE2.CAPTION=姓名+\的详细内容\THISFORM.PAGEFRAME1.PAGE1.REFRESH
THISFORM.PAGEFRAME1.PAGE2.REFRESH
删除记录command2_Click事件代码:
INOTICE=MESSAGEBOX(\确定删除指定的记录吗?\重要提示\
IF INOTICE=1
DELETE RECORD RECNO() ANOTICE=MESSAGEBOX(\确定物理删除指定的记录
吗?\一经删除,不能恢复!!!\重要提示\ IF ANOTICE=1
12