📄 frmclientproject.frm
字号:
Private Sub DataEditGrid1_Dirty(Index As Integer)
EnableToolbar True
End Sub
Private Sub DataEditGrid1_FetchColumnSetup(Index As Integer, ColName As String, ControlType As FieldControlType, ComboMaskList As String, Alignment As FieldControlAlign, Hidden As Boolean, AutoNumber As Boolean)
Select Case Index
Case 0
Select Case ColName
Case "ProjectID"
Hidden = True
End Select
Dim vProjTimeCardHour As New ProjTimeCardHour
Select Case ColName
Case "BillableHours"
ColName = "发货期数"
AutoNumber = False
Alignment = 2
Case "BillingRate"
ColName = "每期发货数"
AutoNumber = False
Alignment = 2
Case "ProjectID"
ColName = "合同编号"
AutoNumber = False
Alignment = 1
ControlType = fcComboBx
ComboMaskList = vProjTimeCardHour.GetProjectsList
Case "TimeCardDetailID"
ColName = "发货单编码"
AutoNumber = True
Alignment = 1
Case "TimeCardID"
ColName = "合同记录编号"
AutoNumber = False
Alignment = 2
ControlType = fcComboBx
ComboMaskList = vProjTimeCardHour.GetTimeCardsList
Case "WorkCodeID"
ColName = "签字级别"
AutoNumber = False
Alignment = 1
ControlType = fcComboBx
ComboMaskList = vProjTimeCardHour.GetWorkCodesList
Case "WorkDescription"
ColName = "备注"
AutoNumber = False
Alignment = 0
Case "DateWorked"
ColName = "发货日期"
AutoNumber = False
Alignment = 1
ControlType = fcDateTimePick
End Select
Case 1
Select Case ColName
Case "ProjectID"
Hidden = True
End Select
Dim vProjTimeCardExpense As New ProjTimeCardExpense
Select Case ColName
Case "ExpenseAmount"
ColName = "销售金额"
AutoNumber = False
Alignment = 2
Case "ExpenseCodeID"
ColName = "运输方式"
AutoNumber = False
Alignment = 0
ControlType = fcComboBx
ComboMaskList = vProjTimeCardExpense.GetExpenseCodesList
Case "ExpenseDescription"
ColName = "备注"
AutoNumber = False
Alignment = 0
Case "ProjectID"
ColName = "合同编号"
AutoNumber = False
Alignment = 2
ControlType = fcComboBx
ComboMaskList = vProjTimeCardExpense.GetProjectsList
Case "TimeCardExpenseID"
ColName = "发票编号"
AutoNumber = True
Alignment = 2
Case "TimeCardID"
ColName = "合同记录编号"
AutoNumber = False
Alignment = 2
ControlType = fcComboBx
ComboMaskList = vProjTimeCardExpense.GetTimeCardsList
Case "ExpenseDate"
ColName = "开票日期"
AutoNumber = False
Alignment = 1
ControlType = fcDateTimePick
End Select
Case 2
Select Case ColName
Case "ProjectID"
Hidden = True
End Select
Dim vPayment As New Payment
Select Case ColName
Case "CardholdersName"
ColName = "持卡人姓名"
AutoNumber = False
Alignment = 0
Case "CreditCardNumber"
ColName = "信用卡号"
AutoNumber = False
Alignment = 0
Case "PaymentAmount"
ColName = "付款金额"
AutoNumber = False
Alignment = 2
Case "PaymentID"
ColName = "发票编号"
AutoNumber = True
Alignment = 2
Case "PaymentMethodID"
ColName = "付款银行"
AutoNumber = False
Alignment = 0
ControlType = fcComboBx
ComboMaskList = vPayment.GetPaymentMethodsList
Case "ProjectID"
ColName = "合同编号"
AutoNumber = False
Alignment = 1
ControlType = fcComboBx
ComboMaskList = vPayment.GetProjectsList
Case "CreditCardExpDate"
ColName = "付款日期"
AutoNumber = False
Alignment = 1
ControlType = fcDateTimePick
Case "PaymentDate"
ColName = "开票日期"
AutoNumber = False
Alignment = 1
ControlType = fcDateTimePick
End Select
End Select
End Sub
Private Sub Form_Activate()
m_Toolbar.Activate m_Guid
End Sub
Private Sub Form_Load()
Dim vClientProject As New ClientProject, strCombo As String
m_Guid = GUID
m_Toolbar.Attach Me, m_Guid
tabListview_Click 0
ThinBorder DataEditGrid1(0).hwnd, False
ThinBorder DataEditGrid1(1).hwnd, False
ThinBorder DataEditGrid1(2).hwnd, False
CaptionBar1.Caption = Caption
Set CaptionBar1.Picture = Me.Icon
strCombo = vClientProject.GetClientsList
FillCombo ClientID, strCombo
ClientID.Tag = strCombo
strCombo = vClientProject.GetEmployeesList
FillCombo EmployeeID, strCombo
EmployeeID.Tag = strCombo
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If m_EnableAttr And tbSave Then
Select Case MsgBox("Record has been changed. Do you want To save it?" _
, vbYesNoCancel + vbQuestion)
Case vbYes
m_ClientProject.Save
Case vbNo
Case vbCancel
Cancel = True
End Select
End If
End Sub
Private Sub Form_Resize()
On Error Resume Next
If Me.WindowState <> vbMinimized Then
With CaptionBar1
.Move 0, .Top, Me.ScaleWidth, .height
End With
With tabListview
.Left = 0
.Top = (ProjectBeginDate.Top + ProjectBeginDate.height + 100)
.height = Me.ScaleHeight - .Top
.width = Me.ScaleWidth
DataEditGrid1(0).Move 100, 100, .width - 200, .height - 450
DataEditGrid1(1).Move 100, 100, .width - 200, .height - 450
DataEditGrid1(2).Move 100, 100, .width - 200, .height - 450
End With
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
m_Toolbar.Detach m_Guid
End Sub
Private Sub LoadFormView()
On Error GoTo Err_LoadFormView
Dim vItem As Object, frmX As Object, aClientProject As ClientProject
Set aClientProject = m_ClientProject
Select Case tabListview.Tab
Case 0
Dim vProjTimeCardHour As ProjTimeCardHour
Set vItem = New ProjTimeCardHour
Set frmX = New frmProjTimeCardHour
Set vProjTimeCardHour = aClientProject.ProjTimeCardHours(DataEditGrid1(tabListview.Tab).CurrentRecord)
vItem.Load vProjTimeCardHour.TimeCardDetailID
Case 1
Dim vProjTimeCardExpense As ProjTimeCardExpense
Set vItem = New ProjTimeCardExpense
Set frmX = New frmProjTimeCardExpense
Set vProjTimeCardExpense = aClientProject.ProjTimeCardExpenses(DataEditGrid1(tabListview.Tab).CurrentRecord)
vItem.Load vProjTimeCardExpense.TimeCardExpenseID
Case 2
Dim vPayment As Payment
Set vItem = New Payment
Set frmX = New frmPayment
Set vPayment = aClientProject.Payments(DataEditGrid1(tabListview.Tab).CurrentRecord)
vItem.Load vPayment.PaymentID
End Select
frmX.Component vItem
frmX.Show
Done_LoadFormView:
Exit Sub
Err_LoadFormView:
If Err <> 91 Then ErrorMsg Err.Number, Err.Description, "LoadFormView", mcstrMod
Resume Done_LoadFormView
End Sub
Private Sub iForm_MainMenu()
'n/a
End Sub
Private Property Get iForm_Attributes() As ToolBarItems
iForm_Attributes = tbCancel + tbCloseMe + tbRefresh + tbSave + tbDeleteRow + tbShowFormView
End Property
Private Sub iForm_Cancel()
Set m_ClientProject = m_Store.CopyMe
LoadRecords
End Sub
Private Sub iForm_CloseMe()
Unload Me
End Sub
Private Sub iForm_delete()
'n/a
End Sub
Private Property Get iForm_EnableAttributes() As ToolBarItems
iForm_EnableAttributes = m_EnableAttr
End Property
Private Sub iForm_Find(ByVal Key As String)
'n/a
End Sub
Private Sub iForm_Refresh()
Dim aClientProject As ClientProject
Set aClientProject = m_ClientProject
aClientProject.Load aClientProject.ProjectID, True
Set m_ClientProject = aClientProject
LoadRecords
End Sub
Private Function iForm_Save() As Boolean
DataEditGrid1(tabListview.Tab).Update
If m_ClientProject.Save Then
Set m_Store = m_ClientProject.CopyMe
iForm_Refresh
End If
End Function
Private Sub iForm_AddNew()
'n/a
End Sub
Private Sub iForm_ShowFormView()
LoadFormView
End Sub
Private Property Get iForm_FindSubTools() As cFindSubTools
'n/a
End Property
Private Sub iForm_HelpAbout()
'n/a
End Sub
Private Function iForm_OpenDB() As Boolean
'n/a
End Function
Private Sub iForm_DeleteRow()
DataEditGrid1(tabListview.Tab).delete
End Sub
Private Sub iForm_PrintOut()
'n/a
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -