При работе с конфигурацией 1С:Зарплата и управление персоналом 2.5 пользователи часто сталкиваются с 필요стью детализировать типовой отчет «Свод зарплаты организации». Например, вывести дату конкретного документа выплаты, отсортировать данные по этой дате или отобразить текстовый комментарий из ведомости.
Попытка раскрыть реквизиты документа выплаты прямо в режиме пользовательской настройки отчета не дает результата. Рассмотрим причины такого поведения системы и разберем пошаговый алгоритм решения этой задачи.
Проанализируем, почему платформа не позволяет развернуть поле Документ или Ведомость в режиме пользователя. В регистре накопления ВзаиморасчетыСРаботникамиОрганизаций измерение Ведомость имеет составной тип данных. Оно может ссылаться на разные типы документов выплат (например, Документ.ЗарплатаКВыплатеОрганизаций, Документ.ПлатежноеПоручениеИсходящее и др.).
При обращении через точку к реквизитам поля составного типа в Схеме компоновки данных (СКД) без указания конкретного типа возникает ошибка, либо в интерфейсе пользователя блокируется возможность выбирать подчиненные поля (такие как Дата или Комментарий). Чтобы платформа «поняла», к какому именно документу и его реквизитам идет обращение, требуется явное приведение типа в запросе.
Разберем основной и наиболее корректный способ решения задачи. Для этого откроем отчет как внешний в Конфигураторе и отредактируем запрос в Схеме компоновки данных.
.erf).ВзаиморасчетыСРаботникамиОрганизаций.ВЫРАЗИТЬ для получения нужных реквизитов документа:
ВЫРАЗИТЬ(ВзаиморасчетыСРаботникамиОрганизаций.Ведомость КАК Документ.ЗарплатаКВыплатеОрганизаций).Дата КАК ДатаВедомости,
ВЫРАЗИТЬ(ВзаиморасчетыСРаботникамиОрганизаций.Ведомость КАК Документ.ЗарплатаКВыплатеОрганизаций).Комментарий КАК КомментарийВедомости
После добавления этих выражений в текст запроса поля ДатаВедомости и КомментарийВедомости станут полноправными полями набора данных.
Теперь настроим корректное отображение и сортировку полученных данных на вкладках СКД:
ДатаВедомости откроем настройки оформления и укажем формат даты, например ДФ=dd.MM.yyyy, чтобы скрыть ненужное время документа.ДатаВедомости для упорядочивания выплат по хронологии.Если нет возможности редактировать СКД внешнего отчета, рассмотрим альтернативные варианты получения нужных данных:
Документ, имя объекта Зарплата к выплате организаций, таблица Основные данные. В таком отчете сразу доступны все реквизиты шапки документа (дата, комментарий, подразделение, способ выплаты) с возможностью гибкой группировки.Таким образом, явное приведение типов с помощью конструкции ВЫРАЗИТЬ в языке запросов 1С позволяет полностью обойти ограничение составного типа данных и вывести любые реквизиты ведомости в отчет.