ТипКонтрольнойТочкиСхемыЗапроса

Темы платформы · QuerySchemaTotalCalculationFieldType

Тип контрольной точки.

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

ТипКонтрольнойТочкиСхемыЗапроса (QuerySchemaTotalCalculationFieldType)

ТипКонтрольнойТочкиСхемыЗапроса (QuerySchemaTotalCalculationFieldType)

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

Значения
Иерархия (Hierarchy)
ТолькоИерархия (HierarchyOnly)
Элементы (Items)

Описание:

Тип контрольной точки.

Доступность:

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

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

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

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

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

Изменить итоговую контрольную точку: Иерархия

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

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

Тело одной кнопки своей обычной формы, толстый клиент: дополнительный блок до основного.

Подготовка

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

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

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

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

  5. Основной и дополнительный блок поместите в тело одной кнопки собственной обычной формы, толстый клиент: сначала текст, затем разбор и выполнение.

  6. У исходного запроса уже есть ИТОГИ ПО Издание: поэтому контрольная точка [0] действительно существует. РежимКомпоновкиДанных выключен, иначе разбор предложения ИТОГИ запрещён.

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

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

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

  2. Разберите запрос и измените ТипКонтрольнойТочки уже созданного итогового поля.

  3. Посмотрите сгенерированный текст и реальные группировки результата.

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

  1. Элементы — итоги по элементам, Иерархия добавляет иерархические итоги, ТолькоИерархия оставляет соответствующие иерархические контрольные точки.

  2. Три значения источника для сравнения: книга 3, тетрадь 5, группа 8. Иерархический итог не является третьей продажей и не прибавляется повторно к детальным строкам.

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

Тип применяется к реальному узлу схемы запроса, затем используется готовым запросом.

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

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

  2. Код 1С при сборке HTML не выполнялся.

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

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

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

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

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