[Alimir_BootModal_Login]

Система компоновки данных 1С 8.3 для начинающих: делаем отбор и сортировку на уровне СКД

Автор уроков и преподаватель школы: Владимир Милькин

Ставим цель

  • Создать новый отчёт "Урок5.erf".
  • Вывести в этом отчёте города (включая название города, мэра и численность).
  • Упорядочить города в списке по численности (по возрастанию)
  • Прямо на форме отчёта дать пользователю возможность делать отбор городов по минимальной численности.

Создаём новый отчёт в конфигураторе

Открываем базу "Гастроном" в конфигураторе.

Из главного меню конфигуратора выбираем пункт "Файл"->"Новый...":

Вид документа: "Внешний отчет":

В качестве имени пишем "Урок5" и нажимаем кнопку "Открыть схему компоновки данных":

Соглашаемся с именем схемы компоновки данных по умолчанию:

В открывшейся схеме компоновки данных добавляем набор данных - запрос:

Составляем запрос

Запускаем конструктор запроса:

Из таблицы справочника "Города" выбираем поля: "Наименование", "Мэр" и "Численность":

Получился такой запрос:

Выводим отчёт в виде списка

Переходим на закладку "Настройки" и нажимаем волшебную палочку, чтобы вызывать конструктор настроек:

Тип отчёта выбираем "Список":

В отчёте будут отображаться следующие поля:

Сохраняем отчет и тут же проверяем в режиме пользователя:

Хорошо.

Сортируем города по численности

Теперь давайте упорядочим записи отчёта по возрастанию численности.

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

Направление сортировки указываем "По возрастанию":

Сохраняем отчёт и проверяем в режиме пользователя:

Отлично.

Делаем отбор городов по численности

Теперь давайте сделаем так, чтобы в отчёте выводились только города с численностью от 1 миллиона человек (включительно). Такая возможность называется отбор.

Переходим на вкладку "Настройки", выбираем пункт "Отчет", далее переходим на вкладку "Отбор" и перетаскиваем поле "Численность" из левой колонки в правую.

В качестве вида сравнения указываем "Больше или равно", а в качестве правого значения - 1000000:

Сохраняем отчет и проверяем в режиме пользователя:

Видим, что остались города с численностью больше миллиона и этот факт (отбора) явно отражён в заголовке отчета.

Выносим параметр отбора на форму отчета

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

Заходим на вкладку "Настройки", выделяем пункт "Отчет", внизу выбираем вкладку "Отбор", выделяем элемент отбора "Численность" и нажимаем справа внизу на зелёный плюсик:

В открывшемся окне ставим галку "Включать в пользовательские настройки":

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

Видим, что появилось поле "Численность" меняя условие и значение которого мы управляем отбором городов в отчёте:

Отлично! :-) В следующем уроке мы сделаем отчет с теми же возможностями (сортировка и отбор по численности) не прибегая к возможностям системы компоновки данных. Мы сделаем это на уровне запроса. Зачем? Об этом я расскажу в уроке.

Эталонная обработка, после выполнения всех шагов этого урока

Для учеников

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

На вопросы учеников — отвечаю по почте,  но прежде загляните в ЧАВО (ссылка) .

С уважением, Владимир Милькин

[Alimir_BootModal_Login]