← Назад ко всем вопросам

Как работает автоупорядочивание в СКД и как его выключить

1️⃣ Как кратко ответить

Автоупорядочивание в СКД автоматически сортирует данные по полям, используемым в группировках и итогах. Чтобы его отключить, необходимо в настройках СКД для каждого поля, по которому не требуется сортировка, установить свойство "Автоупорядочивание" в значение "Ложь".

2️⃣ Подробное объяснение темы

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

Зачем нужно автоупорядочивание

Автоупорядочивание помогает:

  • Обеспечить правильное отображение данных в отчетах, где важна иерархия.
  • Гарантировать корректный расчет итогов, так как они зависят от порядка данных.
  • Упростить настройку отчетов, автоматически добавляя сортировку там, где это необходимо.

Как работает автоупорядочивание

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

Как отключить автоупорядочивание

Если автоупорядочивание не требуется, его можно отключить. Это делается в настройках СКД для каждого поля, по которому не требуется сортировка. Рассмотрим, как это сделать:

  1. Откройте настройки СКД: Перейдите в редактор отчета и откройте настройки СКД.

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

  3. Измените свойство "Автоупорядочивание": Установите для свойства "Автоупорядочивание" значение "Ложь". Это отключит автоматическую сортировку для данного поля.

Пример кода для отключения автоупорядочивания:

// Получаем объект настройки компоновки данных
НастройкаКомпоновкиДанных = Новый НастройкаКомпоновкиДанных;
​
// Добавляем поле в группировку
Группировка = НастройкаКомпоновкиДанных.Группировки.Добавить();
Группировка.Поле = "Дата";
​
// Отключаем автоупорядочивание для поля "Дата"
Группировка.Автоупорядочивание = Ложь;
  • НастройкаКомпоновкиДанных = Новый НастройкаКомпоновкиДанных;
    Создаем новый объект настройки компоновки данных, который будет использоваться для конфигурации отчета.

  • Группировка = НастройкаКомпоновкиДанных.Группировки.Добавить();
    Добавляем новую группировку в настройки компоновки данных. Группировки используются для организации данных в отчете.

  • Группировка.Поле = "Дата";
    Указываем, что группировка будет производиться по полю "Дата".

  • Группировка.Автоупорядочивание = Ложь;
    Отключаем автоупорядочивание для поля "Дата", чтобы данные не сортировались автоматически по этому полю.

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

Тема: Запросы и СКД
Стадия: Tech

🔒 Подпишись на бусти автора и стань Алигатором, чтобы получить полный доступ к функционалу сайта и отслеживать свой прогресс!

Твои заметки