Для заполнения поля со списком или списка на форме с параметром можно воспользоваться 2 путями (может быть откроют еще несколько, но пока знаю только эти два): Свойство поля со списком "Тип источника строк" должно стоять "Таблица, представление, процедура".
1. Источником строк в поле со списком является хр. процедура (источник задается программно).
В свойстве поля со списком (списка) "Источник строк" вписать выражение: exec "Имя хр процедуры" "Параметр1","Параметр2"
(Например: exec "Моя любимая ХП" "03.03.2002","23.03.2002") Параметры перечислять в той же последовательности, как они объявлены в самой хранимой процедуре.
Конечно же данный способ не подходит, если надо сослаться в качестве параметра на какое-либо поле в форме. Поэтому придется заполнять свойство "Источник строк" программно:
Впервые эта информация была опубликована на сайте Андрея Митина
2. Источником поля со списком является sql-выражение.
Заполнение придется производить программно:
Me("№ накладной(ф)").RowSource = "SELECT [№ накладной] FROM [Накладные расхода] WHERE (Дата BETWEEN CONVERT(DATETIME, '" & Me("Начальная дата данных") & "',104) AND CONVERT(DATETIME,'" & Me("Конечная дата данных") & "',104)) and [Код контрагента] = " & Forms("Расход")("Контрагент")
3. Источником строк в поле со списком является хр. процедура.
В свойстве поля со списком (списка) "Источник строк" вписать название процедуры. Причем в самой процедуре название параметра должно совпадать с названием поля на форме. Например: имеется ХП "SELECT * FROM Таблица WHERE Дата BETWEEN @Начальная_дата AND @Конечная_дата", то и на форме должны присутствовать 2 поля: [Начальная_дата] и [Конечная_дата]