При формировании отчета «Полный свод начислений, удержаний и выплат» в программах 1С:Зарплата и управление персоналом и 1С:Зарплата и кадры государственного учреждения (редакция 3.1) часто возникает задача выделить расчеты с физическими лицами, работающими исключительно по договорам гражданско-правового характера (ГПХ). Однако при попытке установить стандартный отбор по полю Вид занятости пользователи сталкиваются с некорректным поведением отчета: в выборку продолжают попадать штатные сотрудники, сальдо рассчитывается с ошибками или исчезают нужные данные.
Разберем детально, почему так происходит, какие особенности платформы и СКД вызывают данное поведение и как правильно настроить отчет для получения достоверных данных.
Посмотрим на логику, которую часто пытаются применить пользователи. Поскольку у исполнителей по договорам ГПХ нет кадрового статуса (основное место работы или совместительство), реквизит Вид занятости у них не заполнен. Пользователи создают пользовательское поле со следующим выражением:
Выбор
Когда [Вид занятости] = Неопределено
Или [Вид занятости] Есть Null
Или [Вид занятости] = Значение(Перечисление.ВидыЗанятости.)
Тогда Истина
Иначе Ложь
Конец
Однако при установке общего отбора по такому пользовательскому полю отчет начинает выводить данные штатных сотрудников с пустыми строками оклада или полностью искажает структуру свода. При этом, если то же самое поле добавить в группировку строк, данные разделяются верно.
Выясним причину такого поведения системы:
LEFT JOIN с последующей фильтрацией по NULL на уровне общего условия ГДЕ нарушает выборку и приводит к непредсказуемым результатам. По этой проблеме фирмой 1С была официально зарегистрирована ошибка № 70163911.HAVING в SQL). Поэтому группировка отрабатывает корректно, а общий отбор отчета дает сбой.Рассмотрим самый быстрый способ настройки отчета без изменения конфигурации, если требуется быстро отсечь штатный персонал и проанализировать исключительно «чистых» договорников (у которых нет трудового договора с организацией).
Разберем настройку по шагам:
Сотрудник, а затем выберем поле Вид занятости на конец периода.В отличие от периодического реквизита Вид занятости, поле среза Вид занятости на конец периода формирует корректное условие соединения таблиц и оставляет в своде только сотрудников, у которых на конец расчетного месяца отсутствует действующий кадровый статус.
Проанализируем ситуацию, когда сотрудники совмещают основную трудовую деятельность и договоры подряда. Если мы отфильтруем свод по кадровым признакам, выплаты по ГПХ штатных работников будут полностью потеряны.
Чтобы выделить в своде исключительно начисления по договорам подряда и авторским договорам независимо от кадрового статуса человека, настроим отбор по объектам начислений:
Начисление и раскроем его свойства.Назначение начисления.Оплата договора подряда (при необходимости добавим авторские и лицензионные договоры).Такой фильтр не затрагивает регистры кадровой истории, корректно обрабатывает начисления по виду расчета и гарантирует, что в свод попадут только зарегистрированные акты и начисления по гражданско-правовым договорам.
Если требуется регулярно формировать расчетные документы и своды по пулу внештатных исполнителей, рассмотрим использование встроенного классификатора групп.
Сотрудники или через раздел настройки создадим группу с наименованием «Договорники ГПХ».Сотрудник, установим вид сравнения В группе и выберем созданную группу.Поскольку данный отбор накладывается непосредственно на ссылку справочника Сотрудники, СКД не обращается к периодическим кадровым срезам, что исключает ошибки формирования отчета и значительно ускоряет вывод данных.
Еще один надежный способ исключить конфликт СКД с периодическими регистрами — использование дополнительных реквизитов:
Сотрудники добавим дополнительный реквизит с типом Булево (например, «Только ГПХ»).Сотрудник.[Только ГПХ] Равно Да.Так как дополнительный реквизит хранится в шапочной части данных объекта, механизм компоновки отрабатывает без конфликтных соединений таблиц кадровых интервалов.
Если цель формирования свода — проверка расчетов и сумм вознаграждений по договорам ГПХ, проанализируем типовые альтернативы. В типовых конфигурациях 1С:ЗУП и 1С:ЗКГУ в разделе выплат и зарплатных отчетов предусмотрены специализированные отчеты (например, «Начисления по договорам ГПХ» или «Договоры ГПХ»).
Специализированные отчеты изначально построены на регистрах расчетов и документах начисления по договорам, исключая кадровые срезы, что позволяет получать точные данные без дополнительных корректировок структуры отчета.