北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |
我目前利用平台编写了一个人事管理软件,但是在编写员工调动的过程中,发现设置的代码虽然能实现调动,但不能再调动表里实现新增,也就是说,比如我新增加了一个调动编号为201203001关于张三的调动,然后我又要对李四进行调动时,问题出现了,李四的调动竟然在原来张三的记录基础上进行更改,而不是另起一行,形成新的记录。
搞了几天了,就搞不好,请高手指导呀!给个实例。
代码如下:
Option Compare Database
Private Sub frm调动_AfterUpdate()
'选项组的值 不选(0),1,2
On Error GoTo err_frm
If Not IsNull(Me.工号) Then
If Me.frm调动.Value = 1 Then
Me.调前部门 = DLookup("[bmcode]", "tblyg", "[ygID] like '" & Me.工号 & "'")
Me.调前部门.Locked = True
Me.调后部门.Locked = False
Me.调前岗位.Locked = True
Me.调后岗位.Locked = True
Me.调前部门.BackColor = 14540253
Me.调后部门.BackColor = -2147483643
Me.调前岗位.BackColor = 14540253
Me.调后岗位.BackColor = 14540253
Me.调前岗位 = Null
Me.调后岗位 = Null
ElseIf Me.frm调动.Value = 2 Then
Me.调前岗位 = DLookup("[gwID]", "tblyg", "[ygID] like '" & Me.工号 & "'")
Me.调前岗位.Locked = True
Me.调后岗位.Locked = False
Me.调前部门.Locked = True
Me.调后部门.Locked = True
Me.调前岗位.BackColor = 14540253
Me.调后岗位.BackColor = -2147483643
Me.调前部门.BackColor = 14540253
Me.调后部门.BackColor = 14540253
Me.调前部门 = Null
Me.调后部门 = Null
End If
Else
Me.frm调动.Value = 0
MsgBox "请先选择要调动人员.", vbInformation + vbOKOnly
End If
exit_frm:
Exit Sub
err_frm:
MsgBox Err.Description
Resume exit_frm
End Sub
Private Sub lblOpen_Click()
On Error GoTo err_lblOpen:
DoCmd.OpenForm "frmygxmxz", acNormal, , , , acDialog
If strname <> "" Then
Me.工号 = strname
Me.工号.Locked = True
Me.姓名.Locked = True
Me.工号.BackColor = -2147483633
Me.姓名.BackColor = -2147483633
' MsgBox strName
End If
exit_lblOpen:
Exit Sub
err_lblOpen:
MsgBox Err.Description
Resume exit_lblOpen
End Sub
Private Sub lblSave_Click()
On Error GoTo err_lblSave
If Not IsNull(Me.工号) Then
DoCmd.RunCommand acCmdSave
DoCmd.SetWarnings False
If Me.调后部门 <> "" And Me.调后岗位 <> "" Then
DoCmd.RunSQL "update tblyg set [bmCODE]= '" & Me.调后部门 & "',[gwID]='" & Me.调后岗位 & "'" & _
" where [ygID] like '" & Me.工号 & "'"
ElseIf Me.调后部门 <> "" Then
DoCmd.RunSQL "update tblyg set [bmCODE]= '" & Me.调后部门 & "' where [ygID] like '" & Me.工号 & "'"
ElseIf Me.调后岗位 <> "" Then
DoCmd.RunSQL "update tblyg set [gwID]= '" & Me.调后岗位 & "'where [ygID] like '" & Me.工号 & "'"
End If
DoCmd.SetWarnings True
DoCmd.Close
Else
MsgBox "没有更改,不能保存!", vbInformation + vbOKOnly
DoCmd.Close
End If
exit_lblSave:
Exit Sub
err_lblSave:
MsgBox Err.Description
Resume exit_lblSave
End Sub