В процессе ведения учета в программе «1С:Зарплата и управление персоналом» (1С:ЗУП) многие производственные и строительные предприятия сталкиваются со следующей проблемой. В рамках одного и того же производственного подразделения могут трудиться как рабочие (затраты по которым должны отражаться, например, на счете 20 «Основное производство»), так и инженерно-технические работники (затраты по которым относятся на счет 25 «Общепроизводственные расходы» или 26 «Общехозяйственные расходы»).
По умолчанию для подразделения задается единая проводка. Чтобы выделить ИТР, бухгалтерам приходится вручную указывать индивидуальные способы отражения в карточке сотрудника или в кадровых документах. Однако при высокой интенсивности кадровых перемещений (переводы, ротация кадров) специалисты кадровой службы или расчетчики часто забывают своевременно менять эти настройки. Это приводит к серьезным искажениям в бухгалтерском и налоговом учете затрат на оплату труда.
В этой статье мы подробно разберем, как решить эту проблему, рассмотрим эволюцию механизмов программы, проанализируем варианты доработки системы и найдем оптимальный способ автоматизации этого процесса.
Если ранее разработчики фирмы «1С» не предусматривали привязку бухгалтерского учета напрямую к позициям штатного расписания в обычной версии ЗУП (хотя такой механизм частично присутствовал в «1С:Зарплата и кадры государственного учреждения»), то в актуальных релизах программы эта проблема была полностью устранена. Теперь мы имеем полноценный типовой инструмент.
Рассмотрим по шагам, как работает этот механизм:
Утверждение штатного расписания или Изменение штатного расписания. Перейдите на вкладку «Дополнительно» для конкретной позиции ИТР и укажите в поле «Счет, субконто» требуемый способ отражения затрат. Если история изменений не ведется, данное поле заполняется непосредственно в карточке позиции штатного расписания.Прием на работу или Кадровый перевод программа автоматически обратится к выбранной позиции штатного расписания, считает привязанный способ отражения затрат и подставит его в документ на вкладку «Дополнительно».Бухучет зарплаты сотрудников), что исключает ручную «забывчивость» при редактировании карточки сотрудника напрямую.Проанализируем действующую иерархию приоритетов способов отражения зарплаты в бухучете 1С:ЗУП 3.1. Программа определяет проводку сверху вниз:
Бухучет зарплаты сотрудников (сюда данные автоматически транслируются из штатного расписания при назначении позиции).Если по каким-то причинам вы не можете обновить конфигурацию до актуального релиза или вам требуется более гибкая кастомизация, можно прибегнуть к программному изменению логики распределения затрат. Рассмотрим, как это реализовать.
Идея заключается в том, чтобы добавить в систему новый Регистр Сведений (например, БухучетПозицийШтатногоРасписания) или добавить реквизит СпособОтражения в справочник ШтатноеРасписание. После этого необходимо скорректировать общий модуль, отвечающий за сбор данных для проведения расчетов.
Посмотрим на пример изменения запроса в механизме распределения затрат. Нам нужно встроить наш новый источник данных в общую иерархию выбора проводок. В коде запроса это будет выглядеть следующим образом:
| ВЫБОР
| КОГДА ЕСТЬNULL(БухучетСотрудников.СпособОтраженияЗарплатыВБухучете, ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)) <> ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)
| ТОГДА БухучетСотрудников.СпособОтраженияЗарплатыВБухучете
|
| КОГДА ЕСТЬNULL(БухучетШтатногоРасписания.СпособОтраженияЗарплатыВБухучете, ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)) <> ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)
| ТОГДА БухучетШтатногоРасписания.СпособОтраженияЗарплатыВБухучете
|
| КОГДА ИспользованиеТерриторий.Использование
| И ЕСТЬNULL(БухучетТерриторий.СпособОтраженияЗарплатыВБухучете, ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)) <> ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)
| ТОГДА БухучетТерриторий.СпособОтраженияЗарплатыВБухучете
|
| КОГДА ЕСТЬNULL(БухучетПодразделений.СпособОтраженияЗарплатыВБухучете, ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)) <> ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка)
| ТОГДА БухучетПодразделений.СпособОтраженияЗарплатыВБухучете
|
| ИНАЧЕ ЕСТЬNULL(БухучетОрганизаций.СпособОтраженияЗарплатыВБухучете, ЗНАЧЕНИЕ(Справочник.СпособыОтраженияЗарплатыВБухучете.ПустаяСсылка))
| КОНЕЦ КАК СпособОтраженияЗарплатыВБухучете
Внедряя этот блок, мы ставим бухучет штатного расписания в приоритет сразу после индивидуальных настроек сотрудника. Это позволяет гибко управлять затратами: если у сотрудника не задан персональный учет, программа автоматически возьмет способ отражения из его позиции штатного расписания, игнорируя общее подразделение.
Еще один профессиональный программистский подход — не вмешиваться в сложные запросы проведения и распределения зарплаты, а автоматизировать создание стандартных документов. Для этого можно использовать механизм подписок на события.
Выясним логику этого процесса: при проведении документа Кадровый перевод или Прием на работу система должна автоматически создавать или обновлять документ Бухучет зарплаты сотрудников (или Бухучет начислений сотрудников в старых версиях) для переводимого ИТР.
Для этого в конфигурации или расширении создается подписка на событие ПриЗаписи или ОбработкаПроведения для кадровых документов. В обработчике события программно проверяется категория должности сотрудника. Если должность относится к категории ИТР (это свойство можно хранить в дополнительном реквизите должности), то программным путем создается новый документ бухучета с нужной даты.
Этот способ хорош тем, что он абсолютно прозрачен для типовой конфигурации, не ломает логику обновления и оставляет все стандартные механизмы распределения нетронутыми.
Рассмотрим также организационный вариант решения проблемы, который часто применяется на предприятиях с жестким регламентированным учетом. Это разделение структуры организации.
Если ИТР и рабочие физически числятся в одном цехе или отделе, в структуре программы их можно разделить на два разных элемента справочника Подразделения:
При таком подходе вам достаточно один раз настроить способы отражения для каждого из этих подразделений. При кадровом перемещении сотрудника из рабочей зоны в зону ИТР кадровик в обязательном порядке выберет другое подразделение. Ошибка исключена, так как бухучет подтянется автоматически из настроек нового подразделения.
Важное примечание: Этот способ имеет один существенный минус. Если на предприятии утверждена строгая официальная оргструктура, разделение реального цеха на условные подподразделения в программе может войти в разрез со штатным расписанием и вызвать вопросы у кадровой службы. Однако, если у вас ведется раздельный управленческий и регламентированный учет, этот метод является самым простым и не требует привлечения программистов.
Выбор оптимального пути зависит от версии вашей программы и требований к ведению учета: