1.4k Aufrufe
Gefragt in Datenbanken von grubie Einsteiger_in (9 Punkte)
Hallo Experten,

ich habe ein Problem mit einer Parameterabfrage mit zwei Parametern.

Die Where-bedingung in der Abfrage lautet:

WHERE (((qry_DRG_Grunddaten.DRG)=[DRG_Code]) AND ((qry_DRG_Grunddaten.Version)=[Version]))


Die Abfrage rufe ich über folgenden VBA-Code auf:

Dim cmdDRG As New ADODB.Command
Dim rstDRG As New ADODB.Recordset
Dim parDRG As ADODB.Parameter
Dim parDRGYear As ADODB.Parameter

'Initialisierung der Parameterabfrage
Set cmdDRG.ActiveConnection = CurrentProject.Connection
cmdDRG.CommandText = "qry_DRG_mit_Parameter"
'Parameter DRG erzeugen
Set parDRG = New ADODB.Parameter
parDRG.Type = adVariant
parDRG.Direction = adParamInput
parDRG.Value = Me.cmbDRG
cmdDRG.Parameters.Append parDRG
'Parameter Verfahrensjahr erzeugen
Set parDRGYear = New ADODB.Parameter
parDRGYear.Type = adInteger
parDRGYear.Direction = adParamInput
parDRGYear.Value = Me.txtYear
cmdDRG.Parameters.Append parDRGYear
'Ergebnis dem Recordset zuweisen

Set rstDRG = cmdDRG.Execute()


Das Ergebnis ist leider nicht das, was ich suche. Es scheint, als wird der zweite Parameter nicht berücksichtigt. Das ergebnis sollte ein Datensatz sein, aber es werden zwei Datensätze (aus zwei Verfahrensjahren) zurückgegeben, obwohl ich verfolgt habe, dass das korrekte Verfahrensjahr übergeben wurde.

Kann mir einer sagen, wo der Fehler liegt?

Gruss,

Rolf

Deine Antwort

Dein angezeigter Name (optional):
Datenschutz: Deine Email-Adresse benutzen wir ausschließlich, um dir Benachrichtigungen zu schicken. Es gilt unsere Datenschutzerklärung.
Anti-Spam-Captcha:
Bitte logge dich ein oder melde dich neu an, um das Anti-Spam-Captcha zu vermeiden.
...