Hi,
Ik ben bezig met een administratie programma en daar in gebruik in een access database.
Op basis van geselecteerde waarde in een invoer formulier zal er data moeten worden opgehaald uit de betreffende database en deze wil ik in een tijdelijke recordset zetten om deze vervolgens mee te kunnen geven aan een VB rapport.
Echter wanneer in de tijdelijke recordset wil vullen met de waarde vanuit de access database verschijnt de melding: 'Bij een bewerking die uit meerdere stappen bestaat, zijn fouten opgetreden. Controleer alle statuswaarden.'.
Echter ik weet niet wat er in de onderstaande code fout is. De rode regel is de fout regel.
Ik ben bezig met een administratie programma en daar in gebruik in een access database.
Op basis van geselecteerde waarde in een invoer formulier zal er data moeten worden opgehaald uit de betreffende database en deze wil ik in een tijdelijke recordset zetten om deze vervolgens mee te kunnen geven aan een VB rapport.
Echter wanneer in de tijdelijke recordset wil vullen met de waarde vanuit de access database verschijnt de melding: 'Bij een bewerking die uit meerdere stappen bestaat, zijn fouten opgetreden. Controleer alle statuswaarden.'.
Echter ik weet niet wat er in de onderstaande code fout is. De rode regel is de fout regel.
Code:
'Definieer tijdelijke recordset
Dim Wrk_Tijdelijkerecordset As New ADODB.Recordset
'Loop van 1 tot 9
For Wrk_teller = 1 To 9
'Is array veld gevuld
If MOD_FUNCS.Lengteveldok(Arr_veldnamen(Wrk_teller), 0, "GT") = True Then
'Aanmaken veld in tijdelijke recordset
Wrk_Tijdelijkerecordset.Fields.Append "FLD" & Trim(Str(Wrk_teller)), Arr_veldtypes(Wrk_teller), Arr_veldlengte(Wrk_teller)
End If
Next
'Openen query
MOD_SUBS.Openenquery "Ophalen " & Wrk_Rapportnaam
'Wijzig eventuele parameters en voeg where en order by toe
If FRM_Afdrukken.CBB_Watprinten.Text = "Selectie" Then
Wrk_sqlin = MOD_FUNCS.Wijzigsqlstatement(FRM_Afdrukselectie, Dbs_querynaam.SQL, "AFDRUKKEN", 9)
Wrk_sqlin = Replace(Wrk_sqlin, "WHERE P_WHERE", MOD_FUNCS.Bepaalwhere("AFDRUKKEN", 9, FRM_Afdrukselectie, "="))
Else
Wrk_sqlin = MOD_FUNCS.Wijzigsqlstatement(FRM_Afdrukselectie, Dbs_querynaam.SQL, "AFDRUKKEN", 0)
Wrk_sqlin = Replace(Wrk_sqlin, "WHERE P_WHERE", MOD_FUNCS.Bepaalwhere("AFDRUKKEN", 0, FRM_Afdrukselectie, "="))
End If
Wrk_sqlin = Replace(Wrk_sqlin, "ORDER BY P_ORDERBY", MOD_FUNCS.Bepaalorderby("ONDERHOUD", Wrk_aantaltabelsleutels))
'Sluiten query
MOD_SUBS.Sluitenquery
'Openen recordset
MOD_SUBS.Openenrecordset Wrk_sqlin
'Open tijdelijke recordset
Wrk_Tijdelijkerecordset.CursorType = adOpenKeyset
Wrk_Tijdelijkerecordset.LockType = adLockOptimistic
Wrk_Tijdelijkerecordset.Open
'Zolang einde van bestand niet bereikt
Do While Not Dbs_recordset.EOF()
'Voeg nieuw record toe
Wrk_Tijdelijkerecordset.AddNew
'Loop over alle velden
For Wrk_teller = 0 To Dbs_recordset.Fields.Count - 1
'Zet waarde in tijdelijke recordset
[COLOR="Red"] Wrk_Tijdelijkerecordset.Fields(Wrk_teller).Value = Dbs_recordset.Fields(Wrk_teller).Value[/COLOR]
Next
'Update recordset
Wrk_Tijdelijkerecordset.Update
'Volgend record
Dbs_recordset.MoveNext
Loop