Конструктор схемы компоновки данных тонкий клиент

Обновлено: 02.05.2024

Схема компоновки данных представляет собой большой конструктор, состоящий из наборов данных, вычисляемых полей, описания итоговых полей (ресурсов), макетов, вариантов настроек и т.д. Схему компоновки достаточно удобно создавать в конфигураторе при помощи конструктора схемы компоновки.

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

Задача действительно очень актуальная, участники Мастер-группы по СКД задают много вопросов на эту тему :)

Также традиционно много вопросов возникает при программной работе с пользовательскими настройками отчетов:

  • Почему отличаются значения параметра в настройках компоновщика и в пользовательских настройках? Которое из этих значений используется для формирования отчета?
  • Как связываются между собой настройки компоновщика и пользовательские настройки?
  • Как установить значение отбора или параметра, если они вынесены в пользовательские настройки?
  • И многие другие…

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

Общая длительность всех видеоуроков – 1 час 5 минут.

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

Видео 1 – Программное создание варианта отчета

00:37 – В каком обработчике можно расположить код для создания настроек компоновки
01:00 – Где в Синтакс-помощнике можно “подсмотреть” свойства, которые потребуются при написании кода
01:58 – Как настроить группировки отчета
02:28 – Какое свойство позволяет создавать вложенные группировки
03:11 – Как включить/выключить отдельные элементы настроек.

Видео 2 – Программное создание группировки

00:22 – Как создать структуру отчета
02:00 – Как указать поля, по которым выполняется группировка
04:10 – Как настроить выбранные поля
06:30 – Как создать автополе.

Видео 3 – Программное создание вложенной группировки

00:22 – Как создать подчиненную группировку
02:05 – Почему в отчете группировки могут выводиться несколько раз
02:40 – Как проверить наличие группировок в структуре отчета.

Видео 4 – Программное добавление отбора

00:18 – Где в Синтакс-помощнике найти типы данных, необходимые для создания отборов
00:55 – Какие свойства объекта типа ЭлементОтбораКомпоновкиДанных нужно использовать для создания отбора
01:20 – Как создать отбор при помощи программного кода.

Видео 5 – Программная установка сортировки

00:25– Где в Синтакс-помощнике найти типы данных, необходимые для включения сортировки
00:50 – Какие свойства объекта типа ЭлементПорядкаКомпоновкиДанных нужно использовать для включения сортировки
01:00 – Как установить сортировку при помощи программного кода.

Видео 6 – Программное добавление условного оформления

00:25 – Где в Синтакс-помощнике найти типы данных, необходимые для работы с условным оформлением
00:33 – Какие свойства объекта типа ЭлементУсловногоОформленияКомпоновкиДанных нужно использовать
02:08 – Как добавить условное оформление при помощи программного кода
02:31 – Как задать перечень полей, к которым будет применяться условное оформление
03:34 – Как отобрать оформляемые данные
04:15 – Как при помощи программного кода описать применяемое оформление.

Видео 7 – Программная работа с пользовательскими настройками

01:01 – Как программно установить значение параметра
02:00 – Почему значения параметров, выводимые на форму отчета, не совпадают со значениями в самом отчете
04:25 – Что делает метод ПолучитьНастройки
05:10 – Как нужно работать с пользовательскими настройками
06:17 – Для чего нужно свойство ИдентификаторПользовательскойНастройки
07:10 – Где в типовой конфигурации УТ 11 можно найти пример работы с пользовательскими настройками.

Видео 8 – Особенности использования метода ПолучитьНастройки

00:58 – Почему отличаются значения параметра в настройках компоновщика и в пользовательских настройках
01:23 – Как связываются между собой настройки компоновщика и пользовательские настройки
03:06 – Как работает метод ПолучитьНастройки и значение какого типа он возвращает

Видео 9 – Программное создание отборов в пользовательских настройках

00:34 – Чем отличается отбор в настройках компоновщика и отбор в пользовательских настройках
02:34 – Как используется свойство ИдентификаторПользовательскойНастройки
03:08 – Какой алгоритм должен использоваться для установки значения отбора в пользовательских настройках
03:42 – Как реализовать процедуру для установки значения отбора в пользовательских настройках.

Видео 10 – Программное создание схемы компоновки

