G
Guest
Well, after all these years I am finally trying to learn classes. But, I
must be missing something.
IN MY CLASS MODULE, I HAVE
Private mlngMemberID As Long
Public txtLastName As String
Public Property Get MemberID() As Long 'Read only
MemberID = mlngMemberID
End Property
Public Function Load(ID As Long) As Boolean
Dim rst As DAO.Recordset
Dim SQL As String
Dim strMsg As String
Load = False
SQL = "SELECT * FROM tblMembers "
SQL = SQL & " WHERE ([MemberID]) = " & ID
Set rst = CurrentDb().OpenRecordset(SQL, dbOpenSnapshot)
With rst
If rst.RecordCount = 0 Then
MsgBox "Cannot find Member with ID = " & ID, vbCritical
End If
Me.txtLastName = CheckNull(![LastName])
Set rst = Nothing
Load = True
Exit Function
IN MY FORM MODULE, I HAVE
Private mobjMember As New clsMember
Private Sub Form_Open(Cancel As Integer)
Set mobjMember = New clsMember
mobjMember.Load (Form_frmSEGSelect!lstSelect.Column(0))
End Sub
WHen the form is displayed, the txtLastName field is still empty.
If I type in the immediate window
? mobjMember.txtLastName
I get the correct value.
What am I missing? I certainly hope that for each field on the form (over
60), I do not have to write
me.txtFIELD = mobjMember.txtFIELD
Thanks
must be missing something.
IN MY CLASS MODULE, I HAVE
Private mlngMemberID As Long
Public txtLastName As String
Public Property Get MemberID() As Long 'Read only
MemberID = mlngMemberID
End Property
Public Function Load(ID As Long) As Boolean
Dim rst As DAO.Recordset
Dim SQL As String
Dim strMsg As String
Load = False
SQL = "SELECT * FROM tblMembers "
SQL = SQL & " WHERE ([MemberID]) = " & ID
Set rst = CurrentDb().OpenRecordset(SQL, dbOpenSnapshot)
With rst
If rst.RecordCount = 0 Then
MsgBox "Cannot find Member with ID = " & ID, vbCritical
End If
Me.txtLastName = CheckNull(![LastName])
Set rst = Nothing
Load = True
Exit Function
IN MY FORM MODULE, I HAVE
Private mobjMember As New clsMember
Private Sub Form_Open(Cancel As Integer)
Set mobjMember = New clsMember
mobjMember.Load (Form_frmSEGSelect!lstSelect.Column(0))
End Sub
WHen the form is displayed, the txtLastName field is still empty.
If I type in the immediate window
? mobjMember.txtLastName
I get the correct value.
What am I missing? I certainly hope that for each field on the form (over
60), I do not have to write
me.txtFIELD = mobjMember.txtFIELD
Thanks