I have a textbox on the report called txt_OrderID. The Control Source is set to OrderID. I assume this means that the report has done a Select query of the Orders table and it should show the OrderID when the Report loads. However, the Report is currently setup to only find an individual Lender_Address. I need all three to be printed out in the form, So I'm trying to do this by adding a module to the form and write some VBA script to do it.
Dim OrderID As Integer
Dim cmd As New ADODB.Command
Dim rs As ADODB.Recordseet
Dim conn As New ADODB.Connection
Dim LLender1_id As String, LLender1_name As String, LLender1_address As String, LLender1_city As String, LLender1_state As String, LLender2_id As String
Dim LLender2_name As String, LLender2_address As String, Llender2_city As String, LLender2_state As String, LLender3_id As String, LLender3_name As String
Dim LLender3_address As String, LLender3_city As String, LLender3_state As String
'get OrderID from FORM Label
OrderID = Forms!lbl_OrderID.Value
' get lender codes
Public Sub getLenderCodes()
Set rs = Server.CreateObject("ADODB.Recordset")
On Error GoTo Error_MayCauseAnError
With cmd
.commandtext = "SELECT * FROM Orders WHERE OrderID =" & OrderID
.commandtype = adCmdUnknown
.ActiveConnection = CurrentProject.Connection
'Request the recordset
.Set rs = .Execute
End With
' Lender Codes
If Not rs.EOF Then
LLender1_id = rs("LenderCode")
LLender2_id = rs("LenderCode2")
LLender3_id = rs("LenderCode3")
End If
rs = Nothing
Error_MayCauseAnError:
On Error Resume Next
End Sub
' get lender1 detail
Public Sub getLender1Detail()
Set rs = Server.CreateObject("ADODB.Recordset")
On Error GoTo Error_MayCauseAnError
With cmd
.commandtext = "SELECT * FROM Lenders WHERE LenderCode =" & Lender1_id
.commandtype = adCmdUnknown
.ActiveConnection = CurrentProject.Connection
'Request the recordset
.Set rs = .Execute
End With
' lender1 details
If Not rs.EOF Then
LLender1_name.Value = rs("LenderContrName")
LLender1_address.Value = rs("Address")
LLender1_city.Value = rs("City")
LLender1_state.Value = rs("StateOrProvince")
End If
rs = Nothing
Error_MayCauseAnError:
On Error Resume Next
End Sub
'get lender2 details
Public Sub getLender2Detail()
Set rs = Server.CreateObject("ADODB.Recordset")
On Error GoTo Error_MayCauseAnError
With cmd
.commandtext = "SELECT * FROM Lenders WHERE LenderCode =" & Lender2_id
.commandtype = adCmdUnknown
.ActiveConnection = CurrentProject.Connection
'Request the recordset
.Set rs = .Execute
End With
' lender2 details
If Not rs.EOF Then
LLender2_name = rs("LenderContrName")
LLender2_address = rs("Address")
Llender2_city = rs("City")
LLender2_state = rs("StateOrProvince")
End If
rs = Nothing
Error_MayCauseAnError:
On Error Resume Next
End Sub
' get lender 3 details
Public Sub getLender3Detail()
Set rs = Server.CreateObject("ADODB.Recordset")
On Error GoTo Error_MayCauseAnError
With cmd
.commandtext = "SELECT * FROM Lenders WHERE LenderCode =" & Lender3_id
.commandtype = adCmdUnknown
.ActiveConnection = CurrentProject.Connection
'Request the recordset
.Set rs = .Execute
End With
' lender3 details
If Not rs.EOF Then
LLender3_name = rs("LenderContrName")
LLender3_address = rs("Address")
LLender3_city = rs("City")
LLender3_state = rs("StateOrProvince")
End If
rs = Nothing
Error_MayCauseAnError:
On Error Resume Next
End Sub
' populate form labels
Public Sub populateLabels()
On Error GoTo Error_MayCauseAnError
' LENDER 1
Forms!lender1_name.Value = LLender1_name
Forms!Lender1_address.Value = LLender1_address
Forms!Lender1_city_state.Value = LLender1_city & ", " & LLender1_state
' LENDER 2
Forms!Lender2_name.Value = LLender2_name
Forms!lender2_address.Value = LLender2_address
Forms!Lender2_city_state.Value = Llender2_city & ", " & LLender2_state
' LENDER 3
Forms!Lender3_name.Value = LLender3_name
Forms!Lender3_address.Value = LLender3_address
Forms!Lender3_city_state.Value = LLender3_city & ", " & LLender3_state
Error_MayCauseAnError:
On Error Resume Next
End Sub
Right now I've written these Subs and simply was going to call them in sequence. probably this could be one Sub. Anyways, I can't get the value of the orderID from
OrderID = Forms!lbl_OrderID.Value
This needs to run in order to populate the unbound labels