Добавить автоматические поля группировки

Учебные задачи

Коллекция полей группировки содержит не только явные поля, но и элемент автоматического формирования их состава.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Работайте в учебной базе на платформе 8.5.1.1343.

  2. Фрагмент вставьте внутрь серверной процедуры учебной обработки; объекты конфигурации и внешние файлы не нужны.

  3. Поставьте точку останова после создания настроек и посмотрите их дерево в отладчике.

Настройки = Новый НастройкиКомпоновкиДанных;
ВыбранноеПоле = Настройки.Выбор.Элементы.Добавить(
    Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранноеПоле.Поле = Новый ПолеКомпоновкиДанных("Категория");
ВыбранноеПоле.Использование = Истина;
Группировка = Настройки.Структура.Добавить(
    Тип("ГруппировкаКомпоновкиДанных"));
Группировка.Использование = Истина;
АвтоГруппировка = Группировка.ПоляГруппировки.Элементы.Добавить(
    Тип("АвтоПолеГруппировкиКомпоновкиДанных"));
АвтоГруппировка.Использование = Истина;
Сообщить(ТипЗнч(АвтоГруппировка));
Сообщить(Группировка.ПоляГруппировки.Элементы.Количество());

Разбор по шагам

  1. Выбираем Категория в корневых настройках.

  2. Создаём включённый элемент структуры отчёта.

  3. Получаем коллекцию через ПоляГруппировки.Элементы и добавляем в неё АвтоПолеГруппировкиКомпоновкиДанных.

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

Как проверить результат

  1. Тип АвтоГруппировка должен совпасть с названием статьи; в коллекции один элемент.

  2. Установите Использование=Ложь: в отладчике элемент остаётся, но его флаг отключён.

Ожидаемый результат

В структуре настроек появился включённый элемент автоматической группировки. Для формирования отчёта дополнительно нужна схема с полем Категория.

На что обратить внимание

  1. Ресурсы не включаются в автоматический состав полей группировки.

  2. Если нужен точно определённый состав, используйте ПолеГруппировкиКомпоновкиДанных с явным Поле.

  3. Добавление настройки не создаёт колонку Категория в схеме или базе.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.