Стосується
Об’єкт Form |
Об’єкт Report |
За допомогою властивості InputParameters можна вказати або визначити вхідні параметри, які передаються до інструкції SQL у властивості RecordSource форми чи звіту або збережена процедура, якщо вони використовуються як джерело записів в проект Microsoft Access (ADP). Рядок (читання й записування).
вираз.InputParameters
expression — обов’язковий аргумент. Вираз, який повертає один з об'єктів у списку "Застосовується до".
Примітки
Цю властивість можна встановити, використовуючи вікно властивостей або код Visual Basic for Applications (VBA).
Нижче описано використання з властивістю RecordSource.
Рядок властивості InputParameter, що використовується в інструкції SQL для властивості RecordSource, має такий синтаксис:
state char=[Forms]![ім’я_форми]![StateList], salesyear smallint=[Forms]![ім’я_форми]![Введіть потрібний рік]
Після цього параметр state дорівнюватиме поточному значенню елемента керування StateList, а користувач отримає запит на введення значення для параметра salesyear. За наявності будь-яких інших параметрів, яких немає в цьому списку, їм буде призначено стандартні значення.
Запит має виконуватися з одним ? для кожного нестандартного параметра в списку InputParameter .
Команда оновлення або повторного виконання запиту в Microsoft Office Access 2007 має ініціювати повторне виконання запиту. Користувачі можуть зробити це в коді, викликавши стандартний метод Recordset.Requery. Якщо значення параметра прив'язано до елемента керування у формі, поточне значення елемента керування використовується під час повторного виконання запитів. Коли змінюється значення елемента керування, запит не змінюється автоматично.
Нижче описано використання зі збереженою процедурою.
Зразок рядка властивості InputParameter, який використовується зі збереженою процедурою:
@state char=[Forms]![ім’я_форми]![StateList], @salesyear smallint=[Forms]![ім’я_форми]![Введіть потрібний рік]
Після цього параметр @state дорівнюватиме поточному значенню елемента керування StateList, а користувач отримає запит на введення значення для параметра @salesyear. За наявності будь-яких інших параметрів збереженої процедури, яких немає в цьому списку, їм буде призначено стандартні значення.
Збережену процедуру слід виконати за допомогою рядка команд, що містить синтаксис {call } з одним ? для кожного нестандартного параметра в списку InputParameter .
Команда оновлення або повторного виконання запитів в Access має ініціювати повторне виконання збереженої процедури. Користувачі можуть зробити це в коді, викликавши стандартний метод Recordset.Requery. Якщо значення параметра прив'язано до елемента керування у формі, поточне значення елемента керування використовується під час повторного виконання запитів. Збережена процедура не змінюється автоматично, коли змінюється значення елемента керування.
Це діалогове вікно конструктора викликається, якщо збережена процедура вперше обирається джерелом записів для форми і вона містить будь-які параметри. Після створення рядка InputParameters те саме діалогове вікно використовується як конструктор для його змінення. Але в такому разі список параметрів складається з того, що вже міститься в цьому рядку.
Значення параметрів також можна налаштувати за допомогою коду, використовуючи об’єкти Command і Parameter об’єкта даних ActiveX. Якщо повертається набір результатів, форму можна прив’язати до нього, налаштувавши її властивість Recordset. Створення коду за допомогою об’єктів даних ActiveX – єдиний спосіб обробки збережених процедур, які не повертають набори результатів, як-от запити на змінення, а також тих, що повертають вихідні параметри або кілька наборів результатів.