Создание отчета с помощью конструктора выходной формы 1с

Обновлено: 04.07.2024

Когда может потребоваться программный вывод отчета в 1С на СКД:

  • программная установка параметров СКД;
  • использование внешних данных в отчете;
  • специфика табличного документа при выводе на печать;
  • прочие нестандартные ситуации.

Предлагаю на примере рассмотреть, как можно сформировать отчет на СКД и заполнить его параметры программно.

Создадим новый внешний отчет. Напишем простейший запрос на примере 1С Бухгалтерия, который выводит начальный и конечный остатки и обороты по счету:

ВЫБРАТЬ
ХозрасчетныйОстаткиИОбороты.Счет,
ХозрасчетныйОстаткиИОбороты.Субконто1,
ХозрасчетныйОстаткиИОбороты.Субконто2,
ХозрасчетныйОстаткиИОбороты.Субконто3,
ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток,
ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток,
ХозрасчетныйОстаткиИОбороты.СуммаОборот
ИЗ
РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Регистратор, , Счет = &Счет, , ) КАК ХозрасчетныйОстаткиИОбороты

Вот, как выглядит отчет в стандартном виде:

сформированный отчет в 1С на СКД

Теперь сформируем его программно. Для этого нам нужно добавить Основную Форму:

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

создание формы отчета по умолчанию

Добавим команду и кнопку на форме:

создание команды на управляемой форме

В действиях команды пропишем следующий код (читать код на сайте достаточно трудно, поэтому рекомендуем скачать уже готовый пример отчета и посмотреть код в нем):

Создать в 1С 8.3 отчет за считанные минуты можно с помощью СКД (система компоновки данных). Приведу пример такого отчета для конфигурации 1С:Бухгалтерия 3.0.

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

Вот главная страница отчета:

новый отчет в скд

Вызывается данная страничка из конфигуратора в меню Файл – Новый – Внешний отчет.

Сначала добавляем набор данных (НаборДанных1). В окошке «Запрос» можно набрать текст запроса самостоятельно, создать с помощью Конструктора запроса или загрузить из файла. Удобнее всего использовать конструктор запроса. Как работает конструктор, читайте здесь.

Например, заголовки колонок (галочка «Количество» на рисунке выше позволяет набрать любой текст заголовка для данного поля), можно задать формат вывода данных(см. Формат в строке Количество). Формат редактируется для любого вида данных – строк, дат, чисел.

На закладке Ресурсы выбираем сами ресурсы и настраиваем вывод итогов для них:

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

ресурсы в отчете

Закладка Параметры содержит все, от чего меняется содержимое отчета (например, период, за который будут выбираться данные). Заполняется автоматически на основании параметров запроса (см. первую страничку). Галочками можно регулировать видимость, доступность этих параметров, задавать первоначальное значение и т.д:

параметры СКД 1С

И, наконец, Настройки. Тут рисуется внешний вид отчета – колонки, строки, их положение относительно друг друга, группировки и т.д. Кнопочка «Открыть конструктор настроек» поможет выстроить строчки и колонки в нужном порядке. Кнопочка «Пользовательские настройки элемента» позволит вывести параметры в шапку отчета:

настройка параметров для пользователя

Обратите внимание на колонку Период.ЧастиДат.НазваниеМесяца. Как же вывести название месяца в заголовок колонки? Вот тут и выводится.

Кстати, именно такая настройка позволяет выводить данные сразу за несколько периодов в соседних колонках отчета:

название месяца в СКД

Еще одна важная закладка – Выбранные поля. Если она будет пустой, отчет не сформируется. Обычно заполняется автоматом по кнопке «Открыть конструктор настроек»:

конструктор настроек СКД

Собственно, вот все, что нужно из минимально необходимого. В результате будем иметь отчет следующего вида:

получившейся отчет

«Красивости» (заголовок, фон) настраиваются на закладках «Условное оформление», «Другие настройки».

Создание такого отчета занимает на порядок меньше времени, чем его описание. По ссылке можете скачать получившийся отчет для конфигурации 1С 8.3 Бухгалтерия 3.0.

Смотрите также видео по созданию таких отчетов:

Цель лекции: освоить технологию разработки отчетов .

8.1. Создание отчета

Для создания отчетов в системе 1С:Предприятие используется прикладной объект Отчет. В рамках использования этого объекта существует несколько способов построения отчета . В частности, это способ, предусматривающий использование Конструктора выходной формы . Именно с ним мы познакомимся на данном занятии, рассмотрев простейший вариант построения отчета .

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

Создадим новый объект Отчет, назовем его ОстаткиМатериалов, рис. 8.1.

Начало создания отчета

Нажмем на кнопку Действия в форме настройки параметров объекта и выберем пункт меню Конструкторы > Конструктор выходной формы. В появившемся окне оставим все по умолчанию и нажмем на кнопку ОК. Появится окно ( рис. 8.2), внешне напоминающее окно Конструктора запросов, но с дополнительными вкладками. Основная задача, которая сейчас стоит перед нами - создать с помощью Конструктора запрос , который будет получать нужные нам данные.

Создание запроса

