⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clientproject.cls

📁 人事档案管理系统(PB)/人事工资管理系统/干部信息管理系统/投标报价与合同管理系统/... 超市...
💻 CLS
📖 第 1 页 / 共 3 页
字号:
VERSION 1.0 CLASS
Begin      
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
End    

Attribute VB_Name = ClientProject
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Option Explicit
Implements COMEXDataSourceSingle      
Private m_Fields() 
Public Event OnRecordSaved(byRef aClientProject As ClientProject)
Public Event OnRecordMarkForDelete(byRef aClientProject As ClientProject)
Public Event OnDirty(byVal IsDirty As Boolean)
Public Event OnRecordLoad(byRef aClientProject As ClientProject)

Private WithEvents mobjValid As BrokenRules
Event Valid(ByVal IsValid As Boolean)
Private m_ClientID As Long
Private m_CompanyName As String
Private m_EmployeeID As Long
Private m_FirstName As String
Private m_LastName As String
Private m_ProjectDescription As String
Private m_ProjectEndDate As Variant
Private m_ProjectID As Long
Private m_ProjectName As String
Private m_ProjectTotalBillingEstimate As Currency
Private m_PurchaseOrderNumber As String
Private m_ProjectBeginDate As Date
Private m_OldProjectID As Long
Private m_IsNew As Boolean
Private m_IsDirty As Boolean
Private m_IsDeleted As Boolean

Private m_ProjTimeCardHours As ProjTimeCardHours

Private m_ProjTimeCardExpenses As ProjTimeCardExpenses

Private m_Payments As Payments
	      

Friend Property Let IsNew(Byval vData As boolean)
  m_IsNew = vData
End Property

Public Property Get IsNew() As Boolean
  IsNew = m_IsNew
End Property

Friend Property Let IsDirty(Byval vData As boolean)
  m_IsDirty = vData
  RaiseEvent OnDirty(vData)
End Property

Public Property Get IsDirty() As Boolean
  IsDirty = m_IsDirty
End Property

Friend Property Let IsDeleted(Byval vData As boolean)
  m_IsDeleted = vData
  RaiseEvent OnRecordMarkForDelete(Me) 
End Property

Public Property Get IsDeleted() As Boolean
  IsDeleted = m_IsDeleted
End Property    

Public Property Get IsValid() As Boolean
  IsValid = (mobjValid.Count = 0)
End Property

Private Sub mobjValid_BrokenRule()
  RaiseEvent Valid(False)
End Sub

Private Sub mobjValid_NoBrokenRules()
  RaiseEvent Valid(True)
End Sub
'******************************************************************************
'Begin property get/let/set                                                   *
'******************************************************************************

Friend Property Let OldProjectID(vData As Long)
  m_OldProjectID = vData
End Property

Public Property Let ClientID (vData As Long)
  m_ClientID = vData 
  mobjValid.RuleBroken "ClientID", False	
  IsDirty = True
End Property

Public Property Get ClientID() As Long
  ClientID = m_ClientID
End Property


Public Property Get ClientIDIncludeLookup() As String
  ClientIDIncludeLookup = m_ClientID & vbtab & CompanyName 		  
End Property 

Friend Property Let ClientIDIncludeLookup(byval vData As string) 
  On Error Resume Next
  Dim strFields() As string
  strFields = split(vData, vbtab)
  ClientID = strFields(0) 
  m_CompanyName = strFields(1) 		  
End Property 


Friend Property Let CompanyName(vData As String)
  m_CompanyName = vData
End Property
		
Public Property Get CompanyName() As String
  CompanyName = m_CompanyName
End Property
Public Property Let EmployeeID (vData As Long)
  m_EmployeeID = vData 	
  IsDirty = True
End Property

Public Property Get EmployeeID() As Long
  EmployeeID = m_EmployeeID
End Property


Public Property Get EmployeeIDIncludeLookup() As String
  EmployeeIDIncludeLookup = m_EmployeeID & vbtab & FirstName & vbtab & LastName 		  
End Property 

Friend Property Let EmployeeIDIncludeLookup(byval vData As string) 
  On Error Resume Next
  Dim strFields() As string
  strFields = split(vData, vbtab)
  EmployeeID = strFields(0) 
  m_FirstName = strFields(1)
  m_LastName = strFields(2) 		  
End Property 


Friend Property Let FirstName(vData As String)
  m_FirstName = vData
End Property
		
Public Property Get FirstName() As String
  FirstName = m_FirstName
End Property
Friend Property Let LastName(vData As String)
  m_LastName = vData
End Property
		
Public Property Get LastName() As String
  LastName = m_LastName
