Access培訓
網站公告
·Access快速平臺QQ群號:84825014    ·Access快速開發平臺下載地址及教程    ·歡迎添加微信交流賬號:AccessoftChu    ·如何快速搜索本站文章|示例|資料    
您的位置: 首頁 > 技術文章 > Access開發平臺

關于Access快速開發平臺審核權限的代碼優化

時 間:2020-01-22 09:53:27
作 者:Victor Duane   ID:70  城市:閔行
摘 要:優化了審核權限與撤消審核權限按鈕代碼,集成權限管理。
正 文:

Private Sub btnAudit_Click()
    UpdData Me.btnAudit
    Call CurrentPermissions
End Sub

Private Sub btnUndoAudit_Click()
    UpdData Me.btnUndoAudit
    Call CurrentPermissions
End Sub

Private Sub Form_Load()
    ApplyTheme Me
    LoadLocalLanguage Me
    
    If Nz(Me.OpenArgs) <> "" Then
        LoadRecord Me, "Select * FROM [tbl考勤賬套設置] Where [ID]=" & Nz(Me.OpenArgs, 0)
    End If

    If Me.DataEntry Then
        Me![ID] = Null
        Me.Creator = myNickName
    End If
'    Me.btnSave.Enabled = Me.AllowEdits
    Call CurrentPermissions
End Sub


Public Sub CurrentPermissions()
    Me.btnAudit.Enabled = False
    Me.btnUndoAudit.Enabled = False
    Me.btnSave.Enabled = Me.AllowEdits
    
    If Nz(Me.OpenArgs) <> "" Then
        If Me.關賬 Then
            EnableButton Me.btnUndoAudit, HasPermission("考勤賬套設置", "Undo Audit")
            Me.btnSave.Enabled = False
        Else
            EnableButton Me.btnAudit, HasPermission("考勤賬套設置", "Audit")
        End If
    End If
    
End Sub
Public Sub UpdData(ctl As Control)
    Dim UpdDataFlag As Boolean
    Dim strSQL As String
    Dim strMsg As String
    
    Dim blnBook As Boolean
    Dim dtmLastSaveTime As Date
    Dim strLastSaveBy As String
    
    UpdDataFlag = ctl.Enabled
    
    dtmLastSaveTime = Now
    strLastSaveBy = myNickName
    
    If ctl.Name = "btnAudit" Then
        blnBook = True
        strMsg = "該期間的考勤數據即將通過審核," & vbCrLf _
                & "通過審核后,當期考勤數據將不能修改," & vbCrLf _
                & "是否通過審核?"
    ElseIf ctl.Name = "btnUndoAudit" Then
        blnBook = False
        strMsg = "該期間的考勤數據即將撤消審核," & vbCrLf _
                & "撤消審核后,當期考勤數據將可以修改," & vbCrLf _
                & "是否撤消審核?"
    End If
    
    strSQL = "Update tbl考勤賬套設置 " _
        & " SET 關賬 = " & blnBook & ", LastSaveTime =#" & dtmLastSaveTime & "# , LastSaveBy = '" & myNickName & "'" _
        & " Where [ID]=" & Nz(Me![ID], 0)
        
    If UpdDataFlag Then
        If MsgBox(strMsg, vbOKCancel + vbInformation, "提示") = vbOK Then
            CurrentDb.Execute strSQL
            MsgBox "數據修改成功!", vbOKOnly + vbInformation, "提示"
            Me.關賬 = blnBook
            Me.LastSaveBy = strLastSaveBy
            Me.LastSaveTime = dtmLastSaveTime
        End If
    End If
    
End Sub




Access快速開發平臺QQ群 (群號:239158550)       access源碼網店

最新評論 查看更多評論(1)

2020/1/22 13:06:56丘蘇洲
我也在寫考勤,邏輯運算性能一直突破不了0.45秒一個人。多有空多交流。

發表評論您的評論將提升作者分享的動力!快來評論一下吧!

用戶名:
密 碼:
內 容:
 

常見問答

技術分類

相關資源

關于我們 | 服務條款 | 在線投稿 | 友情鏈接 | 網站統計 | 網站幫助