Как автоматически разделять затраты на бухучет для ИТР и рабочих в 1С:ЗУП при частых перемещениях?

Программист 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом Бухгалтерский учет
← На главную

В процессе ведения учета в программе «1С:Зарплата и управление персоналом» (1С:ЗУП) многие производственные и строительные предприятия сталкиваются со следующей проблемой. В рамках одного и того же производственного подразделения могут трудиться как рабочие (затраты по которым должны отражаться, например, на счете 20 «Основное производство»), так и инженерно-технические работники (затраты по которым относятся на счет 25 «Общепроизводственные расходы» или 26 «Общехозяйственные расходы»).

По умолчанию для подразделения задается единая проводка. Чтобы выделить ИТР, бухгалтерам приходится вручную указывать индивидуальные способы отражения в карточке сотрудника или в кадровых документах. Однако при высокой интенсивности кадровых перемещений (переводы, ротация кадров) специалисты кадровой службы или расчетчики часто забывают своевременно менять эти настройки. Это приводит к серьезным искажениям в бухгалтерском и налоговом учете затрат на оплату труда.

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

Вариант 1. Использование типового функционала современной 1С:ЗУП 3.1 (Начиная с релиза 3.1.25.36)

Если ранее разработчики фирмы «1С» не предусматривали привязку бухгалтерского учета напрямую к позициям штатного расписания в обычной версии ЗУП (хотя такой механизм частично присутствовал в «1С:Зарплата и кадры государственного учреждения»), то в актуальных релизах программы эта проблема была полностью устранена. Теперь мы имеем полноценный типовой инструмент.

Рассмотрим по шагам, как работает этот механизм:

  1. Настройка в штатном расписании: Если в вашей базе ведется история изменений штатного расписания, откройте документ Утверждение штатного расписания или Изменение штатного расписания. Перейдите на вкладку «Дополнительно» для конкретной позиции ИТР и укажите в поле «Счет, субконто» требуемый способ отражения затрат. Если история изменений не ведется, данное поле заполняется непосредственно в карточке позиции штатного расписания.
  2. Автоматическая подстановка при перемещениях: Теперь при создании документов Прием на работу или Кадровый перевод программа автоматически обратится к выбранной позиции штатного расписания, считает привязанный способ отражения затрат и подставит его в документ на вкладку «Дополнительно».
  3. Контроль за изменениями: В актуальных версиях индивидуальный бухучет сотрудника регистрируется исключительно документами (кадровыми или специализированным документом Бухучет зарплаты сотрудников), что исключает ручную «забывчивость» при редактировании карточки сотрудника напрямую.

Проанализируем действующую иерархию приоритетов способов отражения зарплаты в бухучете 1С:ЗУП 3.1. Программа определяет проводку сверху вниз:

Вариант 2. Программная доработка (Для устаревших версий или нестандартных условий)

Если по каким-то причинам вы не можете обновить конфигурацию до актуального релиза или вам требуется более гибкая кастомизация, можно прибегнуть к программному изменению логики распределения затрат. Рассмотрим, как это реализовать.

Идея заключается в том, чтобы добавить в систему новый Регистр Сведений (например, БухучетПозицийШтатногоРасписания) или добавить реквизит СпособОтражения в справочник ШтатноеРасписание. После этого необходимо скорректировать общий модуль, отвечающий за сбор данных для проведения расчетов.

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


|    ВЫБОР
|        КОГДА ЕСТЬNULL(БухучетСотрудников.СпособОтраженияЗарплатыВБухучете, ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)) <> ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)
|            ТОГДА БухучетСотрудников.СпособОтраженияЗарплатыВБухучете
|
|        КОГДА ЕСТЬNULL(БухучетШтатногоРасписания.СпособОтраженияЗарплатыВБухучете, ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)) <> ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)
|            ТОГДА БухучетШтатногоРасписания.СпособОтраженияЗарплатыВБухучете
|
|        КОГДА ИспользованиеТерриторий.Использование
|                И ЕСТЬNULL(БухучетТерриторий.СпособОтраженияЗарплатыВБухучете, ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)) <> ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)
|            ТОГДА БухучетТерриторий.СпособОтраженияЗарплатыВБухучете
|
|        КОГДА ЕСТЬNULL(БухучетПодразделений.СпособОтраженияЗарплатыВБухучете, ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)) <> ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)
|            ТОГДА БухучетПодразделений.СпособОтраженияЗарплатыВБухучете
|
|        ИНАЧЕ ЕСТЬNULL(БухучетОрганизаций.СпособОтраженияЗарплатыВБухучете, ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка))
|    КОНЕЦ КАК СпособОтраженияЗарплатыВБухучете

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

Вариант 3. Автоматизация создания документов «Бухучет зарплаты сотрудников»

Еще один профессиональный программистский подход — не вмешиваться в сложные запросы проведения и распределения зарплаты, а автоматизировать создание стандартных документов. Для этого можно использовать механизм подписок на события.

Выясним логику этого процесса: при проведении документа Кадровый перевод или Прием на работу система должна автоматически создавать или обновлять документ Бухучет зарплаты сотрудников (или Бухучет начислений сотрудников в старых версиях) для переводимого ИТР.

Для этого в конфигурации или расширении создается подписка на событие ПриЗаписи или ОбработкаПроведения для кадровых документов. В обработчике события программно проверяется категория должности сотрудника. Если должность относится к категории ИТР (это свойство можно хранить в дополнительном реквизите должности), то программным путем создается новый документ бухучета с нужной даты.

Этот способ хорош тем, что он абсолютно прозрачен для типовой конфигурации, не ломает логику обновления и оставляет все стандартные механизмы распределения нетронутыми.

Вариант 4. Структурно-административный метод (Без программирования)

Рассмотрим также организационный вариант решения проблемы, который часто применяется на предприятиях с жестким регламентированным учетом. Это разделение структуры организации.

Если ИТР и рабочие физически числятся в одном цехе или отделе, в структуре программы их можно разделить на два разных элемента справочника Подразделения:

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

Важное примечание: Этот способ имеет один существенный минус. Если на предприятии утверждена строгая официальная оргструктура, разделение реального цеха на условные подподразделения в программе может войти в разрез со штатным расписанием и вызвать вопросы у кадровой службы. Однако, если у вас ведется раздельный управленческий и регламентированный учет, этот метод является самым простым и не требует привлечения программистов.

Резюме и рекомендации

Выбор оптимального пути зависит от версии вашей программы и требований к ведению учета:

← На главную