Данные для получения информации об остатках материалов мы будем выбирать из регистра ОстаткиМатериалов, в частности, из виртуальной таблицы ОстаткиМатериалов.Остатки. Это означает, что если мы хотим вводить в запрос какие-либо условия отбора данных, делать это нужно в параметрах виртуальной таблицы.

Мы отобрали следующие поля виртуальной таблицы:

  • ЦентрОтветственности;
  • Номенклатура;
  • КоличествоОстаток.

Напомним, нам нужны условия, которые позволят отобрать остатки:

  1. На определенную дату;
  2. По заданному материально ответственному лицу.

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

Окно настройки параметров виртуальной таблицы


Рис. 8.3. Окно настройки параметров виртуальной таблицы

В поле Период введем следующий текст: &Дата. Дата - это имя параметра, который будет устанавливать пользователь перед выполнением запроса.

В поле Условие нажмем кнопку с тремя точками и в появившееся окно ввода условия ( рис. 8.4) введем следующий текст:

Ввод произвольного выражения для поля Условие


Рис. 8.4. Ввод произвольного выражения для поля Условие

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

Вот как, в итоге, выглядит окно настройки параметров виртуальной таблицы, рис. 8.5.

Окно настройки параметров виртуальной таблицы


Рис. 8.5. Окно настройки параметров виртуальной таблицы

Обратите внимание на вычисляемые функции (f(x) ПРЕДСТАВЛЕНИЕ…) , которые автоматически добавляются в раздел Поля при добавлении туда полей, соответствующих измерениям регистра. Эти функции предназначены для получения строкового представления данных, они будут использоваться для вывода строковых представлений в отчет .

Перейдем на вкладку Итоги, рис. 8.6.

Конструктор выходной формы, вкладка Итоги


увеличить изображение
Рис. 8.6. Конструктор выходной формы, вкладка Итоги

На этой вкладке укажем в качестве группировочного поля ЦентрОтветственности. Это улучшает наглядность отчета , не приводя в каждой строке выводимых данных ФИО сотрудника и наименование подразделения , а выводя их лишь один раз.

Цель лекции: освоить технологию разработки отчетов .

8.1. Создание отчета

Для создания отчетов в системе 1С:Предприятие используется прикладной объект Отчет. В рамках использования этого объекта существует несколько способов построения отчета . В частности, это способ, предусматривающий использование Конструктора выходной формы . Именно с ним мы познакомимся на данном занятии, рассмотрев простейший вариант построения отчета .

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

Создадим новый объект Отчет, назовем его ОстаткиМатериалов, рис. 8.1.

Начало создания отчета

Нажмем на кнопку Действия в форме настройки параметров объекта и выберем пункт меню Конструкторы > Конструктор выходной формы. В появившемся окне оставим все по умолчанию и нажмем на кнопку ОК. Появится окно ( рис. 8.2), внешне напоминающее окно Конструктора запросов, но с дополнительными вкладками. Основная задача, которая сейчас стоит перед нами - создать с помощью Конструктора запрос , который будет получать нужные нам данные.

Создание запроса

Данные для получения информации об остатках материалов мы будем выбирать из регистра ОстаткиМатериалов, в частности, из виртуальной таблицы ОстаткиМатериалов.Остатки. Это означает, что если мы хотим вводить в запрос какие-либо условия отбора данных, делать это нужно в параметрах виртуальной таблицы.

Мы отобрали следующие поля виртуальной таблицы:

  • ЦентрОтветственности;
  • Номенклатура;
  • КоличествоОстаток.

Напомним, нам нужны условия, которые позволят отобрать остатки:

  1. На определенную дату;
  2. По заданному материально ответственному лицу.

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

Окно настройки параметров виртуальной таблицы


Рис. 8.3. Окно настройки параметров виртуальной таблицы

В поле Период введем следующий текст: &Дата. Дата - это имя параметра, который будет устанавливать пользователь перед выполнением запроса.

В поле Условие нажмем кнопку с тремя точками и в появившееся окно ввода условия ( рис. 8.4) введем следующий текст:

Ввод произвольного выражения для поля Условие


Рис. 8.4. Ввод произвольного выражения для поля Условие

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

Вот как, в итоге, выглядит окно настройки параметров виртуальной таблицы, рис. 8.5.

Окно настройки параметров виртуальной таблицы


Рис. 8.5. Окно настройки параметров виртуальной таблицы

Обратите внимание на вычисляемые функции (f(x) ПРЕДСТАВЛЕНИЕ…) , которые автоматически добавляются в раздел Поля при добавлении туда полей, соответствующих измерениям регистра. Эти функции предназначены для получения строкового представления данных, они будут использоваться для вывода строковых представлений в отчет .

Перейдем на вкладку Итоги, рис. 8.6.

Конструктор выходной формы, вкладка Итоги


увеличить изображение
Рис. 8.6. Конструктор выходной формы, вкладка Итоги

На этой вкладке укажем в качестве группировочного поля ЦентрОтветственности. Это улучшает наглядность отчета , не приводя в каждой строке выводимых данных ФИО сотрудника и наименование подразделения , а выводя их лишь один раз.

Читайте также: