|
||
|
||
|
|
Как быстро разработать красивый отчет используя Универсальный отчет в прикладных решениях фирмы 1С
Конфигурации: БП, УТ, УПП и прочие фирмы 1С на платформе 8.1
рисунок 1
Универсальный отчет – объект конфигурации, который можно использовать как самостоятельно, так и в других отчетах. Данный отчет присутствует во многих конфигурациях фирмы 1С: Управление торговлей, Бухгалтерия предприятия, Управление производственным предприятием и пр. Разбираться в его работе нет нужды, достаточно разобраться, как его можно использовать
рисунок 2 Как видим, у данного отчета только один реквизит – Универсальный отчет. Зададим новое имя нашему отчету – «Товары на остатках и в резерве»: рисунок 3 Откроем форму отчета: рисунок 4 Форма отчета абсолютна безлика, нет даже названия в шапке. Зато есть две даты. Обратим внимание на это, ведь нам нужна одна дата. Но не спешим убирать одну из дат, это настраивается в модуле отчета, откроем его. Для этого закрываем форму, нажимаем «Действия – Открыть модуль объекта». Модуль объекта выглядит на диво лаконично, Вот он весь рисунок 5 Обратим внимание на строки в конце модуля: рисунок 6
Собственно здесь настраивается то, как мы вводим период: 1 – на дату (как нам и нужно), 0 – произвольный период (в это случае будут две даты), неделя, декада и прочее. Оставим без изменения.
рисунок 7
В начале, как мы видим, находятся некоторые настройки универсального отчета: какое название выводить в шапке, выводить ли отрицательное красным и пр. Нас это не интересует, листаем дальше, пока не найдем запрос. Запрос начинается со строки
рисунок 8
Содержание этого запроса нас так же не интересует, ведь это запрос для старого отчета. Напишем вместо него новый.
рисунок 9
В левой части находятся возможные источники данных, в средней – таблицы, которые мы будем использовать, в правой части – те поля, которые будем использовать при выводе данных отчета.
рисунок 10 Заполним поля (правая часть). Из таблицы Товары на складах выберем поля Склад, Номенклатура, Характеристика номенклатуры, Серия номенклатуры, Количество остаток. Из таблицы Товары в резерве на складах выберем Количество остаток (это другой остаток — резерв), из таблицы Цены номенклатуры Тип цен и Цена: рисунок 11 Кнопкой добавим два новых поля: Сумма на складе и Сумма в резерве (цена. помноженная на остаток на складе и остаток в резерве). После нажатия на указанную кнопку откроется окно в котором можно сконструировать нужное нам выражение рисунок 11 Это Сумма на складе, аналогично, Сумма в резерве: рисунок 12 В итоге, в полях у меня получилось следующее: рисунок 13 Для таблиц Товары на складах, Товары в резерве на складах, Цены номенклатуры необходимо установить даты, на которые мы рассчитываем остатки и цены. Для этого выберем таблицу Товары на складах и нажмем кнопку - параметры виртуальной таблицы. Откроется окно параметров. В строке Период напишем &ДатаКон: рисунок 14
Этим мы указали, что остатки будут рассчитываться на конец периода, который мы будем задавать при формировании отчета. Аналогично настроим для других таблиц.
рисунок 15
Отредактированные псевдонимы выделяются черным. Псевдонимы, которые мы присвоили полям, запоминаем, это понадобится дальше.
рисунок 16 На закладке «Итоги» выберем числовые поля, — по ним будут рассчитываться итоги. По полю Цена берем максимум, по остальным – считаем суммы. рисунок 17
Теперь выберем те поля, которые будут использованы в настройках построителя. Перейдем на закладку «Построитель». На закладке «Построитель» находятся еще пять закладок. На закладке «Поля» выберем те поля, которые будут использоваться при настройке отчета.
рисунок 18
Галочки в средней колонке «Использовать дочерние» означают, что мы можем выбирать не только Склад, Номенклатуру и т.п., но и любое дочернее поле – Тип склада у склада, ставку НДС, артикул у номенклатуры и т.д. Дочерние можем использовать только у сложных типов данных, у простых (Цена, Количество, Сумма) – нет.
рисунок 19 На закладке «Порядок» выберем поля упорядочивания. Выберем поле Номенклатура: рисунок 20 Ну и наконец, закладка «Итоги». Выберем Склад, Номенклатура, — по этим полям будут вычисляться итоги: рисунок 21
Обращаю внимание, и здесь есть колонка «Использовать дочерние», т.е. итоги можно будет вычислять и по реквизитам этих полей.
рисунок 22 Ниже находится раздел, в котором настраиваются представление полей. Настроим представления для полей Склад, Номенклатура, Характеристика номенклатуры, Серия номенклатуры, Тип цен: рисунок 23
При этом первое поле – то, как мы настроили представление на закладке «Объединения / псевдонимы», второе поле – то, как оно будет отображаться в отчете. Например характеристика в запросе указана как «ХарактеристикаНоменклатуры», а представление укажем «Характеристика номенклатуры».
рисунок 24
При этом первое поле – то, как мы настроили представление на закладке «Объединения / псевдонимы». Второе поле – то, как оно будет отображаться в отчете. Третье – будет ли данный показатель включен по умолчанию. Четвертое – формат поля. Пятое и шестое – наименование группы и представление (можно несколько полей объединить в одно поле).
рисунок 25
Этими настройками мы установили то, что по-умолчанию, строки будут группироваться сперва по складу, затем по номенклатуре. Могли бы и не ставить, а настраивать в самом отчете, но я считаю, что по-умолчанию группировки должны быть. Аналогично, есть настройка и для колонок, но их использовать не будем.
рисунок 26
Эти поля будут отображаться в быстрых отборах. Пути к данным должны быть те, которые мы указали при настройки построителя на закладке Отборы. Причем, на закладке Отборы строк может быть больше, чем в быстрых отборах.
рисунок 27
Аналогично, если у нас есть поля, не показатели, по которым мы не группируем данные, то в отчет они по умолчанию не попадут. Но мы можем указать их в качестве дополнительных полей что бы отображались.
рисунок 28 Как видите, дата одна и она не заполнена (расчет производится на конец текущего дня), три предопределенных отбора. Щелкнув по кнопке «Настройка» откроем настройки: рисунок 29 Есть показатели, настроены группировки. А если щелкнуть по кнопке «Расширенная настройка», то увидим в дополнительных полях Артикул: рисунок 30
Характеристику и Серию я выбрал сам. Выводиться данные поля будут с группировками (это у нас номенклатура) причем, показаны будут после Наименования.
рисунок 31
Замечание 1: В настройка запроса мы указали параметр ДатаКон. Кроме этого показателя есть еще три предопределенных: ДатаНач, ДатаНачала, ДатаКонца. Чем они отличаются? ДатаНачала и ДатаКонца это именно даты, первая – дата начала периода (если дата пустая, то начало ведения учета), вторая – дата конца периода (если дата пустая, то конец текущего дня). ДатаНач и ДатаКон – это границы периодов (дата + указание включения или исключения пограничного значения). Чем это грозит? К примеру, нужно отобрать документы по датам. Если в тексте запроса указать Документ.Дата >= &ДатаНачала, то все будет хорошо, если же сравнивать не с ДатаНачала, а с ДатаНач, то выполнение отчета будет прервано с ошибкой, ибо нельзя сравнивать Границу и Дату! Таблицы данных понимают все эти параметры.
рисунок 32 Процедура СформироватьОтчет должна быть такой: рисунок 33
ТипЦен должен быть реквизитом отчета, иначе этот параметр не будет виден в модуле объекта!
|
|