Platí pro
Objekt Form |
Objekt Report |
Vlastnost InputParameters můžete použít k určení nebo určení vstupních parametrů, které se předávají příkazu JAZYKa SQL ve vlastnosti RecordSource formuláře nebo sestavy nebo Uložená procedura při použití jako Zdroj záznamů v rámci Projekt aplikace Microsoft Access (.adp). Typ String pro čtení/zápis.
výraz.InputParameters
Výraz Povinný argument. Výraz, který vrátí jeden z objektů v seznamu Platí pro.
Poznámky
Tuto vlastnost můžete nastavit pomocí kódu Seznam vlastností nebo jazyka VBA (Visual Basic for Applications).
Při použití s vlastností RecordSource :
Příklad InputParameter řetězec vlastnosti použitý s příkazem SQL ve vlastnosti RecordSource by použil následující syntaxi.
state char=[Forms]! [formname]! [StateList], salesyear smallint=[Forms]! [formname]! [Zadejte rok zájmu.]
Výsledkem by bylo nastavení parametru state na aktuální hodnotu ovládacího prvku StateList a uživateli by se zobrazila výzva k zadání parametru salesyear. Pokud by v tomto seznamu nebyly žádné další parametry, byly by jim přiřazeny výchozí hodnoty.
Dotaz by se měl spustit s jedním ? pro každý jiný než výchozí parametr v seznamu InputParameter .
Příkaz aktualizace nebo opětovného dotazování v Microsoft Office Access 2007 by měl aktivovat opětovné provedení dotazu. Uživatelé to mohou provést v kódu voláním standardní metody Recordset.Requery. Pokud je hodnota parametru vázána na ovládací prvek ve formuláři, použije se aktuální hodnota ovládacího prvku v době opakovaného dotazu. Dotaz se automaticky znovu neprovede, když se změní hodnota ovládacího prvku.
Při použití s uloženou procedurou:
Příklad řetězce vlastnosti InputParameter použitého s uloženou procedurou by byl:
@state char=[Forms]! [formname]! [StateList], @salesyear smallint=[Forms]! [formname]! [Zadejte rok zájmu.]
To by vedlo k nastavení parametru @state na aktuální hodnotu ovládacího prvku StateList a uživateli by se zobrazila výzva k zadání parametru @salesyear. Pokud by uloženému objektu proc byly přiřazeny nějaké další parametry, které v tomto seznamu nejsou, byly by jim přiřazeny výchozí hodnoty.
Uložená procedura by se měla spustit pomocí příkazového řetězce obsahujícího syntaxi {call } s jednou ? pro každý jiný než výchozí parametr v seznamu InputParameter .
Příkaz pro aktualizaci nebo opětovné dotazování v Accessu by měl aktivovat opětovné spuštění uložené procedury. Uživatelé to mohou provést v kódu voláním standardní metody Recordset.Requery. Pokud je hodnota parametru vázána na ovládací prvek ve formuláři, použije se aktuální hodnota ovládacího prvku v době opakovaného dotazu. Uložená procedura není automaticky znovu spuštěna, když se změní hodnota ovládacího prvku.
Toto dialogové okno tvůrce je vyvoláno, když je uložená procedura poprvé vybrána jako zdroj záznamů formuláře, pokud má uložená procedura nějaké parametry. Po počátečním vytvoření řetězce InputParameters se stejný dialog použije jako tvůrce pro změnu řetězce. V tomto případě ale seznam parametrů vychází z toho, co už v řetězci existuje.
Hodnoty parametrů se také nastavují v kódu pomocí objektů ADO (ActiveX Data Object) Command a Parameter . Pokud výsledek vrátí sadu výsledků, může být formulář vázán nastavením vlastnosti Recordset formuláře. Kódování ADO je jediný způsob, jak zpracovat uložené procedury, které nevrací sady výsledků, jako jsou akční dotazy, ty, které vrací výstupní parametry, nebo ty, které vrací více sad výsledků.