АвтоВыбранноеПолеКомпоновкиДанных.Родитель

Свойства · Parent

Тип: Неопределено, ГруппаВыбранныхПолейКомпоновкиДанных. Родительская группа выбранных полей. Неопределено для полей верхнего уровня.

Полное описание, параметры и ограничения

АвтоВыбранноеПолеКомпоновкиДанных.Родитель (DataCompositionAutoSelectedField.Parent)

АвтоВыбранноеПолеКомпоновкиДанных (DataCompositionAutoSelectedField)

Родитель (Parent)

Доступен, начиная с версии 8.1.

Использование:
Только чтение.
Описание:
Тип: Неопределено, ГруппаВыбранныхПолейКомпоновкиДанных.
Родительская группа выбранных полей. Неопределено для полей верхнего уровня.
Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.

Использование в версии:

Доступен, начиная с версии 8.1.

Методическая информация

Практические примеры

Добавить автоматический выбор полей в детальные записи отчёта

Автополе получает состав колонок из настроек вышестоящего элемента. Его создаёт коллекция выбора, а не конструктор Новый.

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

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

Подготовка

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

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

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

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

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

  1. Создаём корневые настройки и явно выбираем поле Наименование.

  2. Группировка без полей группировки задаёт детальные записи; включаем её использование.

  3. Добавить с типом АвтоВыбранноеПолеКомпоновкиДанных создаёт настоящее автополе в выборе этой группировки.

  4. Использование включает автополе; Родитель относится к группе выбранных полей и здесь равен Неопределено, а не ДетальныеЗаписи.

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

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

  1. Тип АвтоВыбор должен быть АвтоВыбранноеПолеКомпоновкиДанных, количество элементов выбора 1.

  2. Сравнение Родитель с Неопределено даёт Истина, поскольку поле добавлено не во вложенную группу выбранных полей.

  3. Поменяйте Использование на Ложь и посмотрите флаг в отладчике.

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

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

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

  1. Имя Наименование должно существовать в схеме, если вы затем передадите настройки компоновщику.

  2. Автополе выбора не равно звёздочке ВЫБРАТЬ * и не добавляет все колонки базы.

  3. Группировка структуры и группа выбранных полей — разные объекты.

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

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

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

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

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