|
Отдел технической поддержки дата обновления 07.08.2024 |
|
"Групповые операции"Под групповыми операциями понимается создание отчетов сразу по нескольким проектам, например создание суммарной итоговой накладной по группе проектов, перечня отправленных в производство заказов. Существуют два варианта создания групповых отчетов:
Эта команда автоматически производит открытие запроса для таблицы проектов ListPrj, выделение нужных проектов исходя их результата запроса по индексам проектов (pUnic.AsInteger) и закрытие запроса (~SQLn.Конец~). Применение команд ~SQLn:Начало~ и ~SQLn:Конец~ при использовании команды выбора не требуется. Для снятия выделения имеется команда: ~SQLn:Выбор.Проекты.Удалить~ Для подстановки в программируемый цикл условия по выделенным проектам используется команда: ~SQLn:Добавить:Выбор.Проекты~. ДополнительноВ генераторе отчетов возможно создание диалоговых форм для ввода значений пользователя; например можно создать простое окно запроса двух дат - периода выборки проектов. Подробнее об использовании мастера диалоговых окон-форм смотрите в разделе "Формы статистики" прилагаемого руководства пользователя. Примеры<!-- выделение проектов зарегистрированных в марте 2013 года и отправленных в производство --><!-- составляем запрос по проектам для программируемого цикла SQL1 --> ~SQL1:Установить:SELECT pUnic FROM ListPrj WHERE~ <!-- добавляем условие отправки проекта в производство --> ~SQL1:Добавить:(pWork=1)~ <!-- добавляем условие по периоду --> ~SQL1:Добавить:AND(pDate>='28.02.13')AND(pDate-1<'01.04.13')~ <!-- автоматическое выделение нужных проектов по результату запроса --> ~SQL1:Выбор.Проекты~ <TABLE style="border-collapse: collapse" border=1 bordercolor=#0> <TR><!-- заголовок таблицы --> <TD align=center bgColor=#CCCCCC>Заказ №</TD> <TD align=center bgColor=#CCCCCC>Регистрация</TD> <TD align=center bgColor=#CCCCCC>Адрес</TD> <TD align=center bgColor=#CCCCCC>Контрагент</TD> <TD align=center bgColor=#CCCCCC>Телефон</TD> </TR> ~Проект:Начало~ <TR> <TD align=center>~Проект:Номер_заказа~</TD> <TD align=center>~Проект:Дата_регистрации~</TD> <TD align=center>~Проект:Адрес~</TD> <TD align=center>~Проект:Контрагент~</TD> <TD align=center>~Проект:Контрагент.Телефон~</TD> </TR> ~Проект:Конец~ </TABLE> Выходной отчет будет иметь примерный вид:
ПОЯСНЕНИЕ Выше был приведен запрос выбора проектов по дате их регистрации в виде: ~SQL1:Добавить:AND(pDate>='28.02.13')AND(pDate-1<'01.04.13')~. Дело в том, что в поле pDate (тип timestamp) таблицы ListPrj сохраняется не только дата, но и время. Поэтому запрос со следующим условием выборки: ~SQL1:Добавить:AND(pDate>='28.02.13')AND(pDate<='01.04.13')~ не выдаст в результат проекты зарегистрированные 1 апреля 2013 года после 00:00. |