End Property
Public Property Let ProjectDescription (vData As String)
  m_ProjectDescription = vData 	
  IsDirty = True
End Property

Public Property Get ProjectDescription() As String
  ProjectDescription = m_ProjectDescription
End Property


Public Property Let ProjectEndDate (vData As Variant)
  m_ProjectEndDate = vData 	
  IsDirty = True
End Property

Public Property Get ProjectEndDate() As Variant
  ProjectEndDate = m_ProjectEndDate
End Property


Public Property Let ProjectID (vData As Long)
  m_ProjectID = vData 	
  IsDirty = True
End Property

Public Property Get ProjectID() As Long
  ProjectID = m_ProjectID
End Property


Public Property Let ProjectName (vData As String)
  m_ProjectName = vData 	
  IsDirty = True
End Property

Public Property Get ProjectName() As String
  ProjectName = m_ProjectName
End Property


Public Property Let ProjectTotalBillingEstimate (vData As Currency)
  m_ProjectTotalBillingEstimate = vData 	
  IsDirty = True
End Property

Public Property Get ProjectTotalBillingEstimate() As Currency
  ProjectTotalBillingEstimate = m_ProjectTotalBillingEstimate
End Property


Public Property Let PurchaseOrderNumber (vData As String)
  m_PurchaseOrderNumber = vData 	
  IsDirty = True
End Property

Public Property Get PurchaseOrderNumber() As String
  PurchaseOrderNumber = m_PurchaseOrderNumber
End Property


Public Property Let ProjectBeginDate (vData As Date)
  m_ProjectBeginDate = vData 
  mobjValid.RuleBroken "ProjectBeginDate", False	
  IsDirty = True
End Property

Public Property Get ProjectBeginDate() As Date
  ProjectBeginDate = m_ProjectBeginDate
End Property


Public Property Set ProjTimeCardHours(vData As ProjTimeCardHours)
  Set m_ProjTimeCardHours = vData
End Property

Public Property Get ProjTimeCardHours() As ProjTimeCardHours
  Set ProjTimeCardHours  = m_ProjTimeCardHours
End Property
Public Property Set ProjTimeCardExpenses(vData As ProjTimeCardExpenses)
  Set m_ProjTimeCardExpenses = vData
End Property

Public Property Get ProjTimeCardExpenses() As ProjTimeCardExpenses
  Set ProjTimeCardExpenses  = m_ProjTimeCardExpenses
End Property
Public Property Set Payments(vData As Payments)
  Set m_Payments = vData
End Property

Public Property Get Payments() As Payments
  Set Payments  = m_Payments
End Property
'******************************************************************************
'End property get/let/set                                                     *
'******************************************************************************	

'******************************************************************************
'*                                                                            *
'* Name:    Clear                                                             *
'*                                                                            *
'* Purpose: Reset this object and initialize data to default.                 *
'*                                                                            *
'******************************************************************************
Public Sub Clear() 
  m_IsNew = True
  m_IsDirty = False
  m_IsDeleted = False 

  m_ClientID = 0
  m_EmployeeID = 0
  m_ProjectDescription = vbnullstring
  m_ProjectEndDate = Null
  m_ProjectID = 0
  m_ProjectName = vbnullstring
  m_ProjectTotalBillingEstimate = 0
  m_PurchaseOrderNumber = vbnullstring
  m_ProjectBeginDate = "12:00:00AM"
  Set m_ProjTimeCardHours = Nothing
  Set m_ProjTimeCardHours =  New ProjTimeCardHours
  Set m_ProjTimeCardExpenses = Nothing
  Set m_ProjTimeCardExpenses =  New ProjTimeCardExpenses
  Set m_Payments = Nothing
  Set m_Payments =  New Payments


  Set mobjValid = New BrokenRules
  ReSetBrokenRule True 
End Sub	


Public Sub ReSetBrokenRule(byval BrokenAll As boolean)  
  Dim vProjTimeCardHour As ProjTimeCardHour
  For Each vProjTimeCardHour In m_ProjTimeCardHours
  	vProjTimeCardHour.ReSetBrokenRule BrokenAll
  Next
  Dim vProjTimeCardExpense As ProjTimeCardExpense
  For Each vProjTimeCardExpense In m_ProjTimeCardExpenses
  	vProjTimeCardExpense.ReSetBrokenRule BrokenAll
  Next
  Dim vPayment As Payment
  For Each vPayment In m_Payments
  	vPayment.ReSetBrokenRule BrokenAll
  Next
  mobjValid.RuleBroken "ClientID", BrokenAll
  mobjValid.RuleBroken "ProjectBeginDate", BrokenAll
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -