Как создать отчёт структуры затрат с использованием системы компоновки данных?
Создание отчёта структуры затрат с использованием Системы компоновки данных (СКД) в 1С позволяет гибко настраивать представление информации, использовать группировки, вычисляемые поля, отборы и условия оформления без написания большого количества кода. Такой отчёт обычно показывает распределение затрат по статьям, подразделениям, номенклатуре, проектам и другим аналитикам. Ниже приведён пошаговый процесс создания подобного отчёта.
1. Создание отчета в конфигураторе
-
Откройте конфигуратор, выберите вашу конфигурацию.
-
В дереве объектов откройте "Отчеты", нажмите "Добавить".
-
Назовите новый объект, например, ОтчетСтруктураЗатрат.
-
Перейдите во вкладку "Система компоновки данных" и включите галочку "Использовать СКД".
2. Создание набора данных
-
Откройте вкладку "Наборы данных" → "Добавить" → "Запрос".
-
Введите текст запроса, который извлекает информацию о затратах. Например:
ВЫБРАТЬ
Затраты.СтатьяЗатрат КАК СтатьяЗатрат,
Затраты.Подразделение КАК Подразделение,
Затраты.Номенклатура КАК Номенклатура,
Затраты.Сумма КАК Сумма
ИЗ
РегистрНакопления.Затраты.Остатки(&ДатаКонца, )
КАК Затраты
ГДЕ
Затраты.СтатьяЗатрат НЕ NULL
-
Установите параметры, например ДатаКонца, если требуется выбор периода.
-
Убедитесь, что СКД распознала поля как ресурсы (например, Сумма) и измерения (СтатьяЗатрат, Подразделение, Номенклатура).
3. Настройка схемы компоновки данных
-
Перейдите на вкладку "Схема компоновки данных" → Открыть Схему.
-
Во вкладке "Данные" убедитесь, что выбран ваш набор данных.
-
Перейдите во вкладку "Поля", добавьте необходимые поля в вывод.
-
Измерения: СтатьяЗатрат, Подразделение, Номенклатура
-
Ресурс: Сумма
-
-
Установите группировки:
-
Сначала по СтатьяЗатрат
-
Затем по Подразделение (если нужно)
-
-
В разделе "Ресурсы" укажите, что Сумма должна агрегироваться через Сумма()
4. Настройка параметров пользователя
-
В Параметры пользователя добавьте поле ДатаКонца типа Дата.
-
Назначьте это поле параметром в запросе.
-
Установите значение по умолчанию или разрешите пользователю вводить его.
5. Настройка отборов
-
В разделе "Отборы" можно добавить фильтры, например:
-
По Подразделению
-
По Статье затрат
-
По Номенклатуре
-
-
Эти отборы можно вывести на форму и сделать настраиваемыми пользователем.
6. Создание формы отчета
-
Перейдите во вкладку "Формы" → Добавить форму.
-
Вставьте элемент управления ПолеКомпоновкиДанных (СКД).
-
Назначьте созданную схему КД элементу.
-
Добавьте поле ввода для ДатаКонца и кнопку Сформировать.
Пример обработчика кнопки:
Процедура СформироватьОтчет(Команда)
Компоновщик = Новый КомпоновщикНастроек();
Компоновщик.Настройки = ЭлементыФормы.ПолеКомпоновкиДанных.Настройки;
Компоновщик.ПользовательскиеНастройки.УстановитьЗначениеПараметра("ДатаКонца", ПолеДатаКонца);
Результат = Компоновщик.Сформировать();
ЭлементыФормы.ПолеКомпоновкиДанных.УстановитьДанные(Результат);
КонецПроцедуры
7. Запуск и проверка
-
Перейдите в режим предприятия.
-
Откройте отчёт.
-
Установите дату, нажмите "Сформировать".
-
Данные по структуре затрат должны сгруппироваться и отобразиться в иерархическом виде.
8. Дополнительные возможности
-
Настройка иерархического отображения статей затрат.
-
Вычисляемые поля, например, процент от общего итога.
-
Условное оформление (например, подсветка больших сумм).
-
Вывод отчёта в Excel или PDF.
-
Сохранение настроек отчёта пользователем.
В зависимости от того, где хранятся данные о затратах, может использоваться регистр накопления Затраты, Бухгалтерия, Документы, Плановые начисления, и другие источники. СКД позволяет использовать даже несколько источников с объединением в едином отчёте.