B
Brad
Thanks for taking the time to read my question.
I am trying to use a query as a recordset. I am using SQL instead of an
actual query because I need to pass a variable to it. I can't get past the
line
Set qdf = dbs.QueryDefs .....
The error I get is "Item not found in this collection." The error number is
3265.
What am I doing wrong?
Thanks,
Brad
Code:
--------------------------------------------------------------------------
Dim dbs As Database, rst As Recordset, qdf As QueryDef
Set dbs = CurrentDb
Set qdf = dbs.QueryDefs("SELECT tblHealthServicesData.ID,
tblServiceProvider.ServiceProvider, tblHealthServicesData.BarnName,
tblHealthServicesData.[TotalDrivingTime(hours)],
tblHealthServicesData.TotalKms, tblHerdInformation.AccountingNumber,
tblServiceProvider.DrivingRate, tblHealthServicesData.BilledYN,
tblHealthServicesData.OverRideFree, tblHerdInformation.NumberOfFreeVisits,
tblFreeVisits.NumFreeVisits AS AllowableVisits,
tblActivitiesForInvoice.BillingStatus,
tblHealthServicesDataDetail.InvoiceActivityType,
tblHealthServicesDataDetail.[InvoiceTime(hours)],
tblHealthServicesDataDetail.Comments,
tblHealthServicesData.ReleaseForInvoicing, [tblHealthServicesDataDetail]![ID]
AS DetailID, tblHealthServicesDataDetail.ActivityDate " & _
"FROM (tblFreeVisits INNER JOIN (qryRecCount INNER
JOIN (tblHerdInformation INNER JOIN (tblHealthServicesData INNER JOIN
tblServiceProvider ON tblHealthServicesData.ServiceProvider =
tblServiceProvider.ServiceProviderCode) ON tblHerdInformation.BarnName =
tblHealthServicesData.BarnName) ON qryRecCount.tblHealthServicesDataID =
tblHealthServicesData.ID) ON tblFreeVisits.TypeOfFarm =
tblHerdInformation.StageOfProduction) INNER JOIN (tblHealthServicesDataDetail
INNER JOIN tblActivitiesForInvoice ON
tblHealthServicesDataDetail.InvoiceActivityType =
tblActivitiesForInvoice.InvoiceActivityType) ON tblHealthServicesData.ID =
tblHealthServicesDataDetail.tblHealthServicesDataID " & _
"WHERE (((tblHealthServicesData.ID) = " & RecID & ")
And ((tblHealthServicesData.BilledYN) = False) And
((tblActivitiesForInvoice.BillingStatus) <> 5) And
((tblHealthServicesData.ReleaseForInvoicing) = True)) " & _
"ORDER BY tblHealthServicesData.ID,
tblActivitiesForInvoice.BillingStatus;")
Set rst = qdf.OpenRecordset()
I am trying to use a query as a recordset. I am using SQL instead of an
actual query because I need to pass a variable to it. I can't get past the
line
Set qdf = dbs.QueryDefs .....
The error I get is "Item not found in this collection." The error number is
3265.
What am I doing wrong?
Thanks,
Brad
Code:
--------------------------------------------------------------------------
Dim dbs As Database, rst As Recordset, qdf As QueryDef
Set dbs = CurrentDb
Set qdf = dbs.QueryDefs("SELECT tblHealthServicesData.ID,
tblServiceProvider.ServiceProvider, tblHealthServicesData.BarnName,
tblHealthServicesData.[TotalDrivingTime(hours)],
tblHealthServicesData.TotalKms, tblHerdInformation.AccountingNumber,
tblServiceProvider.DrivingRate, tblHealthServicesData.BilledYN,
tblHealthServicesData.OverRideFree, tblHerdInformation.NumberOfFreeVisits,
tblFreeVisits.NumFreeVisits AS AllowableVisits,
tblActivitiesForInvoice.BillingStatus,
tblHealthServicesDataDetail.InvoiceActivityType,
tblHealthServicesDataDetail.[InvoiceTime(hours)],
tblHealthServicesDataDetail.Comments,
tblHealthServicesData.ReleaseForInvoicing, [tblHealthServicesDataDetail]![ID]
AS DetailID, tblHealthServicesDataDetail.ActivityDate " & _
"FROM (tblFreeVisits INNER JOIN (qryRecCount INNER
JOIN (tblHerdInformation INNER JOIN (tblHealthServicesData INNER JOIN
tblServiceProvider ON tblHealthServicesData.ServiceProvider =
tblServiceProvider.ServiceProviderCode) ON tblHerdInformation.BarnName =
tblHealthServicesData.BarnName) ON qryRecCount.tblHealthServicesDataID =
tblHealthServicesData.ID) ON tblFreeVisits.TypeOfFarm =
tblHerdInformation.StageOfProduction) INNER JOIN (tblHealthServicesDataDetail
INNER JOIN tblActivitiesForInvoice ON
tblHealthServicesDataDetail.InvoiceActivityType =
tblActivitiesForInvoice.InvoiceActivityType) ON tblHealthServicesData.ID =
tblHealthServicesDataDetail.tblHealthServicesDataID " & _
"WHERE (((tblHealthServicesData.ID) = " & RecID & ")
And ((tblHealthServicesData.BilledYN) = False) And
((tblActivitiesForInvoice.BillingStatus) <> 5) And
((tblHealthServicesData.ReleaseForInvoicing) = True)) " & _
"ORDER BY tblHealthServicesData.ID,
tblActivitiesForInvoice.BillingStatus;")
Set rst = qdf.OpenRecordset()