📄 frmexpensesae.frm
字号:
VERSION 5.00
Object = "{86CF1D34-0C5F-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCT2.OCX"
Begin VB.Form frmExpensesAE
BorderStyle = 1 'Fixed Single
Caption = "Expenses"
ClientHeight = 2520
ClientLeft = 45
ClientTop = 435
ClientWidth = 5700
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 2520
ScaleWidth = 5700
StartUpPosition = 2 'CenterScreen
Begin VB.CommandButton cmdSave
Caption = "Save"
Height = 315
Left = 2700
TabIndex = 5
Top = 1890
Width = 1335
End
Begin VB.CommandButton cmdCancel
Caption = "Cancel"
Height = 315
Left = 4155
TabIndex = 4
Top = 1905
Width = 1335
End
Begin VB.CommandButton cmdUsrHistory
Caption = "Modification History"
Height = 315
Left = 270
TabIndex = 3
Top = 1920
Width = 1680
End
Begin VB.TextBox txtEntry
Height = 285
Index = 1
Left = 1650
TabIndex = 2
Top = 690
Width = 1815
End
Begin VB.TextBox txtEntry
Height = 285
Index = 2
Left = 1650
TabIndex = 1
Top = 1020
Width = 3885
End
Begin VB.TextBox txtEntry
Height = 285
Index = 3
Left = 1650
TabIndex = 0
Top = 1350
Width = 1425
End
Begin Inventory.ctrlLiner ctrlLiner1
Height = 30
Left = 90
TabIndex = 6
Top = 1770
Width = 5535
_ExtentX = 9763
_ExtentY = 53
End
Begin MSComCtl2.DTPicker dtpDate
Height = 285
Left = 1650
TabIndex = 11
Top = 330
Width = 1815
_ExtentX = 3201
_ExtentY = 503
_Version = 393216
Format = 44695553
CurrentDate = 39160
End
Begin VB.Label Label1
Alignment = 1 'Right Justify
Caption = "Date"
Height = 285
Left = 450
TabIndex = 10
Top = 360
Width = 1095
End
Begin VB.Label Label2
Alignment = 1 'Right Justify
Caption = "Expense Type"
Height = 285
Left = 450
TabIndex = 9
Top = 690
Width = 1095
End
Begin VB.Label Label3
Alignment = 1 'Right Justify
Caption = "Details"
Height = 285
Left = 450
TabIndex = 8
Top = 1020
Width = 1095
End
Begin VB.Label Label4
Alignment = 1 'Right Justify
Caption = "Amount"
Height = 285
Left = 450
TabIndex = 7
Top = 1350
Width = 1095
End
End
Attribute VB_Name = "frmExpensesAE"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Public State As FormState 'Variable used to determine on how the form used
Public PK As Long 'Variable used to get what record is going to edit
Dim HaveAction As Boolean 'Variable used to detect if the user perform some action
Dim rs As New Recordset
Private Sub DisplayForEditing()
On Error GoTo errHandler
With rs
dtpDate.Value = .Fields("Date")
txtEntry(1).Text = .Fields("ExpenseType")
txtEntry(2).Text = .Fields("Details")
txtEntry(3).Text = toMoney(.Fields("Amount"))
End With
txtEntry(0).SetFocus
Exit Sub
errHandler:
If erR.Number = 94 Then Resume Next
End Sub
Private Sub cmdCancel_Click()
Unload Me
End Sub
Private Sub ResetFields()
clearText Me
txtEntry(1).Text = ""
txtEntry(2).Text = ""
txtEntry(3).Text = ""
dtpDate.SetFocus
End Sub
Private Sub cmdPH_Click()
'frmInvoiceViewer.CUS_PK = PK
'frmInvoiceViewer.Caption = "Purchase History Viewer"
'frmInvoiceViewer.lblTitle.Caption = "Purchase History Viewer"
'frmInvoiceViewer.show vbModal
End Sub
Private Sub CmdSave_Click()
On Error GoTo erR
If Trim(txtEntry(1).Text) = "" Then Exit Sub
If State = adStateAddMode Or State = adStatePopupMode Then
rs.AddNew
rs.Fields("AddedByFK") = CurrUser.USER_PK
Else
rs.Fields("DateModified") = Now
rs.Fields("LastUserFK") = CurrUser.USER_PK
End If
With rs
.Fields("Date") = dtpDate.Value
.Fields("ExpenseType") = txtEntry(1).Text
.Fields("Details") = txtEntry(2).Text
.Fields("Amount") = txtEntry(3).Text
.Update
End With
HaveAction = True
If State = adStateAddMode Then
MsgBox "New record has been successfully saved.", vbInformation
If MsgBox("Do you want to add another new record?", vbQuestion + vbYesNo) = vbYes Then
ResetFields
Else
Unload Me
End If
ElseIf State = adStatePopupMode Then
MsgBox "New record has been successfully saved.", vbInformation
Unload Me
Else
MsgBox "Changes in record has been successfully saved.", vbInformation
Unload Me
End If
Exit Sub
erR:
' If err.Number = -2147217887 Then Resume Next
MsgBox "Error: " & erR.Description & vbCr _
& "Form: frmExpensesAE" & vbCr _
& "Sub: cmdSave_Click", vbExclamation
End Sub
Private Sub cmdUsrHistory_Click()
On Error Resume Next
Dim tDate1 As String
Dim tDate2 As String
Dim tUser1 As String
Dim tUser2 As String
tDate1 = Format$(rs.Fields("DateAdded"), "MMM-dd-yyyy HH:MM AMPM")
tDate2 = Format$(rs.Fields("DateModified"), "MMM-dd-yyyy HH:MM AMPM")
tUser1 = getValueAt("SELECT PK,CompleteName FROM tbl_SM_Users WHERE PK = " & rs.Fields("AddedByFK"), "CompleteName")
tUser2 = getValueAt("SELECT PK,CompleteName FROM tbl_SM_Users WHERE PK = " & rs.Fields("LastUserFK"), "CompleteName")
MsgBox "Date Added: " & tDate1 & vbCrLf & _
"Added By: " & tUser1 & vbCrLf & _
"" & vbCrLf & _
"Last Modified: " & tDate2 & vbCrLf & _
"Modified By: " & tUser2, vbInformation, "Modification History"
tDate1 = vbNullString
tDate2 = vbNullString
tUser1 = vbNullString
tUser2 = vbNullString
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{TAB}"
End If
End Sub
Private Sub Form_Load()
rs.CursorLocation = adUseClient
rs.Open "SELECT * FROM Expenses WHERE ExpenseID = " & PK, CN, adOpenStatic, adLockOptimistic
'Check the form state
If State = adStateAddMode Or State = adStatePopupMode Then
Caption = "Create New Entry"
cmdUsrHistory.Enabled = False
Else
Caption = "Edit Entry"
DisplayForEditing
'cmdPH.Enabled = True
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
If HaveAction = True Then
If State = adStateAddMode Or State = adStateEditMode Then
frmExpenses.RefreshRecords
End If
End If
Set frmExpensesAE = Nothing
End Sub
Private Sub txtEntry_GotFocus(Index As Integer)
HLText txtEntry(Index)
End Sub
Private Sub txtEntry_KeyPress(Index As Integer, KeyAscii As Integer)
If Index = 3 Then KeyAscii = isNumber(KeyAscii)
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -