Добавление новых данных в печатную форму
В данном примере рассмотрим добавление в накладную «Расход перемещение» новую колонку c названием поставщика. Для добавления новых данных в отчет необходимо открыть на редактирование саму печатную форму (рис.1). Для открытия на редактирование печатной формы щелкаем левой кнопкой мыши по кнопке «Печать» с изображением принтера, одновременно зажав кнопку Shift на клавиатуре
Откроется Дизайнер пакета отчетов(рис.2), он разбит на четыре окна, рассмотрим каждое из них:
1.В окне Отчеты список всех формирующихся шаблонов данной печатной формы. Именно этот список отчетов программа формирует при нажатии на кнопку «Печать» (рис.3).
Чтобы просмотреть интересующий шаблон, нужно открыть его на редактирование правой кнопкой мыши выбрав из выпадающего списка пункт «Редактировать шаблон» (рис. 4).
Мы можем добавить шаблон нового отчета, щелкнув правой кнопкой мыши в любом месте окна «Отчеты», и выбрав из выпадающего списка «Новый шаблон» (рис.5).
Статус определяет будет отчет формироваться автоматически, или для этого требуется подтверждение пользователя (рис.6):
•Статус «Не создавать» обозначает, что отчет не будет формироваться;
•Статус «С запросом» обозначает, что отчет будет формироваться с вызовом запроса пользователя;
•Статус «Без запроса» создает отчет автоматически.
2.В окне «Данные» дизайнера пакета отчетов создаются запросы на SQL, наборы данных, на основе которых формируются печатные формы. Для редактирования или просмотра какого-либо запроса нужно щелкнуть по нему правой кнопкой мыши и выбрать «Редактировать» (рис. 7).
Откроется окно, содержащее запрос, в котором можно внести изменения (рис. 8):
Для создания нового запроса нужно щелкнуть правой кнопкой мыши по «Новое подключение» и выбрать «Новый запрос» (рис. 9):
Чтобы проверить какие данные выдает тот или иной запрос, необходимо выполнить его в IBExpert.
3. Окно «Текстовые макроподстановки» содержит значения параметров, которые подставляются в запросы из окна «Данные» для задания дополнительных условий (рис. 10).
Так, например, в запросе Детализация при выполнении запроса :doc_detail: заменится на VW_DOC_DETAIL_ACTIVE, а :doc_id: присвоится значение 10048 (рис. 11).
4. В окне «Данные пользователя» отображаются параметры, значение которых задаются пользователем при формировании отчета. Например, если отчет необходимо сформировать с учетом данных в определенный период, то при создании отчета появится диалоговое окно, которое спросит у пользователя дату начала и дату конца периода. В данной печатной форме никаких дополнительных данных не требуется, поэтому окно пустое.
Редактирование печатной формы: Для добавления колонки необходимо открыть на редактирование отчет, узнать источник данных – с помощью какого запроса заполняется данное поле, проверить результат этого запроса – формируются ли нужные данные в результате его выполнения. Если нет, то запрос следует отредактировать. В окне «Отчеты» правой кнопкой мыши щелкам по отчету, в который хотим добавить колонку и выбираем «Редактировать шаблон» (рис. 12).
Откроется редактор отчета (рис. 13). Он состоит из заголовка отчета (ReportTitle), заголовка страницы (Header), набора данных (MasterData), подвала (Footer).
Источником данных является doc_detail_fr, то есть таблица заполняется данными, которые являются результатом выполнения запроса «Детализация документа» (рис. 14).
Откроем запрос на редактирование, чтобы проверить, формируются ли при его выполнении необходимые данные (рис. 15).
В IBExpert создаем новый запрос и копируем туда содержимое из окна запроса (рис. 16).
Заменяем на макроподстановки :doc_detail: и :doc_id: на данные из окна «Текстовые макроподстановки» Дизайнера пакета отчетов: 10048 и VW_DOC_DETAIL_ACTIVE соответственно. Получаем следующий работающий запрос: выбор всех данных из представления VW_DOC_DETAIL_ACTIVE, и поля nds из таблицы DEPS, при условии, что doc_id в представлении VW_DOC_DETAIL равен 10048 (рис. 17).
Выполняем запрос. Как мы видим, в результате его выполнения нужные данные не формируются. Следовательно, добавим выборку новых данных, а именно – наименование контрагента из таблицы AGENTS. Так как после оприходования на позицию могли создаваться документы корректировки, то выбор контрагента будем осуществлять через процедуру pr_motherpart, которая возвращает первоначальную партию (рис. 18):
Выполним запрос по кнопке F9, убеждаемся, что нужные данные выбираются (рис. 19).
Копируем наш рабочий запрос и вставляем в печатную форму, убрав макроподстановки (рис. 20):
Сохраняем кнопкой «ОК», и снова открываем на редактирование шаблон отчета. Теперь нужно добавить колонку. Для этого воспользуемся выносными линиями, их можно вытащить либо с верхней линейной разметки, либо с боковой слева: встать на линейную разметку, и вытянуть, зажав левую кнопку мыши . С их помощью настраиваем ширину колонок, и освобождая место для новой. Для того, чтобы отрегулировать размер колонки, нужно выделить ее, навести курсор мыши на ее границу, чтобы он превратился в двойную стрелку, далее зажимая левую кнопку мыши перетаскиваем границу на нужное расстояние.(рис. 21). Если нужно подвинуть текстовый объект, или несколько объектов, то необходимо выделить его и передвигать с помощью клавишей на клавиатуре «Вверх», «Вниз», «Вправо», «Влево» и зажатой кнопкой Ctrl.
Теперь создадим заголовок для новой колонки: создаем новый объект «Текст» (рис. 22):
В нем название заголовка колонки – Поставщик (рис. 23).
Регулируем длину и ширину данного объекта, обрамляем рамками с помощью панели
Теперь необходимо добавить колонку с данными. В нашем случае – это информация документа прихода у каждой позиции, добавленной в документ перемещения. Для этого аналогично создаем объект «Текст» и нажимаем на кнопку «Вставить выражение» (рис. 25).
Открывается «Редактор выражений», в нем выбираем источник данных doc_detail_fr и выбираем данные SAGENT– название поставщика, ,щелкаем по ним два раза левой кнопкой мыши и нажимаем ОК (рис. 26, 27, 28).
Подтверждаем кнопкой «ОК». Редактируем объект по ширине и высоте, обрамляем линиями. Выравниваем текст для эстетичного вида (рис. 30).
Чтобы сохранить изменения в отчете нужно нажать на значок дискеты. Для предварительного просмотра – значок лупы (рис. 31).
После того, как все изменения были сохранены, закрываем окно редактирования отчета. В окне дизайнера пакета отчетов обязательно сохраняем изменения нажатием на кнопку «Сохранить» с эмблемой дискеты, в противном случае никакие изменения не сохранятся! (рис. 33). Закрываем дизайнер.
Теперь, при формировании документа Накладная в расходе перемещением появилась колонка, содержащая информацию по приходной накладной позиции.