00:40 – Как при компоновке отчета программно создать схему, по которой будет формироваться отчет
02:15 – Какой алгоритм должен использоваться для программного создания с нуля схемы компоновки
02:50 – Как программно создать источник данных схемы компоновки
04:00 – Как программно добавить в схему набор данных – объект
06:25 – Как программно добавить поля набора данных.

Хотите научиться грамотно создавать отчеты на СКД и дорабатывать отчеты в типовых конфигурациях?

Чтобы подробнее изучить возможности системы компоновки данных и уверенно применять механизм на практике, рекомендуем пройти курс Профессиональная разработка отчетов в 1С 8.3 на Системе Компоновки Данных (СКД)


«Тонкий» конструктор СКД в составе расширения Infostart Toolkit помогает снять ограничения по разработке схем компоновки, упрощает работу с неочевидными механизмами СКД и добавляет контекстную подсказку для запросов и выражений.

О Infostart Toolkit

Infostart Toolkit – это коммерческий проект при поддержке Инфостарта, набор инструментов для разработчиков конфигураций 1С и специалистов по внедрению.

Продукт поставляется в виде расширения, в состав которого входит набор взаимосвязанных помощников:

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

Инструменты предназначены для управляемых форм, работают в конфигурациях с режимом совместимости 8.3.10 и выше.

Новая функциональность – конструктор СКД для тонкого клиента

Стандартный конструктор СКД, встроенный в платформу, работает только в толстом клиенте. Это заставляет разработчиков работать с СКД в толстом клиенте, может привести к ошибкам, поскольку поведение тонкого и толстого клиента отличается.


По умолчанию «тонкий» конструктор СКД выключен. Включается через «Настройки» – «Общие» – «Конструктор СКД» – «Toolkit (тестовый)».

Основные особенности и преимущества нового конструктора СКД Infostart Toolkit:

  • Работа в тонком клиенте реализованы на основе Monaco Editor и поддерживают подсветку синтаксиса.
  • Реализована контекстная подсказка по полям и параметрам.
  • Есть подсказка по функциям – например, ВычислитьВыражениеСГруппировкойТаблицаЗначений и другие.
  • При работе с редактором запросов и выражений доступны шаблоны, например, ВЫБОР… КОГДА… ТОГДА…ИНАЧЕ…КОНЕЦ
  • Работа с запросом происходит через доработанный конструктор запроса (удобно редактировать связи).
  • Для выбора типов значения используется форма с группировкой по метаданным и поиском по подстроке.
  • Группы и наборы полей отображаются в виде иерархии, поддерживается перенос полей через Drag&Drop.
  • Редко используемые колонки в таблице полей по умолчанию скрыты – их можно отобразить через пункт «Подробнее» в подменю «Еще».
  • В пустой схеме отображаются кнопки создания набора данных, что уменьшает количество действий при первоначальной настройке.
  • Источник данных СКД заполняется по умолчанию и не занимает места на форме – при необходимости можно вывести на форму и изменить.
  • В заголовках страниц отображается количество элементов на странице.


В конструкторе СКД Infostart Toolkit реализованы практически все возможности стандартного конструктора, за исключением:

  • Макеты (только просмотр)
  • Редактирование настроек вложенной схемы
  • Автоматическое получение ролей полей по тексту запроса
  • Конструктор настроек структуры
  • Установка типов параметра Системные перечисления, Характеристика, ОпределяемыйТип

В будущем планируется решить эти проблемы. Подробнее о возможностях конструктора СКД, входящего в состав Infostart Toolkit, можно прочитать в статье на Инфостарте.

Развитие редактора кода 1С

В новой версии Infostart Toolkit 2.0 реализована контекстная подсказка к функции «Тип».

В контекстное меню редактора добавлены функции «Конструктор запроса», «Конструктор форматной строки» и «Конструктор строк на разных языках».


Поддерживается форматирование отступов кода с учетом условий, циклов и попыток по сочетанию клавиш Alt+Shift+F.

Более гибкие настройки и наглядное представление результата

При генерации для запроса кода на встроенном языке появилась возможность отключать установку параметров. А при экспорте результата в Excel/PDF/MXL можно отказаться от вывода заголовка.

Особые значения – 0, Неопределено и NULL – в табличном документе результата теперь подсвечиваются серым цветом.

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

Функции помощи при отладке на клиенте

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

Прочие улучшения и оптимизации

