Как пользоваться универсальным отчетом. Бухучет инфо Структура универсальных отчетов

Шаг 1. Где находится Универсальный отчет в 1С 8.3

Универсальный отчет в 1С 8.3 вызывается через раздел Отчеты – Универсальный отчет:

Форма Универсального отчета выглядит так:

Шаг 2. Как формировать Универсальный отчет для поиска ошибок в учете

Случаются ситуации, когда оформили хозяйственную операцию при помощи Операции, введенной вручную: сумму по счету 68.02 отразили, а движения по регистру накопления НДС Покупки не сделали. В результате сумма в Книге покупок не сходится с суммой в оборотно-сальдовой ведомости по счету 68.02.

Важно! Чтобы понять по какому регистру формировать Универсальный отчет в 1С 8.3, необходимо пройти по блок-схеме, представленной ниже, и понять в результате проведения какого документа можно найти необходимый регистр:

Достаточно знать, что данные в Книгу покупок собираются по регистру НДС Покупки , чтобы сформировать по нему Универсальный отчет. Так как Универсальный отчет будем сравнивать с карточкой счета 68.02, то отчет необходимо настроить так, чтобы информация и в карточке, и в отчете была представлена в едином ключе.

Шаг 3. Как настроить универсальный отчет в 1С 8.3

Настроим отчет следующим образом, нажав на кнопку Показать настройки:

  • На закладке Группировка по кнопке Добавить добавим строчки Организация и Регистратор. При этом добавили группировку по организации, чтобы увидеть итоговую сумму по организации для удобства сравнения с итоговой суммой в карточке:

  • На закладке Отбор установим отбор по нужной организации при помощи кнопки Добавить:

В результате отчет будет иметь такой вид:

В таком виде его легко сравнить с карточкой счета 68.02, так как они имеют похожую структуру. Что позволяет понять какой документ не совершил движения по регистру накопления НДС Покупки или по бухгалтерскому регистру:

Приведем примерную таблицу регистров, которые желательно проверить при обнаружении ошибки в том или ином разделе учета:

Внимание! Очень часто мало исправить один регистр: возможно ошибка не уйдет, а станет более скрытой и проблемной. В особо сложных случаях потребуется исправлять набор регистров и в этом случае базу 1С 8.3 для анализа лучше отдать специалисту-программисту 1С.

Шаг 4. Как исправить найденную ошибку

В нашем примере в карточке счета 68.02 оказался «лишним» документ Операция, введенная вручную, который сформировал суммы на счетах бухгалтерского учета, но не сформировал движения по регистру накопления НДС Покупки и не попал в Книгу покупок. То есть в данном случае нужно добавить движение по этому регистру в данном документе. Как это сделать описано подробно в .

В результате получим следующую картину:

Шаг 5. Как пользоваться Универсальным отчетом в 1С 8.3

Универсальный отчет в 1С 8.3 можно построить по справочникам, регистрам сведений, документам и регистрам бухгалтерии.

По регистру бухгалтерии

Например, вместо карточки счета можно сформировать Универсальный отчет по регистрам бухгалтерии со следующими настройками:

Чтобы не загромождать отчет на закладке Показатели снимем флажки у лишних показателей:

При помощи следующих команд управления окнами:

Можно расположить окна с отчетами рядом для удобства сравнения данных:

По регистру сведений

Например, необходимо в 1С 8.3 найти информацию по сотрудникам, у которых уже открыты лицевые счета в банках для перечисления заработной платы.

Сформируем Универсальный отчет по одноименному регистру сведений, сделав следующие настройки:

При наличии в базе 1С 8.3 нескольких организаций можно установить отбор по нужной организации на закладке Отбор. Получим вот такой вариант:

По справочнику

Предположим, из базы 1С 8.3 нужно получить список Покупателей с их адресами и номерами телефонов. Сделаем такие настройки:

Важно! Мы сделали отбор по вхождению контрагента в группу Покупатели справочника Контрагенты, но, если пользователь ошибся и занес контрагента-покупателя в другую группу, то данный контрагент может не попасть в отчет.


На рисунке видно, что наименования показателей находятся в скобках, а рядом указан заголовок колонки, который более понятен и читаем для пользователя, который будет отображаться в отчете. Для изменения заголовка необходимо щелкнуть по строчке с показателем правой кнопкой мыши и выбрать пункт «Установить заголовок»:

В результате получим отчет такого вида:

Как работает Универсальный отчет в 1С

Рассмотрим еще несколько вопросов, ответы на которые можно получить благодаря использованию Универсального отчета в 1С 8.3.

Вопрос №1

Как в Универсальном отчете сделать выборку только по конкретному покупателю и узнать, сколько конкретной (определенной) номенклатуры товара ему продано?

Ответ: При проведении документа Реализации (акт, накладная) в 1С 8.3 движения формируются в бухгалтерском регистре и НДС Продажи (не берем в случай раздельного учета НДС). В регистре НДС Продажи нет аналитики по товарам, поэтому придется брать данные из бухгалтерского регистра.

Настройка Универсального отчета в данном случае осуществляется следующим образом:

  • Период;
  • Регистр бухгалтерии;
  • Журнал проводок (бухгалтерский и налоговый учет);
  • Движения субконто:
  1. Далее нажимаем на кнопку Показать настройки, на закладке Отбор добавляются значения:
  • Счет Дт – Равно – 62.01;
  • Счет Кт – Равно – 90.01.1:

  1. На закладке Группировка добавляются значения:
  • Субконто 1 Дт;
  • Субконто 3 Кт:

  1. После данных настроек необходимо нажать кнопку Сформировать и Универсальный отчет в 1С 8.3 будет построен по нужной форме:

Вопрос №2

В расходах не отражается оплата труда, налоги и взносы. В КУДиР этих расходов не видно. УСН к уплате рассчитывается без этих расходов. Как найти ошибку с помощью Универсального отчета?

Ответ: Построим в Универсальном отчете анализ по регистру накопления Расходы при УСН. Настройка Универсального отчета в данном случае осуществляется следующим образом:

  1. В шапке отчета для отбора информации указываются следующие значения:
  • Период;
  • Расходы при УСН;
  • Остатки и обороты:
  • Вид расхода;
  • Элемент расхода:

  1. На закладке Показатели значения должны быть установлены как на рисунке:

Из отчета видим, что некоторые расходы по графе Отражение в НУ указаны как Не принимаются . Это означает, что данные расходы не будут автоматически включаться программой в КУДиР и при вводе документов допущена ошибка. Необходимо исправить аналитику в таких документах, то есть статья затрат должна иметь значение Принимаются в НУ как показано на рисунке:

После этого необходимо перепровести документы начисления зарплаты и перезакрыть месяцы.

Вопрос №3

В КУДиР в расходы НУ не попадает стоимость проданного товара. Как найти ошибку с помощью Универсального отчета?

Ответ: В 1С 8.3 расходы принимаются в КУДиР в соответствии в выставленными условиями в учетной политике. При реализации товаров в соответствии с НК РФ такими условиями являются: товар должен быть оприходован, оплата за него произведена поставщику и отражена реализация данного товара. Когда все три условия выполнены, то расходы будут включены в КУДиР.

Построим Универсальный отчет в 1С 8.3 по регистру накопления Расходы при УСН и уточним условия, что не выполняются для принятия в расходы в НУ. Настройка Универсального отчета в данном случае осуществляется следующим образом:

  1. В шапке отчета для отбора информации указываются следующие значения:
  • Период;
  • Регистр накопления бухгалтерии;
  • Расходы при УСН;
  • Остатки и обороты:
  1. Далее нажимаем на кнопку Показать настройки, на закладке Группировка добавляются значения:
  • Вид расхода;
  • Элемент расхода:

  1. На закладке Показатели значения должны быть установлены как на рисунке:

  1. После данных настроек необходимо нажать кнопку Сформировать и отчет будет построен по нужной форме:

Как видно из отчета, причина по которой расход по приобретенным товарам не попадает в КУДиР – это отсутствие оплаты поставщику за товар.

Следовательно, либо оплата за товары поставщику не правильно проведена, либо ее действительно просто не было и следовательно расход по приобретенным товарам не должен попасть в КУДиР.

Вопрос №4

Как посмотреть цену прихода товара в 1С Предприятие 8.3 (8.3.8.1964) с помощью Универсального отчета?

Ответ: Специального отчета по отслеживанию цены прихода товара в 1С нет, но можно построить свой отчет с помощью Универсального отчета по документам Поступление (акт, накладная). Настройка Универсального отчета в данном случае осуществляется следующим образом:

  1. В шапке отчета для отбора информации указываются следующие значения:
  • Период;
  • Документ;
  • Поступление (акты, накладные);
  • Товары:
  1. Далее нажимаем на кнопку Показать настройки, на закладке Группировка добавляется значение Номенклатура:

  1. На закладке Показатели значения должны быть установлены как на рисунке:

  1. После данных настроек необходимо нажать кнопку Сформировать и отчет будет построен по нужной форме:

ВНИМАНИЕ! Обращаем внимание, что не любую задачу можно решить с помощью Универсального отчета. Главное его неудобство, что он работает ТОЛЬКО с одним объектом анализа: справочником, документом, бухгалтерским регистром, регистром сведений или регистром накопления.

Сложные связи между объектами он не отслеживает. Для этого существует специальный инструмент СКД – Система компоновки данных. С его помощью программисты и опытные пользователи могут формировать уже сложные отчеты, отбирать нужную информацию, добавлять свои поля для расчета.

Возможности «Универсального отчета» в программе 1С 8.3 Бухгалтерия.

В программе 1С 8.3 Бухгалтерия предприятия 3.0 в разделе «Отчеты» существует множество различных отчетов по каждому виду деятельности. В основном их достаточно для повседневного учета. Но иногда для анализа той или иной проблемы необходимо копать глубже, вплоть до сравнения, например, записей в документе, и в регистрах, на которые он влияет. А бывают случаи, когда стандартных отчетов просто-напросто не хватает.

Для такого глубокого анализа данных, либо для создания собственного отчета в программе 1С 8.3 существует «Универсальный отчет». Его возможности я и собираюсь рассмотреть в данной статье.

Общее описание универсального отчета в 1С 8.3

Для начала разберемся где найти универсальный отчет? Если зайти в меню «Отчеты», а потом нажать ссылку «Универсальный отчет», мы увидим вот такое окно:

Вкратце пройдемся по его элементам управления.


С верхней строчкой закончили.

  • Ниже самая интересная кнопка – это «Показать настройки». Здесь лучше показать на примере

Инструкция по настройке универсального отчета 1С 8.3

Так как мы работаем в программе 1С:«Бухгалтерия предприятия 3.0», то прежде всего нас интересуют бухгалтерские регистры. В конфигурации 3.0 нам доступен только один – «бухгалтерский и налоговый учет». Выбираем его. Посмотрим обороты по 10.01 «Материалы» счету.

Выбираем период. У меня это будет весь 2012 год. Далее нажимаем кнопку «Показать настройки»:

Что бы получить наименования материалов, выберем группировку со 1-му субконто. Именно в нем хранится наименование, точнее ссылка на номенклатуру.

Переходим на закладку «Отборы»:

Здесь нам нужно указать, что мы хотим видеть только счет 10.01.

При желании вы можете указать здесь сколько угодно условий отбора.

Нажмем кнопку сформировать, и посмотрим, что у нас получилось:

Видно, что в отчет попадает слишком много ненужных колонок. Таких, как валютный учет, налоговый учет и прочее. В данном примере эти учеты не ведутся и мы хотим убрать эти колонки из отчета.

Заходим опять в настройки и сразу заходим на закладку «Показатели»:

Убираем флажки с тех колонок, которые нам выводить не надо.

На закладке «Сформировать» можно указать поле, по которому будет происходить сортировка. Например, что бы материалы вышли по алфавиту:

Нажимаем «Сформировать»:

Получаем желаемый результат. Таким образом можно получить огромное количество вариантов отчета.

Теперь отчет можно распечатать, либо отправить по электронной почте.

Если в колонки с числами выделить эти числа, сверху, в поле со значком «Сумма» появится сумма выделенных чисел.

По материалам: programmist1s.ru


Ключевые слова: Универсальный отчет, Общий отчет, ОтчетОстаткиИОбороты, ОтчетСписокКроссТаблица, Остатки и Обороты, Список кросс / таблица

Большинство отчетов построены на одних и тех же базовых принципах. Самый быстрый способ разработать отчет это воспользоваться встроенным в платформу конструктором «Конструктор выходных форм». Однако, при разработке (или доработке) типовой конфигурации перед программистами ставится требование по унификации программного кода, а также форм справочников, документов и выходных форм отчетов. Поэтому в типовых конфигурациях часто используемый программный код выносят в общие модули, а для унификации выходных форм отчетов используют специальные «универсальные» отчеты.
Все множество отчетов в типовых конфигурациях можно разделить на отчеты формируемые на основании общих отчетов, когда все функции по формированию выходной формы и настроек передаются во внешний модуль общего отчета и сформированные с использованием построителя, когда все функции формирующие выходную форму содержатся в модуле объекта.
В УТ и УПП существуют два общих отчета: «Отчет остатки и обороты (ОтчетОстаткиИОбороты)» и «Отчет список кросс таблица (ОтчетСписокКроссТаблица)». Первый «Отчет остатки и обороты (ОтчетОстаткиИОбороты)» предназначен для формирования линейных отчетов типа «Начальный остаток – Приход – Расход – Конечный остаток», при этом группировки выводятся по строкам. Второй отчет «Список / кросс таблица (ОтчетСписокКроссТаблица)» предназначен для вывода кросс таблиц, когда группировки разворачиваются не только по строкам, но и по столбцам.

Структура универсальных отчетов

Рассмотрим реквизиты, элементы формы и процедуры модулей универсальных отчетов. Состав реквизитов, функций у отчетов несколько отличаются, поэтому отличия «Список / кросс таблица (ОтчетСписокКроссТаблица)» от «Отчет остатки и обороты (ОтчетОстаткиИОбороты)» будем приводить ниже описания общих реквизитов, функций, элементов формы.
Реквизиты универсального отчета:
  • «ИмяРегистра» - строка, наименование регистра накопления из которого получаем данные
    «ДатаНач» – дата, с которой начинается выборка данных
  • «ДатаКон» – дата, по которую производится выборка данных. Т.е. период формирования отчетов с «ДатаНач» по «ДатаКонк»

  • «ПостроительОтчета» – тип ПостроительОтчета, данный реквизит содержит в себе экземпляр объекта ПостроительОтчета с помощью которого формируется вывод информации в табличную часть, производится управление настройками отчета (группировками, отборами, сортировкой), а также происходит управление внешним видом отчета (выводи итогов по всем уровням, раскрашивание группировок)
  • «ИспользоватьСвойстваИКатегории» – булево, предназначен для уточнения выборки данных отчета по свойствам и категориям объектов. После указания данного параметра в настройках отчета предоставляется возможность выбирать те или иные свойства и категории объектов для группировок, отборов и упорядочивания

  • «СохраненныеНастройки» – структура, в который помещаются настройки, которые сохраняются при закрытии отчета и восстанавливаются при последующем открытии
  • «РаскрашиватьИзмерения» – булево, установка данного реквизита в Истина указывает на то что нужно при выводе строк группировок и полей их раскрашивать для лучшего представления информации на экране

  • «ВыводитьПоказателиВСтроку» – булево, указывает на возможность выводить группировки в одну строку
  • «ВыводитьДополнительныеПоляВОтдельнойКолонке» – булево, если в настройках отчета указаны дополнительные поля их нужно выводить в разных колонках

  • «ВыводитьИтогиПоВсемУровням» – булево, для некоторых группировок можно специально запретить выводить цифры по показателям, данный реквизит снимает данный запрет
  • «ПоказыватьЗаголовок» – булево, указывает выводить или не выводить заголовок на экран (регулируется кнопкой «Заголовок» на форме отчета)

  • Табличная часть «Показатели» - содержит в себе список выводимых на экран показателей

  • В отчете «Список кросс / таблица (ОтчетСписокКроссТаблица)»:
  • «Использовать интервальные группировки (ИспользоватьИнтервальныеГруппировки)» - булево, указывает на возможность выводить данные по интервалам периодов
  • Табличная часть «Интервалы» - содержит в себе список интервалов

Формы универсального отчета:
«ФормаОсновная» – основная форма вывода данных.
Реквизиты «ФормаОсновная»:
  • «ОтчетОбъект» - основной объект отчета, ссылка на «ОтчетОстаткиИОбороты» или «ОтчетСписокКроссТаблица»

  • В модуле формы, содержатся следующие переменные:
  • «ВысотаЗаголовка» - число, количество строк в заголовке, данная переменная используется для, когда нужно скрыть/отобразить заголовок отчета в табличном документе
  • «ИдентификаторОкнаРасшифровки»

  • «ФормаНастройки» - ссылка, на форму настройки
  • «НеЗаполнятьНастройкиПриОткрытии» - булево, переменная используется, когда не нужно заполнять начальные настройки отчета. При первом открытии переменная равна ЛОЖЬ, при расшифровке отчета переменная будет установлена в ИСТИНА

  • «СтруктураСвязиЭлементовСДанными» - структура, содержит данные указание каким элементам формы соответствуют реквизиты отчета

  • Элементы формы «ФормаОсновная»:
  • «КоманднаяПанельФормы» – содержит управляющие кнопки формы:
    o Меню «Подменю» (Действия) – содержит список возможных действий формы
    o Кнопка «Сформировать» – при нажатии формирует отчет
    o Кнопка «Отбор» – открывает/закрывает панель отбора
    o Кнопка «Заголовок» – открывает/закрывает в табличной части строки с заголовком отчета
    o Кнопка «Настройка» - открывает форму настроек отчета
    o Кнопки «ВосстановитьНастройки», «СохранитьНастройки» - сохраняют и восстанавливают настройки отчета
    o Кнопка «Справка (Действие1)» – вызывает справку по отчету
  • «Период с: (ДатаНач)», «по: (ДатаКон)» - поле ввода, ввод даты начала/окончания выбора данных для отчета

  • «Раздел учета (ИмяРегистра)» - поле выбора, наименование регистра по которому формируется отчет
  • «ПанельОтбор» - панель, на которой помещаются элементы для реализации механизма быстрого доступа к отборам отчета

  • «ДокументРезультат» - табличный документ, куда выводятся данные отчета
Модуль формы «ФормаОсновная»:
Перечислим процедуры:
  • «ПередОткрытием» - обработчик события перед открытием формы. Содержит код который выполняется для инициализации начальных настроек отчета. Восстанавливает сохраненные данные, реквизит «ИмяРегистра»

  • «ПриОткрытии» - обработчик события при открытии формы
  • «ОбновитьОтчет» - процедура формирует отчет и обновляет табличный документ «ДокументРезультат»

  • «ОтобразитьОтбор» - отобразить/скрыть панель формы отбора
  • «ЗаполнитьОбъектПоДиалогу» - заполняет реквизиты отчета по реквизитам формы

  • «ЗаполнитьДиалогПоОбъекту» - заполнение реквизитов формы по реквизитам отчета
  • «ВыводЗаголовка» - вывод заголовка отчета

  • «СформироватьЗаголовокФормы» - формирует текст заголовка
  • «ПослеВосстановленияЗначений» - после восстановления значений на форме. В данную процедуру - обработчик события формы можно вставить код который будет выполнять установку значений реквизитов отчета и формы после открытия формы отчета. Сохраняемые значения обычно помещаются в реквизит СохраненныеНастройки и после восстановления формы все настройки помещаются в реквизит СохраненныеНастройки

  • «ПередСохранениемЗначений» - обработчик – события формы, выполняется при закрытии формы и сохранении значений из реквизита СохраненныеНастройки
  • «ОбработкаОповещения» - обработчик оповещения

  • «КнопкаНастройкаПериодаНажатие», «ПолеНастройки1ПриИзменении», «ПолеНастройкиС1ПриИзменении», «ПолеНастройкиПо1ПриИзменении», «ПолеВидаСравнения1ПриИзменении» - обработчики событий элементов формы
  • «ДокументРезультатОбработкаРасшифровки» - обработчик события "Обработка расшифровки" поля табличного документа «ДокументРезультат»

«ФормаНастройка» - форма предназначенная для настройки отчета, вызывается при нажатии кнопки «Настройка» в основной форме отчета.
Реквизиты «ФормаНастройка»:
  • «ОтчетОбъект» - отчет, ссылка на «ОтчетОстаткиИОбороты» или «ОтчетСписокКроссТаблица»


  • «ВызывающийОтчет» - тип произвольный
  • «ИнтервальнаяГруппировка» - тип строка

  • «ИнтервальноеПоле» - тип произвольный
  • «ОтобранныеИнтервалы» - тип таблица значений. Связан с элементом формы «ОтобранныеИнтервалы» на закладке «Интервалы группировок»

Элементы «ФормаНастройка»:
«Панель отчета (ПанельОтчета)» содержит следующие закладки:
Закладка «Общие» содержит элементы:
  • «Период с: (ДатаНач)», «по: (ДатаКон)» - поле ввода, дата начала и окончания выборки данных из отчета. Данные связаны с реквизитами отчета «ДатаНач» и «ДатаКон»

  • «Раздел учета (ИмяРегистра)» - поле выбора, данные элемента связаны с реквизитом отчета «ИмяРегистра», содержит имя регистра по которому формируется отчет. Если «ФормаНастройки» вызывается из внешнего отчета, тогда это поле недоступно для просмотра и изменения
  • «Использовать свойства и категории (ИспользоватьСвойстваИКатегории)» - флажок, устанавливает флаг использования свойств и категорий объектов, данные этого флажка связаны с данными реквизита отчета «ИспользоватьСвойстваИКатегории»

  • «Раскрашивать измерения (РаскрашиватьИзмерения)» - флажок, данные связаны с реквизитами отчета «РаскрашиватьИзмерения», если флажок установлен тогда уровни группировок выводимы в табличный документ будут выделены цветами
  • «Выводить итоги по всем уровням (ВыводитьИтогиПоВсемУровням)» - флажок, если установлен, тогда в табличный документ выводятся итоги по всем уровням группировок, связан с реквизитом отчета «ВыводитьИтогиПоВсемУровням»

  • «Выводить в разных колонках (ВыводитьВРазныхКолонках)» - флажок, по-умолчанию значения показателей выводятся в одной ячейке, при установке данного флажка значения показателей будут выводится в двух ячейках
  • «СписокПоказателей (Показатели)» - табличная часть, содержит список показателей

  • В отчете «Список / кросс-таблица (ОтчетСписокКроссТаблица)»:
  • «Период (ДатаНач)» - поле ввода даты, предназначено для выбора периода. Видимость данного поля регулируется переменной модуля «мРежимВводаПериода», в зависимости от значения данной переменной в данном поле можно выбирать период с шагом день, месяц, квартал, год
Закладка «Группировки»:
  • «ИзмеренияСтроки (ПостроительОтчета.ИзмеренияСтроки)» - тип ИзмеренияПостроителяОтчета, измерения, откладываемые по строкам отчета

  • В отчете «Список / кросс таблица (ОтчетСписокКроссТаблица)»:
  • «ИзмеренияКолонки (ПостроительОтчета. ИзмеренияКолонки)» - тип ИзмеренияПостроителяОтчета, измерения, откладываемые по колонкам отчета

  • В отчете «Список / кросс таблица (ОтчетСписокКроссТаблица)»: если реквизит
  • «ИспользоватьИнтервальныеГруппировки» установлен в «Истина», тогда становится доступным закладка
«Интервалы группировок»:
  • «Наименование (ИнтервальноеПоле)» - поле выбора. При открытии формы заполняется теми измерениями из коллекции «ПостроительОтчета.ДоступныеПоля» у кторых наименование начинается на «ИН»

  • «ОтобранныеИнтервалы» - таблица значений. При изменении «Наименование (ИнтервальноеПоле)» заполняется список выбранных интервалов
Закладка «Отбор»:
  • «Отбор (ПостроительОтчета.Отбор» - тип Отбор. Отбор построителя отчетов

Закладка «Поля»:
  • «ВыбранныеПоля (ПостроительОтчета.ВыбранныеПоля)» - тип ПоляПостроителяОтчетов. Поля для вывода в отчет

  • «Выводить дополнительные поля в отдельной колонке (ВыводитьДополнительныеПоляВОтдельнойКолонке)» - флажок, при установке выводит поля в отдельных колонках
Закладка «Сортировка»:
  • «Порядок (ПостроительОтчета.Порядок)» - тип Порядок. Сортировка группировок в отчете

Модуль «ФормыНастройки», содержит следующие процедуры и обработчики событий:
  • «ЗаполнитьДиалогПоОбъекту» - заполняет диалог по значениям реквизитов отчета

  • «ПередОткрытием» - обработчик события "Перед открытием" формы отчета
  • «ИмяРегистраПриИзменении», «КнопкаНастройкаПериодаНажатие», «ОсновныеДействияФормыОК», «ИспользоватьСвойстваИКатегорииПриИзменении», «КоманднаяПанельСписокПоказателейУстановитьВсе», «КоманднаяПанельСписокПоказателейСнятьВсе», «ОтборЗначениеНачалоВыбора», «ОтборПередУдалением», «ДатаНачПриИзменении», «ДатаКонПриИзменении» - обработчики событий соответствующего элемента формы

  • В модуле формы также инициализируется переменная СписокРегистров (функция ПолучитьСписокРегистровОстатков) и указывается как список для выбора элемента формы «Раздел учета (ИмяРегистра)»

  • В отчете «Список / кросс таблица (ОтчетСписокКроссТаблица)»:
  • «ОтобратьИнтервалы» - процедура формируем список отобранных интервалов в реквизите «ОтобранныеИнтервалы», вызывается при изменении поля выбора «Наименование (ИнтервальноеПоле)»
  • «ВставитьИнтервалыПоИмени» - процедура вызывается перед формированием отчета, заполняет табличную часть «Интервалы»

  • «КнопкаНастройкаПериодаНажатие» - обработчик нажатия кнопки настройки периода
  • «ПлюсПериодНажатие», «МинусПериодНажатие» - обработчик нажатия кнопки «+», «-» периода

  • «ИнтервальноеПолеПриИзменении», «ОтобранныеИнтервалыПослеУдаления», «ОтобранныеИнтервалыПриОкончанииРедактирования», «ОтобранныеИнтервалыВГраницаПриИзменении» - обработчики событий элементов закладки «Интервалы группировок»

  • В модуле формы инициализируется поле выбора «ИнтервальноеПоле».
Модуль объекта отчета:
Переменные модуля, которые влияют на формирования отчета:
  • «мТаблицаПоказатели» - таблица значений, содержит все возможные показатели, по-умолчанию заполняется показателями из табличной части «Показатели»

  • «НП» - настройка периода, используется при вызове «КнопкаНастройкиПериода»
  • «мСоответствиеНазначений» - соответствие, содержащая назначения свойств и категорий именам

  • «мСтруктураСвязиПоказателейИИзмерений» - соответсвие, содержит связь показателей и измерений. Используется когда нужно выводить значения определенных показателей только в строках с определенными группировками
  • «мМассивШиринКолонок» - массив ширин колонок табличного документа для сохранения между формированиями отчета. Используется при обновлении отчета, для того чтобы сохранять ширину колонок, в том числе и ту которую установил пользователь

  • «мИсходныйМакетОтчета» - макет, используемый для отчета, по умолчанию "Макет", но может быть переопределен. Переменная нужна если предполагается использовать макет отличный от исходного макета универсального отчета «Макет»
  • «мНазваниеОтчета» - строка, название отчета

  • «мВыбиратьИмяРегистра» - булево, признак выбора (изменения) имени регистра (вида отчета), влияет на видимость элемента формы настройки «Раздел учета (ИмяРегистра)»
  • «мВыбиратьИспользованиеСвойств» - булево, признак выбора (изменения) флажка использования свойств и категорий

  • «СтруктураФорматаПолей» - структура, хранит формат полей примитивных типов, используется для форматирования полей типа дата в строковом представлении
  • «мСтруктураДляОтбораПоКатегориям» - структура, предназначена для связи отборов Построителя с категориями из соединяемых таблиц

  • В отчете «Список / кросс таблица (ОтчетСписокКроссТаблица)»:
  • «мСтруктураНевыводимыхГруппировок» - структура, хранит список тех группировок, которые не надо выводить. Применяется в тех случаях, когда нужно пропускать итоги, например Номенклатура - Характеристика - Серия: итоги по номенклатуре не нужны, нужно только для всех трех
  • «СоответствиеТиповИнтервальныхПолей» - соответствие

Процедуры и функции модуля отчета:
  • «ЗаполнитьНачальныеНастройки» - процедура заполняет начальные настройки отчета. Вызывается в модуле формы отчета перед открытием формы (обработчик события «ПередОткрытием»)

  • «ОбработкаРасшифровкиСтандартногоОтчета» - процедура, вызывается обработчиком события "Обработка расшифровки" поля табличного документа «ДокументРезультат»
  • «ЗаполнитьПоляОсновногоРеквизита» - процедура, вызывается при инициализации основной формы отчет (модуль формы)

  • «Настроить» - процедура, настраивает отчет по переданной структуре параметров, вызывается при расшифровке отчета
  • «ПолучитьПостроительОтчета» - функция, возвращает построитель отчета

  • «ПолучитьОсновнуюФорму» - функция, возвращает основную форму отчета
  • «СформироватьСтруктуруДляСохраненияНастроек» - процедура, формирует структуру «СохраненныеНастройки» для сохранения параметров отчета. Вызывается перед сохранением настроек в обработчике события «ПередСохранениемЗначений». Структура состоит из таких полей:
    o «ИмяРегистра» – содержит имя регистра
    o «НастройкиПостроителя» - содержит настройки построителя: доступные поля, отборы, порядок и т.д.
    o «Показатели» - табличная часть «Показатели»
    o «ИспользоватьСвойстваИКатегории» - признак использования свойств и категорий
    o «ВыводитьДополнительныеПоляВОтдельнойКолонке» - признак вывода дополнительных полей в отдельной колонке
    o «ВыводитьИтогиПоВсемУровням» - выводить итоги по всем уровням
    o «ВыводитьПоказателиВСтроку» - выводить показатели в строку
    o «РаскрашиватьИзмерения» - раскрашивать измерения
    o «ЗаголовокПомечен» - показывать или скрывать заголовок
  • «ВосстановитьНастройкиИзСтруктуры» - процедура, заполняет из структуры настроек общие параметры отчетов. Вызывается после восстановления настроек в обработчике события «ПослеВосстановленияЗначений»

  • «СформироватьОтчет» - выполняет запрос и формирует табличный документ-результат отчета

  • В отчете «Список / кросс таблица (ОтчетСписокКроссТаблица)»:
  • «ЗаполнитьПоказатели» - процедура, заполняет специальную таблицу «мТаблицаПоказатели». Вызывается в процедуре «ЗаполнитьНачальныеНастройки», перед открытием отчета
  • «СформироватьЗаголовок» - процедура, формирует табличку-заголовок

  • «ВывестиКолонкуШапки» - процедура, выводит шапку таблицы
  • «ВывестиПоказатели» - процедура, выводит показатели в строку отчета

  • «ПолучитьПоказатели» - процедура, получает значения показателей для вывода в таблицу
  • «ВывестиСтроку» - выводит строку отчета

В отчета «Остатки и обороты (ОтчетОстаткиИОбороты)» содержатся следующие макеты:
«Макет» - является макетом для вывода информации в табличный документ «ДокументРезультат», состоит из следующих секций:
  • «Заголовок» - горизонтальная секция, содержит ячейки в которые выводится информацию по наименованию отчета, периода формирования, списка выводимых показателей и группировок

  • «ШапкаТаблицыОбщая» - содержит ячейки в которые выводятся заголовки столбцов таблицы. Данная секция включает в себя такие вертикальные секции: «Поле» - выводятся наименование группировок и дополнительных полей, «НачальныйОстаток» - показатели начального остатка, «Приход» - показатели прихода, «Расход» - показатели расхода, «КонечныйОстаток» - показатели конечного остатка. Также в секцию входят горизонтальные субсекции: «ШапкаТаблицы» - включает в себя одну строку ячеек «Поле», «Начальный остаток», «Приход», «Расход», «Конечный остаток», «ШапкаТаблицыНиз» - выводит наименование дополнительных полей. Если нет нужды выводить дополнительные поля выводится только секция «ШапкаТаблицы»
  • «Подвал» - горизонтальная секция, используется как завершающая секция при выводе таблицы, данных не выводит, но содержит сплошную линию, завршая тем самым окантовку таблицы сполшными линиями

  • «СтрокаИерархии» - горизонтальная секция выводится только в случае если способ вывода группировки справочников «по иерархии», выводит группу элементов справочника
  • «Строка» - горизонтальная секция, выводить строку группировки

  • «СтрокаДетали» - горизонтальная секция, в случае если в настройках указано выводить дополнительные поля, в данную строку выводятся дополнительные поля
  • «ОбщиеИтоги» - горизонтальная секция, в данную строку выводятся общие итоги

  • «ОформлениеИзмерений» - горизонтальная секция содержит оформление измерений, если в настройках установлен флажок «Раскрашивать измерения (РаскрашиватьИзмерения)» для вывода группировок и полей нас разных уровнях используются настройки оформления ячеек из секции «ОформлениеИзмерений»
  • «ОформлениеДеталей» - горизонтальная секция содержит оформление деталей

  • «ПараметрыОтчетов…» - макеты в которых указываются настройки параметров для вывода отдельных отчетов. Заполнение начальных настроек отчета по макету вызывается функцией «ЗаполнитьНачальныеНастройкиПоМакету».
В макете можно указать состав показателей, группировок и полей для вывода в отчет, содержит две секции:
  • «Показатели» - горизонтальная секция, ячейки в которых указывается состав показателей и параметры вывода показателей в отчет. В данной секции можно указывать также вычисляемые показатели

  • «Группировка» - горизонтальная секция, содержит ячейки с перечислением группировок выводимых в отчет
В отчете «Список кросс / таблица (ОтчетСписокКроссТаблица)» содержатся следующие макеты:
«Макет» - является макетом для вывода информации в табличный документ «ДокументРезультат», состоит из тех же секций что и макет отчета «Отчет остатки и обороты (ОстаткиИОбороты)» за тем исключением, что вертикальные секции «НачальныйОстаток», «Приход», «Расход», «КонечныйОстаток» заменены секцией «Показатель» и добавлена горизонтальная секция «ШапкаТаблицыСтрока» для вывода наименований группировок в строке.

Построение пользовательских выходных форм на основании универсальных (общих) отчетов

Теперь, когда мы познакомились со структурой универсальных отчетов, рассмотрим их использование для построения других выходных форм.
«Остатки и обороты (ОтчетОстаткиИОбороты)» (далее ОиО) и «Список кросс / таблица (ОтчетСписокКроссТаблица)» (далее СКТ) - являются самостоятельными отчетами, их можно использовать для получения различной информации по всем регистрам накоплений, которые есть в конфигурации. Но часто возникает потребность в формировании более подробных отчетов, основанных на сложных запросах и выборках (такие выходные формы мы будем называть пользовательскими). Для этого создается отдельная выходная форма, в которой с помощью общих отчетов мы можем организовать вывод нужной информации.

Основная форма

Рассмотрим как взаимодействуют пользовательские отчеты с общими отчетами. Первое, на что стоит обратить внимание, это в данных отчета есть реквизит «ОбщийОтчет», который имеет тип «ОтчетОбъект.ОтчетОстаткиИОбороты» или «ОтчетОбъект.ОтчетСписокКроссТаблица», в данный реквизит помещается экземпляр общего отчета, реквизиты, методы которого используем для формирования выходной формы. В основной реквизит формы пользовательского отчета «ОбщийОтчет» тоже имеет тип ОиО или СКТ. Для ссылки на объект пользовательского отчета используется реквизит формы «ЭтотОтчет».
Структура основной формы такая же как и у родительского общего отчета:
  • «Командная панель (КомманднаяПанельФормы)» - командная панель, содержит управляющие кнопки: «Сфорировать» - формирует отчет, «Отбор» - показать/скрыть панель отборов («ПанельОтбор»), «Заголовок» - показать/скрыть заголовок в табличном документе (элемент формы «ДокументРезультат»), «Настройка» - открывает форму настроек отчета, «СохранитьЗначения» - сохраняет значения настроек отчета, «ВосстановитьЗначения» - восстанавливает знаечния настроек отчета, доступ ко всем вышеперчисленным кнопкам пможно получить через подменю «Действия»

  • «Период с: (ДатаНач)», «по: (ДатаКон)» или «На дату: (ДатаКон)» - поле ввода дата, данные связаны с реквизитами общего отчета «ДатаНач» или «ДатаКон»
  • «Панель отборов (ПанельОтбор)» - панель, на которую помещаются элементы для быстрого отбора. Для настройки отбора нужно три элемента формы флажок, поле выбора и поле ввода, наименование каждого элемента начинается с определенного названия плюс имя отбора так как он должен быть задан в построителе отчета:
    o «ФлажокНастройки…» - флажок связанный с реквизитом отборов «Использование», при установке данного флажка в построителе отчетов будет включен соответствующий отбор
    o «ПолеВидаСравнения…» - поле выбора, связан с реквизитом отборов «ВидСравнения», содержит способ сравнения значения отбора с отбираемыми значениями
    o «ПолеНастройки…» - поле ввода, связан с реквизитом отборов «Значение», содержит значение по которому осуществляется фильтрация

  • Пример использования:
    Установить отбор по измерению «Номенклатура». Добавляем на панель отборов три элемента формы, называем их следующим образом: флажок «ФлажокНастройкиНоменклатура», поле выбора «ПолеВидаСравненияНоменклатура», поле ввода «ПолеНастройкиНоменклатура». Проверяем что в обработчике события формы «ПередОткрытием» выполняется процедура «УстановитьСвязьПолейБыстрогоОтбораНаФорме», которая связывает элементы формы с данными отбора построителя отчетов. Все. Если в данных отчета есть отбор «Номенклатура», то управлять отбором мы сможем на панели отборов, не вызывая форму настройки отчетов.
  • «Табличный документ (ДокументРезультат)» - собственно табличный документ куда выводятся данные отчета
При первом открытии пользовательского отчета происходит создание экземпляра объекта «ОбщийОтчет». Нужно четко понимать, что в рамках пользовательского отчета мы оперируем двумя объектами «ОбщийОтчет» - экземпляр объекта общего отчета и «ЭтотОтчет» - экземпляр объекта пользовательского отчета.
Т.е., если нужно вызвать процедуру модуля пользовательского отчета «ЗаполнитьНачальныеНастройки()», то пишем такую конструкцию «ЭтотОтчет.ЗаполнитьНачальныеНастройки()», а чтобы вызвать процедуру общего отчета «ЗаполнитьПоляОсновногоРеквизита()», пишем «ОбщийОтчет. ЗаполнитьПоляОсновногоРеквизита()». Заметим, что в модуле формы для вызова процедур общего отчета просто указать имя процедуры, а в модуле объекта пользовательского отчета нужно писать «ОбщийОтчет.» и название процедуры.
Пример использования пользовательского отчета из справочника «Контрагенты»:
Контрагент = ЭлементыФормы.СправочникСписок.ТекущиеДанные.Ссылка; Отчет = Отчеты.ВедомостьВзаиморасчетыСКонтрагентами.Создать(); Форма = Отчет.ПолучитьФорму(); Форма.ЭтотОтчет.ЗаполнитьНачальныеНастройки(); Форма.ЭтотОтчет.ОбщийОтчет.ПостроительОтчета.Отбор["Контрагент "].Использование = Истина; Форма.ЭтотОтчет.ОбщийОтчет.ПостроительОтчета.Отбор["Контрагент "].Значение = Контрагент; Если Контрагент.ЭтоГруппа Тогда Форма.ЭтотОтчет.ОбщийОтчет.ПостроительОтчета.Отбор["Контрагент "].ВидСравнения = ВидСравнения.ВИерархии; Иначе Форма.ЭтотОтчет.ОбщийОтчет.ПостроительОтчета.Отбор["Контрагент "].ВидСравнения = ВидСравнения.Равно; КонецЕсли; Форма.ОбновитьОтчет(); Форма.Открыть();
Перечислим основные процедуры и функции основной формы пользовательского отчета:
  • При инициализации формы выполняется процедура «ЗаполнитьПоляОсновногоРеквизита», которая заполняет поля и реквизиты основного объекта формы. Также устанавливаются переменные формы

  • «ОбновлениеОтображения» - процедура, обработчик обновления данных формы
  • Перед открытием формы вызывается процедура модуля пользовательского отчета «ЗаполнитьНачальныеНастройки», выполняется восстановление значений параметров формы и связь между элементами формы и отборами построителя отчетов: «УстановитьСвязьПолейБыстрогоОтбораНаФорме»

  • «ПриОткрытии» - процедура-обработчик события при открытии формы

  • Сохранение и восстановление параметров отчета осуществляется следующими процедурами:
  • «ПослеВосстановленияЗначений» - процедура-обработчик события после восстановления сохраненных значений, вызывает процедуру модуля отчета «ВосстановитьНастройкиИзСтруктуры»
  • «ПередСохранениемЗначений» - процедура-обработчик события перед сохранением значений, вызывает функцию модуля отчета «СформироватьСтруктуруДляСохраненияНастроек», в которой формируется структура сохраненных настроек и присваивается реквизиту «СохраненыеНастройки»

  • Во всех отчетах основанных на ОиО или СКТ сохранение параметров настроек реализовано следующим образом. В свойствах формы указывается «Сохранять значения» и в списке «Сохраняемые значения» выбирается реквизит «СохраненныеНастройки». В обработчик события «Перед сохранением значений», «После восстановления значений» вставляют код, который вызывает процедуры модуля общего отчета: «СформироватьСтруктуруДляСохраненияНастроек» для сохранения настроек и «ВосстановитьНастройкиИзСтруктуры» для восстановления настроек отчета. Структура настроек уже описывалась в разделе про универсальные отчета
    Пример использования:
    После формирования отчета пользователи могут настраивают ширину колонок табличного документа (нажимая Ctrl +позиционируя ширину курсором мыши). В общих отчетах массив ширин колонок хранится в переменой мМассивШиринКолонок, при обновлении отчета ширина колонок настраивается исходя из данных которые хранятся в этом массиве. Задача состоит в том, чтобы при закрытии отчета сохранять массив ширин колонок, а после открытии отчета восстанавливать ширины колонок, так как это было задано пользователем перед закрытием. Для этого в обработчик события перед сохранением значений формы «ПередСохранениемЗначений» в структуре «СохраненныеНастройки», добавляем массив, который сформирован следующим образом:
// Запоминать следует, если документ не Если ЭлементыФормы.ДокументРезультат.ВысотаТаблицы > 0 Тогда пустой Для Сч=1 По ЭлементыФормы.ДокументРезультат.ШиринаТаблицы Цикл МассивШиринКолонок.Добавить(ЭлементыФормы.ДокументРезультат.Область(1 ,Сч).ШиринаКолонки); КонецЦикла; КонецЕсли; СохраненныеНастройки.Вставить("МассивШиринКолонок ", МассивШиринКолонок);
В процедуре-обработчике «ПослеВосстановленияЗначений», вносим следующий код:
ЭтотОтчет.ВосстановитьНастройкиИзСтруктуры(СохраненныеНастройки, ПоказыватьЗаголовок); СохраненныеНастройки.Свойство("МассивШиринКолонок ", ОбщийОтчет.мМассивШиринКолонок); // Восстанавливаем массив ширин колонок
  • «ПриЗакрытии» - процедура-обработчик события при закрытии формы. В данную процедуру, обычно, добавляют функции сохранения параметров формы
  • «ОбработкаОповещения» - процедура-обработчик сообщений. Используется для обновления элементов отбора на форме, в случае, если изменились настройки отборов в построителе отчета при вызове формы настройки

  • «ДокументРезультатОбработкаРасшифровки» - процедура-обработчик события "Обработка расшифровки" поля табличного документа ДокументРезультат. Вызывает процедуру модуля общего отчета «ОбработкаРасшифровки»
  • В модуле формы, также, помещаются процедуры-обработчики событий элементов отбора, выбора даты и.т.д., состав данных обработчиков зависит от вида пользовательского отчета
  • Процедуры и функции общего назначения:

    • «УправлениеПараметрамиОтображенияЭлементовФормы» - управляет пометками кнопок на панели инструментов

    • «ОбновитьОтчет» - обновляет таблицу отчета, вызывается при нажатии кнопки «Сформировать», а также когда нужно убрать / задать заголовок отчета (кнопка «Заголовок»), в последнем случае выводится только заголовок отчета В процедуре помещается вызов процедуры модуля отчета «СформироватьОтчет»
    • «ВыводЗаголовка» - процедура – управляет выводом заголовка, вызывает из модуля отчета процедуру «СформироватьОтчет»

    • «СформироватьЗаголовокФормы» - процедура, настраивает заголовок формы, вызывает функцию общего модуля «СформироватьЗаголовокОсновнойФормы». Заголовок, возвращаемы данной функцией состоит из названия отчета, даты начала и даты окончания формирования отчета. Как правило, «СформироватьЗагловокФормы» вызывает обработчик события обновления отображения формы

    Модуль отчета

    Рассмотрим модуль пользовательского отчета. Наиболее важная процедура модуля отчета «ЗаполнитьНачальныеНастройки», данная процедура вызывается перед открытием формы и содержит команды, которые настраивают список показателей, группировок, отборы и порядок, которые будут присутствовать в отчете:
    • Инициализация переменных:
      «СтруктураПредставлениеПолей» - структура, в которую заносятся представления полей, где ключ – имя показателя/группировки/поля из источника данных, а значение текстовое представление показателя/группировки/поля.
      Пример использования:
      СтруктураПредставлениеПолей.Вставить("ХарактеристикаНоменклатуры ", "Характеристика номенклатуры "); СтруктураПредставлениеПолей.Вставить("ДокументОснование ", "Документ-основание ");
      «МассивОтбора» - массив отбора, массив в который включаем отборы, которые присутствуют в настройках отчета по-умолчанию.
      Пример использования:
      Добавляем два отбора по номенклатуре и складу, эти отборы можно связать с элементами в панели отборов основной формы. При внесении элементов быстрого доступа к отборам на форме отчета, в настройках отчета желательно добавлять имена этих отборов в «МассивОтбора»
      МассивОтбора.Добавить("Номенклатура "); МассивОтбора.Добавить("Склад ");
    • Параметры отчета:
      «ОбщийОтчет.ИмяРегистра» - если отчет формируем на основании определенного регистра, тогда указываем имя этого регистра.
      «ОбщийОтчет.мНазваниеОтчета» - название отчета, которое будет выводится в заголовок табличного документа.
      Пример использования:
      ОбщийОтчет.ИмяРегистра = "ТоварыНаСкладах "; ОбщийОтчет.мНазваниеОтчета = "Анализ доступности товаров на складах ";
    • Запрос для построителя отчета:
      В отчетах предусмотрено формирование текста запроса для построителя на основании трех источников: метаданных регистра, макета и напрямую присваивать текст запроса построителю отчетов.
      - Запроса на основании метаданных регистра
      Если мы указали наименование регистра в «ОбщийОтчет.ИмяРегистра», то вызвав процедуру «ЗаполнитьНачальныеНастройкиПоМетаданнымРегистра» мы можем заполнить настройки построителя запроса и реквизиты общего отчета
      Пример использования:
      Формирует текст запроса к регистру «ТоварыНаСкладах» и заполняет настройками реквизиты общего отчета:
      ОбщийОтчет.ИмяРегистра = "ТоварыНаСкладах "; ЗаполнитьНачальныеНастройкиПоМетаданнымРегистра(СтруктураПредставлениеПолей, МассивОтбора, ОбщийОтчет, "СписокКроссТаблица ");
      - Запроса на основании макета
      Как уже описывалось в разделе «Структура универсальных отчетов», параметры настройки отчета можно указывать в специально разработанном макете. Удобство макета в том что можно регулировать вывод показателей, группировок и полей не прибегая к построению запроса через конструктор.
      Пример использования:
      ПостроительОтчета = ОбщийОтчет.ПостроительОтчета; ЗаполнитьНачальныеНастройкиПоМакету(ПолучитьМакет("ПараметрыОтчетовТоварыОрганизаций "), СтруктураПредставлениеПолей, МассивОтбора, ОбщийОтчет, "СписокКроссТаблица ");
      - Указание запроса как источник данных построителя отчетов
      Использую универсальные отчеты для формирования пользовательских выходных форм, можно составить свой запрос и указать его текст как источник для построителя отчетов. Данный метод очень удобен тем, что можно строить запросы, какой угодно сложности и структуре.
      Пример использования:
      ПостроительОтчета.Текст = "ВЫБРАТЬ | ПродажиОбороты.Номенклатура КАК Номенклатура, | ПродажиОбороты.СтоимостьОборот КАК СтоимостьОборот |{ВЫБРАТЬ | Номенклатура.*, | ПродажиОбороты.ХарактеристикаНоменклатуры.* |//СВОЙСТВА |} |ИЗ | РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон,) КАК ПродажиОбороты |//СОЕДИНЕНИЯ |СГРУППИРОВАТЬ ПО | ПродажиОбороты.Номеклатура |//СГРУППИРОВАТЬПО |{ГДЕ | ПродажиОбороты.Номенклатура.*, | ПродажиОбороты.ХарактеристикаНоменклатуры.* |//СВОЙСТВА |//КАТЕГОРИИ |} |{УПОРЯДОЧИТЬ ПО | Номенклатура.*, | ПродажиОбороты.ХарактеристикаНоменклатуры.* |//СВОЙСТВА |} |ИТОГИ | СУММА(СтоимостьОборот) |ПО | ОБЩИЕ, | Номенклатура |{ИТОГИ ПО | ПродажиОбороты.Номенклатура.*, | ПродажиОбороты.ХарактеристикаНоменклатуры.* |//СВОЙСТВА |} "
      При формировании запросов, следует соблюдать несколько правил:
      o В запросе можно указать два предопределенных параметра: «ДатаНач» и «ДатаКон», в которые передается значение соответствующих реквизитов отчета. Данные параметры используются для ограничения выборок из данных по периоду.
      o В отчете всегда должны присутствовать общие итоги: «ИТОГИ … ПО ОБЩИЕ»
      o Для того, чтобы можно было управлять настройками отчета из формы настройки, нужно обязательно указывать соответствующие настройки для построителя отчетов, в фигурных кавычках «{» и «}» или на закладке «Построитель» конструктора запросов.
      o В запросе можно указать специальные директивы: «//СВОЙСТВА», «//КАТЕГОРИИ», «//СОЕДИНЕНИЯ», «//СГРУППИРОВАТЬПО». Далее с помощью процедуры «ДобавитьВТекстСвойстваИКатегории» в запрос добавляются выборки полей свойств, категорий объектов.
      Пример использования:
      В запросе, приведенном выше директивой «//СВОЙСТВА» мы указываем на, то что в текст запроса нужно добавить выборку, группировку и условия по свойствам объектов, «//КАТЕГОРИИ» - добавляем условие по категориям, а с помощью «//СОЕДИНЕНИЯ» мы обеспечиваем соединения с регистром сведений «ЗначенияСвойствОбъектов», «//СГРУППИРОВАТЬПО» - группируем по выбранным свойствам объектов
    • Процедуры заполнения полей построителя отчета:
      После того как был сформирован запрос, нужно заполнить соответствующие реквизиты построителя отчетов и общего отчета.
      В массиве «МассивОтбора» вносим массив отборов, для заполнения отборов в построителе отчетов используем процедуру «ЗаполнитьОтбор».
      Если мы планируем использовать свойства и категории мы должны добавить выполнить процедуру «ДобавитьВТекстСвойстваИКатегории».
      Пример использования:
      ДобавитьВТекстСвойстваИКатегории(ТаблицаПолей, Текст, СтруктураПредставлениеПолей, мСоответствиеНазначений, СтруктураПараметры, ТекстИсточникиСведений="", ТекстПоляКатегорий="", ТекстПоляСвойств="", ТекстПоляСгруппироватьПо = "", ЗаменятьСвойства = "//СВОЙСТВА", ЗаменятьКатегории = "//КАТЕГОРИИ", ЗаменятьСоединения = "//СОЕДИНЕНИЯ", ЗаменятьСгруппироватьПо = "//СГРУППИРОВАТЬПО", ИдентификаторыПараметровДляОтборовПоКатегориям = "") Экспорт
      Для заполнения представлений полей «ЗаполнитьПредставленияПолей», также можно воспользоваться процедурой «ЗаполнитьПредставление».
      Пример использования:
      ЗаполнитьПредставление("Номенклатура ", "Номенклатура ", ИСТИНА, ИСТИНА); ЗаполнитьПредставление("ХарактеристикаНоменклатуры ", "Характеристика номенклатуры ", ЛОЖЬ, ЛОЖЬ);
    • Дополнительные процедуры по настройке отчета:
      «ОчиститьДополнительныеПоляПостроителя» - обязательная процедура, удаляет показатели, группировки из реквизита «ПостроительОтчета.ВыбранныеПоля»
      «ОбщийОтчет.ВыводитьПоказателиВСтроку = Истина» - выводит показатели в строку
      «мСтруктураСвязиПоказателейИИзмерений» - заполнить структуру связи показателей и измерений
      Пример использования:
      Нужно выводить показатель «КоличествоОстаток» только для измерения «Номенклатура» и «ХарактеристаНоменклатуры»:
      ОбщийОтчет.мСтруктураСвязиПоказателейИИзмерений.Вставить("КоличествоОстаток ", Новый Структура(«Номенклатура,ХарактеристикаНоменклатуры»));
      Если нужно выводить все итоги независимо от настройки структуры «мСтруктураСвязиПоказателейИИзмерений» устанавливаем следующий реквизит:
      ОбщийОтчет.ВыводитьИтогиПоВсемУровням = Истина
      Если нужно пропустить некоторые группировки, тогда следуют заполнить структуру «мСтруктураНевыводимыхГруппировок».
      Пример использования:
      Нужно выводить измерения «ХарактеристикаНоменклатуры» вместе с измерением «Номенклатура», для этого добавляем следующий вызов функции
      ОбщийОтчет.мСтруктураНевыводимыхГруппировок.Вставить("Номенклатура ",Новый Структура("ХарактеристикаНоменклатуры "));
      В результате в отчет будет выведены измерения разделенные запятой: «Номенклатура, Характеристика номенклатуры»

    • Другие процедуры модуля пользовательского отчета аналогичны процедурам универсальных отчетов b описанны в разделе «Универсальные отчеты». На что стоит обратить внимание так это на параметры в запросе, перед формированием отчета (процедура «СформироватьОтчет») следует указать эти параметры для построителя отчета:
      Пример использования:
      ПостроительОтчета.Параметры.Вставить(ИмяПараметра,ЗначениеПараметра);

    Заключение

    Использовать ОиО и СКТ для формирования пользовательских выходных форм достаточно просто, если правильно составить в конструкторе запрос и передать его построителю, мы получим готовый отчет. Также, большой плюс использования общих отчетов, это унификация вывода данных на форму отчета, гибкие настройки группировок, отборов и сортировки, представления измерний и показателей.
    Практика показывает, что 90% функционала для формирования любой пользовательской формы реализовано в универсальных отчетах, также можно брать за основу уже готовые типовые отчеты и "дорабатывать" их под требования заказчиков.

    Список ссылок

    Ниже приведем список некоторых ссылок на статьи "Книги знаний" (

    В разделе «Отчеты» существует множество различных отчетов по каждому виду деятельности. В основном их достаточно для повседневного учета. Но иногда для анализа той или иной проблемы необходимо копать глубже, вплоть до сравнения, например, записей в документе и в регистрах, на которые он влияет. А бывают случаи, когда стандартных отчетов просто-напросто не хватает.

    Для такого глубокого анализа данных либо для создания собственного отчета в программе 1С 8.3 существует «Универсальный отчет». Его возможности я и собираюсь рассмотреть в данной статье.

    Общее описание универсального отчета в 1С 8.3

    Для начала разберемся, где найти универсальный отчет? Если зайти в меню «Отчеты», а потом нажать ссылку «Универсальный отчет», мы увидим вот такое окно:

    Вкратце пройдемся по его элементам управления.

    С верхней строчкой закончили.

    • Ниже самая интересная кнопка – это «Показать настройки». Здесь лучше показать на примере.

    Инструкция по настройке универсального отчета 1С 8.3

    Так как мы работаем в программе 1С:»Бухгалтерия предприятия 3.0″, то прежде всего нас интересуют бухгалтерские регистры. В конфигурации 3.0 нам доступен только один – «бухгалтерский и налоговый учет». Выбираем его. Посмотрим обороты по 10.01 «Материалы» счету.

    Получите 267 видеоуроков по 1С бесплатно:

    Выбираем период. У меня это будет весь 2012 год. Далее нажимаем кнопку «Показать настройки»:

    Чтобы получить наименования материалов, выберем группировку по 1-му субконто. Именно в нем хранится наименование, точнее, ссылка на номенклатуру.

    Переходим на закладку «Отборы»:

    Здесь нам нужно указать, что мы хотим видеть только счет 10.01.

    При желании Вы можете указать здесь сколько угодно условий отбора.

    Нажмем кнопку сформировать и посмотрим, что у нас получилось:

    Видно, что в отчет попадает слишком много ненужных колонок. Таких, как валютный учет, налоговый учет и прочее. У меня эти учеты не ведутся, и я хочу убрать эти колонки из отчета.

    Заходим опять в настройки и сразу — на закладку «Показатели»:

    Убираем флажки с тех колонок, которые нам выводить не надо.

    На закладке «Сформировать» можно указать поле, по которому будет происходить сортировка. Я, например, хочу, чтобы у меня материалы вышли по алфавиту:

    Универсальные отчеты в 1С. Возможности настроек отчетов в 1С. Изменение группировок, показателей, отборов, сортировок. Настройка группировок. Настройка отборов. В конфигурации "Управление торговлей" возможность использования свойств и категорий справочников, документов.

    С необходимостью подведения итогов сталкивается любое предприятие. Бухгалтеру приходится подсчитывать прибыль и убытки, складскому работнику и товароведу анализировать наличие товара на складе, продавцу получать товарный отчет за день. Менеджер анализирует продажи, планирует складские запасы. Процесс подведения итогов в программе предельно упрощен и не вызывает трудностей. Итоговая информация собрана в многочисленных отчетах.

    1С: Предприятие 8.1 как программа поддержки принятия решений имеет множество разнообразных отчетов. В “Конфигурации Управление торговлей” реализована система универсальных отчетов, представляющих собой средство для анализа практически всех сторон торговой деятельности и товарооборота предприятия.

    Существуют следующие отчеты:

    Остатки номенклатуры;

    Продажи;

    Движения номенклатуры;

    Текущая ситуация;

    История продаж;

    Учет номенклатуры;

    Стоимость номенклатуры;

    Цены номенклатуры;

    Все данные по контрагенту (карточка контрагента);

    Курсы валют.

    Отчеты могут быть сформированы в любой момент и позволяют получить сведения вплоть до одного дня.

    Правила формирования отчетов одинаковы. Выберите в раскрывающемся подменю вид отчета, затем в открывшемся окне укажите период формирования и щелкните по кнопке “Сформировать”.

    Итак, что такое Универсальный отчет.

    Универсальный отчет - объект конфигурации, который можно использовать как самостоятельно, так и в других отчетах. Данный отчет присутствует во многих конфигурациях фирмы 1С: Управление торговлей, Бухгалтерия предприятия, Управление производственным предприятием и пр.

    Рассмотрим, например отчёт “Ведомость по партиям товаров на складах (управленческий учёт)”.

    В отчете отображается полная информация о распределении товаров по партиям. В отчете можно вывести полную информацию о поставщиках товаров и о том, как распределились товары по партиям. Отчет может быть сгруппирован по статусам партии.В том случае, если ведется партийный учёт по складам, то отчет можно вывести в разрезе складов.

    В быстрых настройках отбора отчета можно установить отбор по одному или нескольким документам поставки.

    Для того, чтобы в отчете выводилась информация о документах движения, по которым производилось поступление и отгрузка товаров, в настройках отчета на закладке «Поля» в список надо добавить «Документ движения (регистратор)».

    Количественные данные в отчетах могут отображаться в базовых единицах измерения, в единицах хранения остатков и в единицах для отчетов. В качестве суммы товаров отображается себестоимость товаров, рассчитанная на момент отгрузки. При этом учитываются также дополнительные расходы, оказывающие влияние на себестоимость товаров.

    В отчете можно также установить дополнительную группировку по статусам партий, а также по периодичности: день, неделя, месяц и т.д.

    Отчет может быть сформирован по данным управленческого, бухгалтерского, налогового или международного учета.

    Откроем форму отчёта:




    Для того чтобы сформировать отчет нажимаем кнопку “Сформировать”:

    Вот как на данный момент выглядит наш отчет.

    При нажатии на кнопку “Настройка” откроется форма настройки отчета:

    Для того чтобы установить период или интервал с какого по какое число будут выводиться данные в отчет, необходимо нажать на кнопку:

    Период определяет интервал дат, за которые в списке показывается информация.

    Диалог имеет две закладки. Установка интервала может проводиться на любой из них.

    На закладке "Интервал " - установка производится выбором начала и конца интервала времени.

    На закладке "Период " - указывается период, за который будет произведен отбор данных.

    Если требуется, чтобы список открывался с выбранным интервалом видимости, установите флажок "Использовать эту настройку периода при открытии ".

    Откроется форма ” Настройка периода”:


    Выбираем необходимые для нас данные и нажимаем кнопку”OK ”.

    “ Параметры”:

    • отрицательное красным - все отрицательные значения (числа) будут выделяться красным цветом;
    • выводить общие итоги - в конце списка будет выводиться общий итог по всем показателем;
    • выводить детальные записи - вывод детальных данных по каждому из товаров;
    • использовать свойства и категории

    “Показатели”:

    Командная панель показатели установить пометки;

    Командная панель показатели снять пометки;

    Переместить вверх (Ctrl +Shift +Up );

    Переместить вниз (Ctrl +Shift + Down );

    Упорядочить по возрастанию;

    Упорядочить по убыванию.

    “Представление”:

    Отмечаем галочками те поля, которые мы хотим видеть в сформированном отчете.

    “ Группировки строк”:

    Добавить;

    Удалить текущий;

    Переместить вверх(Ctrl +Shift +Up );

    Переместить вниз(Ctrl +Shift + Down ).

    Поделиться