Настройки и варианты отчетов на скд. Настройки и варианты отчетов на скд Создаем новый отчет

Мы довольно подробно рассмотрели настройки отчетов, реализованных на базе СКД. Теперь разберем более тонкие и детальные настройки вариантов отчета. Окно «продвинутых» настроек варианта отчета вызывается по команде «Еще» - «Прочее» - «Изменить вариант отчета».

Окно изменения варианта отчета разделено на две части:

1. Структура отчета.

2. Настройки отчета.


Раздел структуры варианта отчета аналогичен вкладке «Структура» стандартных настроек отчета. Назначение и настройка группировок подробно рассмотрена в ч. 1 статьи.

Таблица структуры варианта отчета, кроме непосредственно колонки с группировками, содержит несколько дополнительных колонок:

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

Раздел настроек состоит из следующих вкладок:

1. Параметры. Содержит параметры СКД, доступные пользователю.

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


Таблица параметров представлена в формате «Параметр»-«Значение». При необходимости можно менять значения параметров. Нажатие на кнопку «Свойства элемента пользовательских настроек» открывает пользовательские настройки элемента.


В данном окне можно выбрать, будет ли элемент включен в пользовательские настройки (т.е. виден пользователю при настройке отчета), задать представление элемента и режим редактирования (быстрый доступ в шапке отчета, обычный в настройках отчета и недоступный).

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

2. Пользовательские поля. Содержит поля, которые формирует сам пользователь на основании данных, выбираемых отчетом.


Пользователь может добавить два вида полей:

  • Новое поле выбор…
  • Новое поле выражение…

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


Например, вычислим оценку количества продаж. Будем считать, что, если продано меньше 10 единиц товара, продали мало, а если больше 10 единиц - много. Для этого зададим 2 значения вычисляемого поля: первое будет с отбором «Количество товаров Меньше или равно "10"», второе с отбором «Количество товаров Больше "10"».

Поля выражения позволяют вычислять значение используя произвольные алгоритмы. В них могут использоваться функции языка запросов и встроенного языка программирования 1С. Окно редактирования поля выражения содержит два поля для выражений детальных и итоговых записей. Итоговые записи - это группировки, настроенные в области «Структура отчета», в них необходимо использовать агрегатные функции («Сумма», «Минимум», «Максимум», «Количество»).

Например, вычислим средний процент скидки. Средний процент скидки рассчитывается по формуле: [Сумма продаж без скидки] - [Сумма продаж со скидкой] / [Сумма продаж без скидки]. Необходимо помнить, что сумма продаж без скидки может быть нулевой, поэтому используем оператор ВЫБОР для проверки. Получим следующие выражения:

· Для детальных записей:

Выбор

Когда [Сумма продаж без скидки] = 0

Тогда 0

Иначе [Сумма продаж без скидки] - [Сумма продаж со скидкой] / [Сумма продаж без скидки]

Конец

· Для итоговых записей:

Выбор

Когда Сумма([Сумма продаж без скидки]) = 0

Тогда 0

Иначе Сумма([Сумма продаж без скидки]) - Сумма([Сумма продаж со скидкой]) / Сумма([Сумма продаж без скидки])

Конец

Как было сказано ранее, в выражении итоговых записей используем агрегатную функцию «Сумма».

3. Группируемые поля. Содержит поля, по которым будет группироваться результат варианта отчета. Группируемые поля настраиваются отдельно для каждой из группировок, но можно задать общие группируемые поля для варианта отчета, если выбрать в дереве структуры корень «Отчет». Можно добавить поле из результата отчета, пользовательское поле или выбрать авто поле, тогда система подберет поля автоматически. Также данная вкладка позволяет изменять порядок следования группируемых полей.


4. Поля. Содержит поля, которые будут выведены в результат варианта отчета. Поля настраиваются отдельно для каждой из группировок, но можно задать общие поля для варианта отчета, если выбрать в дереве структуры корень «Отчет». Можно добавить поле из результата отчета, пользовательское поле или выбрать авто поле, тогда система подберет поля автоматически. Также данная вкладка позволяет изменять порядок следования полей.

Поля можно группировать, чтобы логически выделить какую-либо часть отчета или задать особое расположение колонок. При добавлении группы становится активна колонка «Расположение» и позволяет выбрать один из вариантов расположения:

  • Авто - система располагает поля автоматически;
  • Горизонтально - поля располагаются горизонтально;
  • Вертикально - поля располагаются вертикально;
  • В отдельной колонке - поля располагаются в разных колонках;
  • Вместе - поля располагаются в одной колонке.


5. Отбор. Содержит отборы, используемые в варианте отчета. Настройка отборов была подробно рассмотрена в части 1 данной статьи. Отборы настраиваются отдельно для каждой из группировок, но можно задать общие отборы для варианта отчета, если выбрать в дереве структуры корень «Отчет».


6. Сортировка. Содержит поля сортировки, используемые в варианте отчета. Настройка полей сортировки была подробно рассмотрена в части 1 данной статьи. Сортировка настраиваются отдельно для каждой из группировок, но можно задать общие поля сортировки для варианта отчета, если выбрать в дереве структуры корень «Отчет».


7. Условное оформление. Содержит элементы условного оформления, используемые в варианте отчета. Настройка условного оформления была подробно рассмотрена в части 1 данной статьи. Условное оформление настраивается отдельно для каждой из группировок, но можно задать общие элементы условного оформления для варианта отчета, если выбрать в дереве структуры корень «Отчет».


8. Дополнительные настройки. Содержит дополнительные настройки оформления отчета. Позволяют выбрать общий внешний вид отчета, расположение полей, группировок, реквизитов, ресурсов, итогов, задать настройки диаграммы, управлять выводом заголовка, параметров и отбора, определять позицию ресурсов и закреплять шапку и колонки группировок варианта отчета.


В заключение хотелось бы отметить, что настройки отчета можно не только сохранять в качестве варианта отчета, но и выгружать в файл (меню «Еще» - «Сохранить настройки»). Для загрузки необходимо выбрать «Загрузить настройки» и выбрать сохраненный файл. Таким образом, мы можем передавать настройки варианта отчета между различными базами, имеющими одинаковую конфигурацию.


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

Для одного отчета может быть задано несколько вариантов его визуального представления - то есть олна и та же информация может быть по-разному развернута, сгруппирована и т.д. Предопределенные варианты задаются в конструкторе СКД на закладке Настройки (рис.); также вариант может быть создан и в режиме Предприятие.

Вариант, расположенный выше всех по порядку, будет считаться вариантом по умолчанию.

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

Указываем вариант доступа пользователя к настройке:

От этого зависит, что пользователь увидит в настройке отчета в Предприятии:

Вопрос 11.32 экзамена 1С:Профессионал по Платформе. Какой вариант отчета в схеме компоновки данных будет считаться по умолчанию?
  1. Тот, который стоит в списке вариантов первым
  2. Тот, у которого установлено свойство вариант по умолчанию
  3. Тот, который определялся первым в процессе создания вариантов
Правильный ответ первый, описание в тексте.
Вопрос 11.35 экзамена 1С:Профессионал по Платформе. Как добавить настройку в список пользовательских настроек?
  1. в форме настройки пользовательского элемента можно указать признак того, что элемент является пользовательским
  2. в форме настройки пользовательского элемента включить быстрый доступ в режиме редактирования
  3. добавление осуществляется установкой флажка в свойстве "Использовать"
Правильный ответ первый.
Вопрос 11.40 экзамена 1С:Профессионал по Платформе. В настройках системы компоновки данных обязательно должны быть заданы
  1. Структура настроек
  2. Параметры
  3. Выбранные поля
  4. Группируемые поля
  5. Сортировка
  6. Все выше перечисленное
Правильный ответ первый. Структура обязательна, все остальной СКД может добавить автоматически, либо оно необязательно в принципе.
Вопрос 11.41 экзамена 1С:Профессионал по Платформе. Каким образом будет выглядеть форма отчета после применения следующих настроек?
  1. В виде таблицы из четырех колонок: "Товар", "Склад", "Количество остаток", "Сумма остаток"
  2. В виде таблицы из трех колонок: "Товар", "Склад", "Количество остаток"
  3. В виде таблицы, количество колонок которой будет зависеть от количества складов, на которых существуют ненулевые остатки
  4. Отчет сформирован не будет
Правильный ответ четвертый - в корневом элементе структуры настроек не стоит галочка, следовательно, данные для вывода не определены.
Вопрос 11.42 экзамена 1С:Профессионал по Платформе. Что произойдет при формировании отчета, если в пользовательском режиме настройки системы компоновки данных отсутствуют?
  1. Будут использованы "Настройки по умолчанию", заданные разработчиком в схеме компоновки данных
  2. Из списка вариантов настроек будет использован вариант, следующий за текущим
  3. Будут использованы пользовательские настройки
  4. Отчет сформирован не будет
