📄 frmclientproject.frm
字号:
BeginProperty Font
Name = "Tahoma"
Size = 8.25
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Index = 5
Left = 150
TabIndex = 12
Top = 2135
Width = 1815
End
Begin VB.Label lblLabels
Caption = "原币合同金额:"
BeginProperty Font
Name = "Tahoma"
Size = 8.25
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Index = 6
Left = 150
TabIndex = 14
Top = 2460
Width = 1815
End
Begin VB.Label lblLabels
Caption = "原币税额:"
BeginProperty Font
Name = "Tahoma"
Size = 8.25
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Index = 7
Left = 150
TabIndex = 16
Top = 2785
Width = 1815
End
Begin VB.Label lblLabels
Caption = "合同开始日期:"
BeginProperty Font
Name = "Tahoma"
Size = 8.25
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Index = 8
Left = 150
TabIndex = 18
Top = 3110
Width = 1815
End
End
Attribute VB_Name = "frmClientProject"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Implements iForm
Private Const mcstrMod$ = "frmClientProject"
Private m_ClientProject As COMEXDataSourceSingle, m_Store As COMEXDataSourceSingle
Private m_flgLoading As Boolean
Private m_EnableAttr As ToolBarItems
Private m_Guid As String
Public Sub Component(vClientProject As COMEXDataSourceSingle)
Set m_ClientProject = vClientProject
Set m_Store = m_ClientProject.CopyMe
LoadRecords
End Sub
Private Sub EnableToolbar(ByVal Dirty As Boolean)
On Error Resume Next
If Not Dirty Then
If m_EnableAttr And tbSave Then m_EnableAttr = m_EnableAttr Xor tbSave
If m_EnableAttr And tbCancel Then m_EnableAttr = m_EnableAttr Xor tbCancel
If Not (m_EnableAttr And tbRefresh) Then m_EnableAttr = m_EnableAttr Or tbRefresh
Else
If Not (m_EnableAttr And tbSave) Then m_EnableAttr = m_EnableAttr Or tbSave
If Not (m_EnableAttr And tbCancel) Then m_EnableAttr = m_EnableAttr Or tbCancel
If m_EnableAttr And tbRefresh Then m_EnableAttr = m_EnableAttr Xor tbRefresh
End If
m_Toolbar.RefreshEnabledState
End Sub
Private Sub LoadRecords()
On Error GoTo Err_LoadRecords
Dim ctl As Control, i As Long
m_flgLoading = True
Dim aClientProject As ClientProject
Set aClientProject = m_ClientProject
Dim vProjTimeCardHours As COMEXDataSource
Set vProjTimeCardHours = aClientProject.ProjTimeCardHours
Dim vProjTimeCardExpenses As COMEXDataSource
Set vProjTimeCardExpenses = aClientProject.ProjTimeCardExpenses
Dim vPayments As COMEXDataSource
Set vPayments = aClientProject.Payments
With m_ClientProject
For i = 1 To .GetFieldCount
On Error Resume Next
Set ctl = Controls(.GetFieldName(i))
If Err = 0 Then
Select Case TypeName(ctl)
Case "Label"
Case "TextBox", "ComboBox", "MaskEdBox"
ctl = .GetData(i)
Case "CheckBox"
ctl.Value = Abs(.GetData(i))
Case "DTPicker"
ctl.Value = .GetData(i)
End Select
End If
Next
End With
Set Me.DataEditGrid1(0).DataSource = vProjTimeCardHours
Set Me.DataEditGrid1(1).DataSource = vProjTimeCardExpenses
Set Me.DataEditGrid1(2).DataSource = vPayments
m_EnableAttr = iForm_Attributes
EnableToolbar False
m_flgLoading = False
Done_LoadRecords:
Exit Sub
Err_LoadRecords:
ErrorMsg Err.Number, Err.Description, "LoadRecords", mcstrMod
Resume Done_LoadRecords
End Sub
Private Sub ClientID_Click()
On Error GoTo Err_ClientID_Click
m_ClientProject.SetDatabyname ClientID.Name, ClientID
EnableToolbar True
Exit Sub
Err_ClientID_Click:
ClientID = m_ClientProject.GetDataByName(ClientID.Name)
End Sub
Private Sub ClientID_LostFocus()
On Error Resume Next
ClientID = m_ClientProject.GetDataByName(ClientID.Name)
End Sub
Private Sub EmployeeID_Click()
On Error GoTo Err_EmployeeID_Click
m_ClientProject.SetDatabyname EmployeeID.Name, EmployeeID
EnableToolbar True
Exit Sub
Err_EmployeeID_Click:
EmployeeID = m_ClientProject.GetDataByName(EmployeeID.Name)
End Sub
Private Sub EmployeeID_LostFocus()
On Error Resume Next
EmployeeID = m_ClientProject.GetDataByName(EmployeeID.Name)
End Sub
Private Sub ProjectDescription_Change()
On Error GoTo Err_ProjectDescription_Change
If m_flgLoading Then Exit Sub
m_ClientProject.SetDatabyname ProjectDescription.Name, ProjectDescription
EnableToolbar True
Exit Sub
Err_ProjectDescription_Change:
With ProjectDescription
.SelStart = 0
.SelLength = Len(.Text)
.SelText = m_ClientProject.GetDataByName(ProjectDescription.Name)
End With
End Sub
Private Sub ProjectDescription_LostFocus()
On Error Resume Next
ProjectDescription = m_ClientProject.GetDataByName(ProjectDescription.Name)
End Sub
Private Sub ProjectEndDate_Change()
On Error GoTo Err_ProjectEndDate_Change
If m_flgLoading Then Exit Sub
m_ClientProject.SetDatabyname ProjectEndDate.Name, ProjectEndDate.Value
EnableToolbar True
Exit Sub
Err_ProjectEndDate_Change:
With ProjectEndDate
.Value = m_ClientProject.GetDataByName(ProjectEndDate.Name)
End With
End Sub
Private Sub ProjectEndDate_LostFocus()
On Error Resume Next
ProjectEndDate = m_ClientProject.GetDataByName(ProjectEndDate.Name)
End Sub
Private Sub ProjectID_Change()
On Error GoTo Err_ProjectID_Change
If m_flgLoading Then Exit Sub
m_ClientProject.SetDatabyname ProjectID.Name, ProjectID
EnableToolbar True
Exit Sub
Err_ProjectID_Change:
With ProjectID
.SelStart = 0
.SelLength = Len(.Text)
.SelText = m_ClientProject.GetDataByName(ProjectID.Name)
End With
End Sub
Private Sub ProjectID_LostFocus()
On Error Resume Next
ProjectID = m_ClientProject.GetDataByName(ProjectID.Name)
End Sub
Private Sub ProjectName_Change()
On Error GoTo Err_ProjectName_Change
If m_flgLoading Then Exit Sub
m_ClientProject.SetDatabyname ProjectName.Name, ProjectName
EnableToolbar True
Exit Sub
Err_ProjectName_Change:
With ProjectName
.SelStart = 0
.SelLength = Len(.Text)
.SelText = m_ClientProject.GetDataByName(ProjectName.Name)
End With
End Sub
Private Sub ProjectName_LostFocus()
On Error Resume Next
ProjectName = m_ClientProject.GetDataByName(ProjectName.Name)
End Sub
Private Sub ProjectTotalBillingEstimate_Change()
On Error GoTo Err_ProjectTotalBillingEstimate_Change
If m_flgLoading Then Exit Sub
m_ClientProject.SetDatabyname ProjectTotalBillingEstimate.Name, ProjectTotalBillingEstimate
EnableToolbar True
Exit Sub
Err_ProjectTotalBillingEstimate_Change:
With ProjectTotalBillingEstimate
.SelStart = 0
.SelLength = Len(.Text)
.SelText = m_ClientProject.GetDataByName(ProjectTotalBillingEstimate.Name)
End With
End Sub
Private Sub ProjectTotalBillingEstimate_LostFocus()
On Error Resume Next
ProjectTotalBillingEstimate = m_ClientProject.GetDataByName(ProjectTotalBillingEstimate.Name)
End Sub
Private Sub PurchaseOrderNumber_Change()
On Error GoTo Err_PurchaseOrderNumber_Change
If m_flgLoading Then Exit Sub
m_ClientProject.SetDatabyname PurchaseOrderNumber.Name, PurchaseOrderNumber
EnableToolbar True
Exit Sub
Err_PurchaseOrderNumber_Change:
With PurchaseOrderNumber
.SelStart = 0
.SelLength = Len(.Text)
.SelText = m_ClientProject.GetDataByName(PurchaseOrderNumber.Name)
End With
End Sub
Private Sub PurchaseOrderNumber_LostFocus()
On Error Resume Next
PurchaseOrderNumber = m_ClientProject.GetDataByName(PurchaseOrderNumber.Name)
End Sub
Private Sub ProjectBeginDate_Change()
On Error GoTo Err_ProjectBeginDate_Change
If m_flgLoading Then Exit Sub
m_ClientProject.SetDatabyname ProjectBeginDate.Name, ProjectBeginDate.Value
EnableToolbar True
Exit Sub
Err_ProjectBeginDate_Change:
With ProjectBeginDate
.Value = m_ClientProject.GetDataByName(ProjectBeginDate.Name)
End With
End Sub
Private Sub ProjectBeginDate_LostFocus()
On Error Resume Next
ProjectBeginDate = m_ClientProject.GetDataByName(ProjectBeginDate.Name)
End Sub
Private Sub tabListview_Click(PreviousTab As Integer)
Me.DataEditGrid1(0).Visible = (tabListview.Tab = 0)
Me.DataEditGrid1(1).Visible = (tabListview.Tab = 1)
Me.DataEditGrid1(2).Visible = (tabListview.Tab = 2)
Me.Refresh
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -