В процессе работы с программным продуктом 1С:Управление производственным предприятием 1.3 (УПП) специалисты часто сталкиваются с ситуацией, когда выплата аванса за февраль производится 1-го марта. При формировании расчетного листка за февраль пользователи с удивлением обнаруживают, что эта сумма не попадает в отчет. Проанализируем, почему типовая конфигурация ведет себя именно так, и разберем варианты решения данной задачи.
Для начала выясним причину такого поведения системы. В конфигурации УПП 1.3 (архитектура которой во многом схожа с ЗУП 2.5) отчет «Расчетные листки» строится на данных регистра накопления ВзаиморасчетыССотрудникамиОрганизаций. В этом регистре есть два ключевых измерения времени:
ЗарплатаКВыплатеОрганизаций.Типовой запрос расчетного листка в старых версиях системы жестко ориентирован на период регистрации. Если вы формируете отчет за февраль (период с 01.02 по 28.02), а выплата аванса проведена документом от 01.03, запрос просто отсекает эту запись, так как она находится за пределами временной границы отчета. Система считает, что в феврале этой выплаты еще не существовало, и она должна быть отражена в мартовском листке как «выплата за прошлый период».
Рассмотрим самый простой и распространенный способ решения, который не требует вмешательства в программный код. Если бухгалтерии принципиально видеть аванс именно в февральском листке (чтобы итоговое сальдо «К выплате» было корректным), мы можем прибегнуть к корректировке даты документа.
Пошаговый алгоритм:
ЗарплатаКВыплатеОрганизаций, которым оформлен аванс.Этот метод позволяет «затянуть» выплату в февральский период. Однако стоит помнить, что с точки зрения бухгалтерского учета (счета 70), фактическая дата выплаты может быть критична для формирования отчетности и налогового учета (НДФЛ), поэтому данный метод требует согласования с главным бухгалтером.
Если ваша организация не готова менять даты документов, проанализируем ситуацию с точки зрения программиста. Расчетный листок в УПП 1.3 обычно реализован на базе Системы компоновки данных (СКД). Нам необходимо найти фрагмент запроса, отвечающий за выборку данных из регистра ВзаиморасчетыССотрудникамиОрганизаций.
В типовом решении условие связи или фильтрации по умолчанию выглядит примерно так:
ГДЕ
Взаиморасчеты.Период МЕЖДУ &НачалоПериода И &КонецПериода
Чтобы отчет видел мартовский аванс в феврале, нам нужно изменить логику фильтрации, переориентировав ее на ПериодВзаиморасчетов. Разберем пример изменения условия:
ГДЕ
(Взаиморасчеты.Период МЕЖДУ &НачалоПериода И &КонецПериода
ИЛИ Взаиморасчеты.ПериодВзаиморасчетов = &НачалоПериода)
Важный нюанс: Простое изменение фильтра может привести к «удвоению» сумм в следующем месяце или некорректному входящему сальдо. При изменении запроса необходимо убедиться, что алгоритм расчета Начального сальдо и Конечного сальдо также пересмотрен. В УПП 1.3 это крайне трудоемкая задача, так как запрос расчетного листка состоит из десятка временных таблиц, где последовательно собираются начисления, удержания и выплаты.
Посмотрим на проблему с точки зрения методологии 1С. Система спроектирована так, чтобы расчетный листок отражал реальное состояние расчетов на конец календарного месяца. Если 28 февраля деньги еще не были выданы сотруднику, то предприятие формально остается ему должно всю сумму начисленной зарплаты.
Выплата 1 марта — это событие следующего месяца. В мартовском расчетном листке оно отразится следующим образом:
Проанализируем доводы опытных специалистов: попытка «подтянуть» выплаты будущего месяца в прошлый листок часто порождает путаницу у сотрудников. Если человек видит в листке за февраль выплату от 1 марта, он может решить, что ему уже выплатили часть мартовской зарплаты. Проще один раз объяснить персоналу логику «календарного» формирования листка, чем бесконечно переписывать сложные запросы в «древней» конфигурации.
Если вы все же решили внести изменения, рекомендуем придерживаться следующих правил:
Таким образом, мы выяснили, что отсутствие аванса в листке — это не ошибка программы, а следствие жесткой привязки отчета к дате документа. Выбор между «технической правкой дат», «переписыванием запроса» или «разъяснительной работой с бухгалтерией» остается за вами, но самым стабильным решением остается следование типовой методологии 1С.