|
|
|
| Доброго времени суток!
Помогите, пожалуйста, сортировать даты.
Задумка следующая:
Есть таблица, с полем ДатаРождения, на основе которой сделан отчет ДатаРождения_Отчет.
Есть форма с переключателями Январь, Февраль, Март и т.д. и кнопка ПросмотрОтчета.
Выбирается переключатель, например Январь, нажимается кнопка ПросмотрОтчета и открывается отчет ДатаРождения_Отчет, но с отфильтрованными данными – даты только за январь.
Помогите написать код, пожалуйста.
Я знаю, как это можно сделать при помощи запросов. Но тогда придется сделать 12 запросов (по числу месяцев) и 12 отчетов. Уверена - можно сделать все намного проще и использовать только один отчет.
Спасибо | |
|
| |
|
|
|
| вариант 1
Открывать отчет передавая строку фильтра см. Help по Docmd.OpenReport
Вариант 2
Создать запрос который будет содержать парамерт из поля формы
Select * from таблица where [месяц] = form.ИмяФормы.Переключатель
И на этом запросе построить отчет. | |
|
| |
|
|
|
| Спасибо за отклик.
Попробовала вариант 1
Пишу: DoCmd.OpenReport "ДатаРождения_Отчет", acViewPreview, , DatePart ("m", ДатаРождения) = 1
Не получается. В чем ошибка?
Я в этом новичок зеленый-зеленый | |
|
| |
|
|
|
| а так
DoCmd.OpenReport "ДатаРождения_Отчет", acViewPreview, , "DatePart ('m', ДатаРождения) = 1"
| или
DoCmd.OpenReport "ДатаРождения_Отчет", acViewPreview, , "Month( ДатаРождения) = 1"
|
| |
|
| |
|
|
|
| я даты в базе храню в формате yyyymmdd
если надо преобразовать для вывода, то
?cdate(Format(20080521,"####\.##\.##"))
21.05.2008
|
| |
|
| |
|
|
|
| Как все просто!
Спасибо огромное, все работает!!! | |
|
| |