Вывод результата запроса значительно оптимизирован – выполняется на 25-55% быстрее.

Добавлены роли для добавления прав на отдельные инструменты расширения – ранее можно было дать доступ только на все инструменты.

Инструмент «Все функции» сохраняет последнее выбранное значение и быстрее работает при повторном использовании.

Подробнее с возможностями нового релиза Infostart Toolkit 2.0 и списком исправленных ошибок можно ознакомиться на странице релизов в репозитории GitHub

В репозитории можно регистрировать ошибки и пожелания, а также отслеживать развитие проекта.

IS Toolkit набор инструментов, который позволяет разрабатывать схемы и отчеты на СКД через консоль компоновки данных, инструменты используются только для управляемых форм, а конструктор СКД от 1С у нас работает только с обычными формами.

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

Задача очень сложная уже работаю над ней с разной степенью приложения усилий более полугода. Ранее рассказывал о том что разработка ведется в докладе "Infostart Toolkit – инструмент, в котором сделано то, что давно просят от 1С" (Инфостарт Евент 2021 Санкт-Петербург), но тогда версия еще была далека от релиза. Первая реализация, которая достойна описания, появилась в IS Toolkit с версии 2.0, которая вышла несколько дней назад.


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

Главные плюсы

  • Работает в тонком клиенте
  • Работает совместно с доработанным тонким конструктором запросов
  • Подцветка синтаксиса, контекстная подсказка в редакторе выражений на базе MS Monaco подробнее
  • Удобная форма выбора типа значения подробнее
  • Другие улучшения интерфейса (подробнее ниже)

Конструктор по умолчанию выключен, включается Настройки - Общие - Конструктор СКД - Toolkit (тестовый)


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

Удобный редактор выражений (требуется платформа 8.3.14)

  • Подцветка синтаксиса
  • Контекстная подсказка по полям и параметрам
  • Подсказка по функциям например, ВычислитьВыражениеСГруппировкойТаблицаЗначений :)
  • Шаблоны Выбор и др.

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


Стандартный конструктор от 1С


Схема в тонком конструкторе

Поддерживается перенос полей через Drag & Drop и удалось полностью уйти от поля путь к данным

Некоторые формы которые используются в толстом конструкторе не имеет аналогов на управляемых были реализованы:

Выбор поля, Редактирования роли, Редактирование параметров редактирования и др.




В стандартном конструктор есть галочка Автозаголовок когда нам надо задать заголовок отличный от "авто" ставим ее и вводим.


В новом конструкторе нет галочки Автозаголовок просто вводим заголовок, пока заголовка нет отображается серым текстом чтобы не привлекать внимание.


Работает в полях наборов, вычисляемых поля, параметрах, вложенных схемах, вариантах.

В СКД есть источники данных тип "ИсточникиДанныхСхемыКомпоновкиДанных" заполнение в объектной модели обязательно хотя заполнение никак не влияет на работу, поэтому работа с ними скрыта. Можно добавить через "Изменить форму. "


Включенные элементы работы с источниками данных

Работает в полях наборов данных, связях наборов, вычисляемых полях, параметрах.

Некоторые объекты СКД имеет большое количество настраиваемых полей, которые используются редко. Например, ВыражениеПредставления для поля набора данных такие поля по умолчанию скрываются и включаются через Еще - Подробно в соответствующей командной панели. Заполненные будет видно всегда.


Редкие используемые поля показаны


Редко используемые поля скрыты

Когда схема пустая и не содержит наборов данных отображаются кнопки создания набора данных


  • Более информативные заголовки станиц в них отображается количество элементов на странице
  • Выбор поля остаток в редактировании роли типа остаток
  • Улучшен интерфейс закладки "Ресурсы"
  • Возможность настраивать формы через "Изменить форму. "
  • Работа на английском языке

Что не реализовано (известные проблемы)

  • Макеты (только просмотр)
  • Редактирование настроек вложенной схемы
  • Автоматическое получение ролей полей по тексту запроса
  • Форма конструктор настроек структуры
  • Установка типов параметра Системные перечисления, Характеристика, ОпределяемыйТип

Мой конструктор более функционален и удобен, развивается и все проблемы будут решены, описываемая разработка вышла более 8 месяцев назад никаких (вообще) исправлений или доработок, а инструмент очень сложный. Другой конструктор это скорее повторение стандартного с кучей проблем в моем же реализовано много нового. Еще он менее функционален и от реального использования он намного дальше.



