Monday, August 1, 2022

InputParameters-Eigenschaft

Gilt für

Formularobjekt

Berichtsobjekt

Sie können die InputParameters- Eigenschaft verwenden, um die Eingabeparameter anzugeben oder zu bestimmen, die an eine SQL-Anweisung in der RecordSource- Eigenschaft eines Formulars oder Berichts oder einer gespeicherten Prozedur übergeben werden, wenn sie als Datensatzquelle in einem Microsoft Access-Projekt (.adp) verwendet wird. Zeichenfolge lesen/ schreiben .

Ausdruck . Eingabeparameter

Ausdruck Erforderlich. Ein Ausdruck, der eines der Objekte in der Liste Gilt für zurückgibt.

Bemerkungen

Sie können diese Eigenschaft festlegen, indem Sie das Eigenschaftenblatt oder den VBA-Code (Visual Basic for Applications) verwenden.

Bei Verwendung mit einer RecordSource- Eigenschaft:

Ein Beispiel für eine InputParameter- Eigenschaftszeichenfolge, die mit einer SQL-Anweisung in der RecordSource- Eigenschaft verwendet wird, würde die folgende Syntax verwenden.

state char=[Formulare]![Formularname]![StateList], salesyear smallint=[Formulare]![Formularname]![Jahr von Interesse eingeben]

Dies würde dazu führen, dass der state-Parameter auf den aktuellen Wert des StateList-Steuerelements gesetzt wird und der Benutzer zur Eingabe des salesyear-Parameters aufgefordert wird. Wenn es andere Parameter gibt, die nicht in dieser Liste enthalten sind, werden ihnen Standardwerte zugewiesen.

Die Abfrage soll mit einem ? Markierung für jeden nicht standardmäßigen Parameter in der InputParameter -Liste.

Ein Befehl zum Aktualisieren oder erneuten Abfragen in Microsoft Office Access 2007 sollte eine erneute Ausführung der Abfrage auslösen. Benutzer können dies im Code tun, indem sie die Standardmethode Recordset.Requery aufrufen. Wenn der Wert eines Parameters an ein Steuerelement im Formular gebunden ist, wird der aktuelle Wert des Steuerelements zum Zeitpunkt der erneuten Abfrage verwendet. Die Abfrage wird nicht automatisch erneut ausgeführt, wenn sich der Wert des Steuerelements ändert.

Bei Verwendung mit einer gespeicherten Prozedur:

Ein Beispiel für eine InputParameter- Eigenschaftszeichenfolge, die mit einer gespeicherten Prozedur verwendet wird, wäre:

@state char=[Formulare]![Formularname]![StateList], @salesyear smallint=[Formulare]![Formularname]![Jahr von Interesse eingeben]

Dies würde dazu führen, dass der @state-Parameter auf den aktuellen Wert des StateList-Steuerelements gesetzt wird und der Benutzer zur Eingabe des @salesyear-Parameters aufgefordert wird. Wenn es andere Parameter für die gespeicherte Prozedur gibt, die nicht in dieser Liste enthalten sind, werden ihnen Standardwerte zugewiesen.

Die gespeicherte Prozedur sollte mit einer Befehlszeichenfolge ausgeführt werden, die die {call }-Syntax mit einem ? Markierung für jeden nicht standardmäßigen Parameter in der InputParameter -Liste.

Ein Aktualisierungs- oder Requery-Befehl in Access sollte eine erneute Ausführung der gespeicherten Prozedur auslösen. Benutzer können dies im Code tun, indem sie die Standardmethode Recordset.Requery aufrufen. Wenn der Wert eines Parameters an ein Steuerelement im Formular gebunden ist, wird der aktuelle Wert des Steuerelements zum Zeitpunkt der erneuten Abfrage verwendet. Die gespeicherte Prozedur wird nicht automatisch erneut ausgeführt, wenn sich der Wert des Steuerelements ändert.

Dieser Builder-Dialog wird aufgerufen, wenn eine gespeicherte Prozedur zum ersten Mal als Datensatzquelle eines Formulars ausgewählt wird, wenn die gespeicherte Prozedur Parameter hat. Nach der anfänglichen Erstellung der InputParameters -Zeichenfolge wird dasselbe Dialogfeld als Builder zum Ändern der Zeichenfolge verwendet. In diesem Fall stammt die Liste der Parameter jedoch aus dem, was bereits in der Zeichenfolge vorhanden ist.

Parameterwerte sind auch im Code unter Verwendung der Command- und Parameter -Objekte des ActiveX-Datenobjekts (ADO) einstellbar. Wenn das Ergebnis eine Ergebnismenge zurückgibt, kann ein Formular daran gebunden werden, indem die Recordset -Eigenschaft des Formulars festgelegt wird. ADO-Codierung ist die einzige Möglichkeit, gespeicherte Prozeduren zu handhaben, die keine Ergebnismengen zurückgeben, wie z. B. Aktionsabfragen, solche, die Ausgabeparameter zurückgeben, oder solche, die mehrere Ergebnismengen zurückgeben.

No comments:

Post a Comment