Правильный ответ четвертый - приоритено то, что указал пользователь. Пользовательские настройки пусты, следовательно отчет сформирован не будет.
Вопрос 11.43 экзамена 1С:Профессионал по Платформе.
  1. На левую границу первой секунды даты, указанной в параметре "Период"
  2. Будут получены актуальные остатки, если другое значение не задано в параметре системы компоновки данных, созданном на основании имени внешнего параметра, указанного в тексте запроса для параметра "Период" виртуальной таблицы
Правильный ответ четвертый. Галочка "Период" не стоит, то есть пользвательский отбор не задан. В общем случае это означает актуальные остатки, но возможно, параметр периода определен в иной настройке СКД.
Вопрос 11.44 экзамена 1С:Профессионал по Платформе. На какую точку на оси времени будут получены остатки при формировании отчета?
  1. На левую границу первой секунды даты, указанной в параметре "Период"
  2. На правую границу последней секунды даты, указанной в параметре "Период"
  3. Будут получены актуальные остатки
  4. Будут получены актуальные остатки, если другое значение не задано в параметре системы компоновки данных, созданном на основании имени внешнего параметра, указанного в тексте запроса для параметра "Период" виртуальной таблицы
Правильный ответ первый - тут явно указан отбор.

Вопрос 11.45 экзамена 1С:Профессионал по Платформе. На рисунке показана форма отчета, созданная системой по умолчанию. Элемент какого вида настроек обведен рамкой?

  1. Пользовательских настроек
  2. Фиксированных настроек
  3. Варианта настроек
  4. Элемент может относиться к любому виду настроек, в зависимости от значения его свойства "Путь к данным"
Правильный ответ первый.
Вопрос 11.46 экзамена 1С:Профессионал по Платформе. В отчете отбор по полю "Склад" задан одновременно во всех видах настроек. Что произойдет при попытке сформировать отчет?
  1. Отчет сформирован не будет
  2. Отчет будет сформирован с применением отбора из пользовательских настроек
  3. Отчет будет сформирован с применением отбора из фиксированных настроек
  4. Отчет будет сформирован с применением отбора из текущего варианта настроек
Что за "все виды настроек" непонятно, но по ответам правильный вариант первый.
Вопрос 11.47 экзамена 1С:Профессионал по Платформе. В отчете отбор по полю "Склад" задан одновременно в пользовательских настройках и в текущем варианте настроек. Что произойдет при попытке сформировать отчет?
  1. Отчет будет сформирован с применением отбора из пользовательских настроек, если стоит флаг "Использование". Если флаг "Использование" - не установлен, то отбора не будет
  2. Отчет будет сформирован с применением отбора из пользовательских настроек, если стоит флаг "Использование". Если флаг "Использование" - не установлен, то будет использована настройка отбора из варианта настроек
  3. Отчет будет сформирован с применением отбора из варианта настроек, если стоит флаг "Использование". Если флаг "Использование" - не установлен, то отбора не будет
  4. Отчет будет сформирован с применением отбора из варианта настроек, если стоит флаг "Использование". Если флаг "Использование" - не установлен, то будет использована настройка отбора из пользовательских настроек
Правильный вариант первый.
Вопрос 11.49 экзамена 1С:Профессионал по Платформе. При работе с настройками пользователь может задать поле группировки
  1. В отдельном окне "Группировка"
  2. В отдельном окне "Редактирование полей группировки"
  3. На закладке "Группируемые поля"
  4. В отдельном окне "Группировка" и на закладке "Группируемые поля"
  5. В отдельном окне "Группировка", в отдельном окне "Редактирование полей группировки и на закладке "Группируемые поля"
Правильный ответ пятый. Окно Группировка:

Опции Редактирование полей группировки и Группируемые поля:

Вопрос 11.50 экзамена 1С:Профессионал по Платформе. Пользователь создал "с нуля" вариант настроек. Какие настройки ему пришлось редактировать? Выберите наиболее полный и правильный ответ
  1. Выбранные поля отчета, отбор отчета, отбор по складу, дополнительные настройки таблицы, сортировку номенклатуры, параметры, условное оформление номенклатуры
  2. Выбранные поля отчета, отбор отчета, дополнительные настройки таблицы, условное оформление номенклатуры, выбранные поля склада, параметры, сортировку отчета
  3. Выбранные поля отчета, отбор отчета, отбор по складу, дополнительные настройки таблицы, условное оформление номенклатуры, параметры, структуру отчета
  4. Выбранные поля отчета, отбор отчета, отбор по складу, дополнительные настройки отчета, параметры, условное оформление номенклатуры, структуру отчета
Правильный ответ третий, нужно внимательно посмотреть на скриншот.

Внимание! Перед вами ознакомительная версия урока, материалы которого могут быть неполными.

Войдите на сайт как ученик

Войдите как ученик, чтобы получить доступ к материалам школы

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

  • Написать отчёт, который выводит клиентов и их любимые продукты. У каждого клиента есть любимый цвет, а у каждого продукта свой цвет - вот на основании этих цветов и нужно определять "любимость" продукта. К примеру, если у Андрея любимый цвет красный, то одним из его любимых продуктов будут помидоры (они красного цвета).
  • Применить в отчёте два набора данных. Первый набор - это данные из таблицы справочника "Клиенты". Второй - данные из таблицы справочника "Еда".
  • Осуществить связь этих двух наборов , чтобы в отчёте остались только любимые продукты для каждого из клиентов.

Создаем новый отчет

Открываем базу "Гастроном" в конфигураторе и через главное меню создаём новый отчет:

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

В форме нового отчёта указываем имя "Урок6" и нажимаем кнопку "Открыть схему компоновки данных":

Оставляем имя схемы по умолчанию:

Добавляем первый набор данных

В открывшейся схеме переходим на закладку "Наборы данных" и через зелёный плюсик выбираем "Добавить набор данных - запрос":

Вызываем конструктор запроса:

Указываем таблицу "Клиенты" и поля, которые требуется получить из запроса:

Добавляем второй набор данных

Добавляем второй набор данных:

Выделяем его (НаборДанных2) и снова вызываем конструктор запроса:

Указываем таблицу справочника "Еда" и поля, которые требуется получить из запроса:

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

Обратите внимание, что у нас сейчас в отчёте присутствуют два набора данных: НаборДанных1 и НаборДанных2. У каждого свой текст запроса и свои данные.

Делаем имена более наглядными

Для наглядности, давайте переименуем НаборДанных1 в Клиенты, а НаборДанных2 в Еда.

Сделайте это двойным щелчком по каждому из наборов:

Данные каждого из наборов мы сможем использовать в нашем отчёте. К этим данным мы будем обращаться через поля.

В данный момент у набора "Клиенты" следующие поля: "Наименование" и "ЛюбимыйЦвет", а у набора "Еда": "Наименование" и "Цвет".

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

Выделяем набор "Клиенты" и меняем имена полей так:

Затем выделяем набор "Еда" и меняем имена полей так:

Вызываем конструктор настроек

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

Тип отчета - "Список...":

Выбираем поля для отчета из обоих наборов:

Видите почему так важно было изменить имена полей? На этапе настроек компоновки данных мы не видим из каких наборов эти поля. Видим только их имена.

Проверяем отчёт

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

Ага. Хорошо, но не совсем. Произошло так называемое перекрёстное соединение двух наборов (вам это должно быть хорошо знакомо по соединениям в запросах, которые мы изучали в прошлых модулях). Каждой записи из таблицы "Клиенты" сопоставлена запись из таблицы "Еда".

Но нам нужно из всех этих записей оставить только те у которых поле "ЛюбимыйЦветКлиента" равно полю "ЦветЕды":

Осуществляем связь двух наборов данных

Для этого осуществим связь двух наборов данных (Клиенты и Еда) по полям ЛюбимыйЦветКлиента и ЦветЕды.

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

Настраиваем параметры как на рисунке ниже:

Сделаю пояснения.

Источник и приёмник связи. Ну тут всё понятно. Указываем первый набор (Клиенты) и второй набор (Еда) данных. Хочу обратить особое внимание, что связь будет осуществляться по принципу внешнего левого соединения (мы его проходили в теме запросов в прошлых модулях). Исходя из этого и нужно выбирать какой набор будет источником, а какой приёмником.

Выражение источник. Указываем здесь выражение или просто поле из набора данных источника (мы здесь указали поле ЛюбимыйЦветКлиента из набора Клиенты).

Выражение приемник. Указываем здесь выражение или просто поле из набора данных приёмника (мы здесь указали поле ЦветЕды из набора Еда).

Таким образом данная связь оставит из прошлого списка только те строки, у которых поле ЛюбимыйЦветКлиента равно полю ЦветЕды.

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

Отлично!

Сделаю пояснение про поле "Условие связи ", об которое так часто бьют свои копья начинающие программисты.

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

В этом случае для всех строк из источника связи перед осуществлением связи будет проверяться это выражение (условие связи). И если это выражение равно ИСТИНА, то будет предприниматься попытка установить связи этой строки со строками из приемника связи. Если же выражение равно ЛОЖЬ, то таких попыток предприниматься не будет.