«Тонкий» конструктор СКД в составе расширения Infostart Toolkit помогает снять ограничения по разработке схем компоновки, упрощает работу с неочевидными механизмами СКД и добавляет контекстную подсказку для запросов и выражений.

О Infostart Toolkit

Infostart Toolkit – это коммерческий проект при поддержке Инфостарта, набор инструментов для разработчиков конфигураций 1С и специалистов по внедрению.

Продукт поставляется в виде расширения, в состав которого входит набор взаимосвязанных помощников:

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

Инструменты предназначены для управляемых форм, работают в конфигурациях с режимом совместимости 8.3.10 и выше.

Новая функциональность – конструктор СКД для тонкого клиента

Стандартный конструктор СКД, встроенный в платформу, работает только в толстом клиенте. Это заставляет разработчиков работать с СКД в толстом клиенте, может привести к ошибкам, поскольку поведение тонкого и толстого клиента отличается.


По умолчанию «тонкий» конструктор СКД выключен. Включается через «Настройки» – «Общие» – «Конструктор СКД» – «Toolkit (тестовый)».

Основные особенности и преимущества нового конструктора СКД Infostart Toolkit:

  • Работа в тонком клиенте реализованы на основе Monaco Editor и поддерживают подсветку синтаксиса.
  • Реализована контекстная подсказка по полям и параметрам.
  • Есть подсказка по функциям – например, ВычислитьВыражениеСГруппировкойТаблицаЗначений и другие.
  • При работе с редактором запросов и выражений доступны шаблоны, например, ВЫБОР… КОГДА… ТОГДА…ИНАЧЕ…КОНЕЦ
  • Работа с запросом происходит через доработанный конструктор запроса (удобно редактировать связи).
  • Для выбора типов значения используется форма с группировкой по метаданным и поиском по подстроке.
  • Группы и наборы полей отображаются в виде иерархии, поддерживается перенос полей через Drag&Drop.
  • Редко используемые колонки в таблице полей по умолчанию скрыты – их можно отобразить через пункт «Подробнее» в подменю «Еще».
  • В пустой схеме отображаются кнопки создания набора данных, что уменьшает количество действий при первоначальной настройке.
  • Источник данных СКД заполняется по умолчанию и не занимает места на форме – при необходимости можно вывести на форму и изменить.
  • В заголовках страниц отображается количество элементов на странице.


В конструкторе СКД Infostart Toolkit реализованы практически все возможности стандартного конструктора, за исключением:

  • Макеты (только просмотр)
  • Редактирование настроек вложенной схемы
  • Автоматическое получение ролей полей по тексту запроса
  • Конструктор настроек структуры
  • Установка типов параметра Системные перечисления, Характеристика, ОпределяемыйТип

В будущем планируется решить эти проблемы. Подробнее о возможностях конструктора СКД, входящего в состав Infostart Toolkit, можно прочитать в статье на Инфостарте.

Развитие редактора кода 1С

В новой версии Infostart Toolkit 2.0 реализована контекстная подсказка к функции «Тип».

В контекстное меню редактора добавлены функции «Конструктор запроса», «Конструктор форматной строки» и «Конструктор строк на разных языках».


Поддерживается форматирование отступов кода с учетом условий, циклов и попыток по сочетанию клавиш Alt+Shift+F.

Более гибкие настройки и наглядное представление результата

При генерации для запроса кода на встроенном языке появилась возможность отключать установку параметров. А при экспорте результата в Excel/PDF/MXL можно отказаться от вывода заголовка.

Особые значения – 0, Неопределено и NULL – в табличном документе результата теперь подсвечиваются серым цветом.

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

Функции помощи при отладке на клиенте

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

Прочие улучшения и оптимизации

Вывод результата запроса значительно оптимизирован – выполняется на 25-55% быстрее.

Добавлены роли для добавления прав на отдельные инструменты расширения – ранее можно было дать доступ только на все инструменты.

Инструмент «Все функции» сохраняет последнее выбранное значение и быстрее работает при повторном использовании.

Подробнее с возможностями нового релиза Infostart Toolkit 2.0 и списком исправленных ошибок можно ознакомиться на странице релизов в репозитории GitHub

