Программный запуск отчета с параметром для запроса в Access

Программирование на Visual Basic for Applications
shmelev
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 15.09.2003 (Пн) 13:44
Откуда: Смоленск

Программный запуск отчета с параметром для запроса в Access

Сообщение shmelev » 15.09.2003 (Пн) 14:03

Поможите кто может пож-ста. Засыпаюсь-очень срочно надо сделать.
Я не так часто пишу на vba, поэтому не обижайтесь на может быть глупый вопрос.
Вопрос следующий: есть запрос с параметром, на данном запросе построен отчет, который должен запускаться по кнопке. Как можно запустить отчет, чтобы не выскакивало окошко с запросом значения параметра, а задать значение параметра программно.
Вариации на тему:
Код: Выделить всё
   DoCmd.OpenReport rep, acViewNormal, select, number = 1


у меня не прошли.
Заранее благодарен!

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 15.09.2003 (Пн) 15:10

Я бы копнул в сторону Application.Reports - коллекция, содержащая все репорты текущей базы.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 16.09.2003 (Вт) 9:02

А я бы копнул в сторону ADODB.Command, коллекция Parameters. Только это для чистого кода, а в Access параметры передаются по другому, не помню как.
Lasciate ogni speranza, voi ch'entrate.

shmelev
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 15.09.2003 (Пн) 13:44
Откуда: Смоленск

Решение проблемы

Сообщение shmelev » 16.09.2003 (Вт) 10:07

:lol: Спасибо за попытки помочь мне с заданным мною вопросом.
Если воспользоваться предложенными направлениями копания через коллекции, то можно накопать просто тонны кода, и не факт что это будет нормальным решением...
Все гораздо проще.
Убираем в запросе параметр. При запуске из кода отчета указываем в свойстве WhereCondition значение условия на выборку, но без ключевого слова Where (см. доку). При этом поле, по которому ставится условие фильтра при запуске отчета должно обязательно присутствовать в запросе (в примере: запрос должен обязательно содержать поле number).
Код выглядит почти идентично коду, приведенному в вопросе (для варианта прямой печати отчета):
Код: Выделить всё
   DoCmd.OpenReport rep, acViewNormal, , "number = 1"

Само собой запрос прописан в отчете как источник данных.


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 40

    TopList  
cron