ТипМакетаОбластиКомпоновкиДанных.ПодвалИерархии

Свойства · HierarchicalFooter

Макет подвала иерархии.

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

ТипМакетаОбластиКомпоновкиДанных.ПодвалИерархии (DataCompositionAreaTemplateType.HierarchicalFooter)

ТипМакетаОбластиКомпоновкиДанных (DataCompositionAreaTemplateType)

ПодвалИерархии (HierarchicalFooter)

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

Описание:
Макет подвала иерархии.
Использование в версии:

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

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

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

Связать свою непустую область с макетом группировки: ПодвалИерархии

Создаются настоящий макет области, его именованное описание в схеме и точное применение к собственной группировке.

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

Тело кнопки своей обычной формы, толстый клиент; собственный отчёт и собственные издания.

Подготовка

  1. В своей учебной конфигурации создайте иерархический справочник УчебныеИзданияСКД: иерархия групп и элементов, код Строка 10, наименование 100, реквизит КоличествоУчебное Число 10.0.

  2. Вручную создайте только свои записи: группа GROUP с именем Учебные издания, в ней элемент BOOK-1 Учебная книга с количеством 3 и элемент BOOK-2 Учебная тетрадь с количеством 5. Обновите учебную базу; рабочую номенклатуру не используйте.

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

  4. BSL, записи справочника и формирование запросов при сборке HTML не выполнялись.

  5. Создайте свой отчёт УчебнаяИерархияМакетов с макетом ОсновнаяСхемаКомпоновкиДанных. В СКД источник Local, набор-запрос Издания — приведённый запрос настоящих собственных ссылок и количества. Автоматически заполните поля, Количество назначьте ресурсом Сумма(Количество).

  6. Вариант УчебныеГруппы: верхняя группировка Издание, внутри детальные записи. В выбранных полях Издание и Количество. В параметрах вывода этой группировки включите вывод итогов в начале и конце; вывод иерархических итогов тоже должен быть разрешён. Родительская группа справочника существует по подготовке.

  7. Код — тело кнопки собственной обычной формы, толстый клиент. Три дополнительные функции / процедуры находятся отдельно в том же модуле. Нативный макет области — НЕ ТабличныйДокумент: создаются его строка, ячейка и элемент с собственным текстом.

  8. Для самостоятельного сравнения меняйте только ТипМакета. Заголовок / Подвал относятся к группировке, ЗаголовокИерархии / ПодвалИерархии — к её иерархическим узлам, ОбщийИтогЗаголовок / ОбщийИтогПодвал — к общему итогу группировки. Если соответствующий вывод выключен настройками, этот слот не появится.

Схема = Отчеты.УчебнаяИерархияМакетов.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
Компоновщик = УчебныйКомпоновщик(Схема, "УчебныеГруппы");
Группировка = Компоновщик.Настройки.Структура[0];
Группировка.Имя = "СвояГруппаИзданий";
Группировка.ПоляГруппировки.Элементы[0].ТипГруппировки = ТипГруппировкиКомпоновкиДанных.Иерархия;
Описание = Схема.Макеты.Добавить();
Описание.Имя = "СвояМеткаОбласти";
Описание.Макет = СвояОбластьМеткиКниг("Своя область: ПодвалИерархии");
Применение = Схема.МакетыГруппировок.Добавить();
Применение.ИмяГруппировки = "СвояГруппаИзданий";
Применение.Макет = "СвояМеткаОбласти";
Применение.ТипМакета = ТипМакетаОбластиКомпоновкиДанных.ПодвалИерархии;
Сообщить("Собственный слот макета: " + Строка(Применение.ТипМакета));
ВывестиУчебнуюКомпоновку(Схема, Компоновщик.Настройки);
Конструктор своей СКД: настоящий запрос собственных изданий
ВЫБРАТЬ Издания.Ссылка КАК Издание,
    Издания.КоличествоУчебное КАК Количество
ИЗ Справочник.УчебныеИзданияСКД КАК Издания
ГДЕ НЕ Издания.ЭтоГруппа
    И Издания.Код В ("BOOK-1", "BOOK-2")
Тот же модуль: непустой native-макет области
Функция СвояОбластьМеткиКниг(ТекстМетки)
    Область = Новый МакетОбластиКомпоновкиДанных;
    СтрокаОбласти = Область.Добавить(Тип("СтрокаТаблицыОбластиКомпоновкиДанных"));
    Ячейка = СтрокаОбласти.Ячейки.Добавить();
    Поле = Ячейка.Элементы.Добавить(Тип("ПолеОбластиКомпоновкиДанных"));
    Поле.Значение = ТекстМетки;
    Возврат Область;
КонецФункции
Тот же модуль: загрузить свой вариант
Функция УчебныйКомпоновщик(Схема, ИмяВарианта)
    Источник = Новый ИсточникДоступныхНастроекКомпоновкиДанных(Схема);
    Компоновщик = Новый КомпоновщикНастроекКомпоновкиДанных;
    Компоновщик.Инициализировать(Источник);
    Для Каждого Вариант Из Схема.ВариантыНастроек Цикл
        Если Вариант.Имя = ИмяВарианта Тогда
            Компоновщик.ЗагрузитьНастройки(Вариант.Настройки);
            Возврат Компоновщик;
        КонецЕсли;
    КонецЦикла;
    ВызватьИсключение "Создайте собственный вариант схемы: " + ИмяВарианта;
КонецФункции
Тот же модуль: выполнить настоящий вывод СКД
Процедура ВывестиУчебнуюКомпоновку(Схема, Настройки)
    Расшифровка = Новый ДанныеРасшифровкиКомпоновкиДанных;
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    Макет = КомпоновщикМакета.Выполнить(Схема, Настройки, Расшифровка);
    Процессор = Новый ПроцессорКомпоновкиДанных;
    Процессор.Инициализировать(Макет, , Расшифровка);
    Лист = Новый ТабличныйДокумент;
    Вывод = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    Вывод.УстановитьДокумент(Лист);
    Вывод.Вывести(Процессор);
    Сообщить("Макетов областей: " + Строка(Макет.Макеты.Количество()));
    Сообщить("Элементов расшифровки: " + Строка(Расшифровка.Элементы.Количество()));
    Лист.Показать("Собственная компоновка учебных книг");
КонецПроцедуры

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

  1. Подготовьте свою реальную иерархию и вариант отчёта.

  2. Свяжите имя собственного макета с точным именем группировки и выбранным слотом.

  3. Сформируйте настоящий результат СКД и найдите собственную текстовую метку в соответствующей области.

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

  1. Описание.Макет получает настоящий МакетОбластиКомпоновкиДанных; Применение.Макет — строковое ИМЯ описания. Это разные типы, которые нельзя поменять местами.

  2. Собственная область содержит статический текст-маркер, не формулу суммы. Она заменяет выбранный слот группировки; не является дополнительным движением и не меняет количества 3 / 5 у книг.

  3. Схема изменена только в памяти и действительно передаётся компоновщику макета / процессору вывода. BSL, печать и запись макета конфигурации при сборке HTML не выполнялись.

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

Есть непустая собственная область и настоящий конвейер её применения в отчёте.

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

  1. Не подставляйте прямой ТабличныйДокумент в ОписаниеМакетаСхемыКомпоновкиДанных.Макет и не используйте иерархический слот для строкового поля без иерархии.

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

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

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

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

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