В репозитории можно регистрировать ошибки и пожелания, а также отслеживать развитие проекта.



«Тонкий» конструктор СКД в составе расширения Infostart Toolkit помогает снять ограничения по разработке схем компоновки, упрощает работу с неочевидными механизмами СКД и добавляет контекстную подсказку для запросов и выражений.

О Infostart Toolkit

Infostart Toolkit – это коммерческий проект при поддержке Инфостарта, набор инструментов для разработчиков конфигураций 1С и специалистов по внедрению.

Продукт поставляется в виде расширения, в состав которого входит набор взаимосвязанных помощников:

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

Инструменты предназначены для управляемых форм, работают в конфигурациях с режимом совместимости 8.3.10 и выше.

Новая функциональность – конструктор СКД для тонкого клиента

Стандартный конструктор СКД, встроенный в платформу, работает только в толстом клиенте. Это заставляет разработчиков работать с СКД в толстом клиенте, может привести к ошибкам, поскольку поведение тонкого и толстого клиента отличается.


По умолчанию «тонкий» конструктор СКД выключен. Включается через «Настройки» – «Общие» – «Конструктор СКД» – «Toolkit (тестовый)».

Основные особенности и преимущества нового конструктора СКД Infostart Toolkit:

  • Работа в тонком клиенте реализованы на основе Monaco Editor и поддерживают подсветку синтаксиса.
  • Реализована контекстная подсказка по полям и параметрам.
  • Есть подсказка по функциям – например, ВычислитьВыражениеСГруппировкойТаблицаЗначений и другие.
  • При работе с редактором запросов и выражений доступны шаблоны, например, ВЫБОР… КОГДА… ТОГДА…ИНАЧЕ…КОНЕЦ
  • Работа с запросом происходит через доработанный конструктор запроса (удобно редактировать связи).
  • Для выбора типов значения используется форма с группировкой по метаданным и поиском по подстроке.
  • Группы и наборы полей отображаются в виде иерархии, поддерживается перенос полей через Drag&Drop.
  • Редко используемые колонки в таблице полей по умолчанию скрыты – их можно отобразить через пункт «Подробнее» в подменю «Еще».
  • В пустой схеме отображаются кнопки создания набора данных, что уменьшает количество действий при первоначальной настройке.
  • Источник данных СКД заполняется по умолчанию и не занимает места на форме – при необходимости можно вывести на форму и изменить.
  • В заголовках страниц отображается количество элементов на странице.


В конструкторе СКД Infostart Toolkit реализованы практически все возможности стандартного конструктора, за исключением:

  • Макеты (только просмотр)
  • Редактирование настроек вложенной схемы
  • Автоматическое получение ролей полей по тексту запроса
  • Конструктор настроек структуры
  • Установка типов параметра Системные перечисления, Характеристика, ОпределяемыйТип

В будущем планируется решить эти проблемы. Подробнее о возможностях конструктора СКД, входящего в состав Infostart Toolkit, можно прочитать в статье на Инфостарте.

Развитие редактора кода 1С

В новой версии Infostart Toolkit 2.0 реализована контекстная подсказка к функции «Тип».

В контекстное меню редактора добавлены функции «Конструктор запроса», «Конструктор форматной строки» и «Конструктор строк на разных языках».


Поддерживается форматирование отступов кода с учетом условий, циклов и попыток по сочетанию клавиш Alt+Shift+F.

Более гибкие настройки и наглядное представление результата

При генерации для запроса кода на встроенном языке появилась возможность отключать установку параметров. А при экспорте результата в Excel/PDF/MXL можно отказаться от вывода заголовка.

Особые значения – 0, Неопределено и NULL – в табличном документе результата теперь подсвечиваются серым цветом.

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

Функции помощи при отладке на клиенте

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

Прочие улучшения и оптимизации

Вывод результата запроса значительно оптимизирован – выполняется на 25-55% быстрее.

Добавлены роли для добавления прав на отдельные инструменты расширения – ранее можно было дать доступ только на все инструменты.

Инструмент «Все функции» сохраняет последнее выбранное значение и быстрее работает при повторном использовании.

Подробнее с возможностями нового релиза Infostart Toolkit 2.0 и списком исправленных ошибок можно ознакомиться на странице релизов в репозитории GitHub

В репозитории можно регистрировать ошибки и пожелания, а также отслеживать развитие проекта.

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