Как в 1С:ЗУП 3.1 настроить разовое начисление с базой за текущий месяц?

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

При настройке начислений в программе 1С:Зарплата и управление персоналом 3.1 пользователи часто сталкиваются с системным ограничением: если начисление выполняется по отдельному документу (например, через документ Разовое начисление или Премия), программа блокирует возможность выбора текущего месяца в качестве периода расчета базы. На вкладке «Расчет базы» система настойчиво предлагает выбрать только предыдущие периоды (предыдущий месяц, предыдущий квартал и т.д.).

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

Выясняем причину: почему 1С блокирует выбор текущего месяца?

Прежде чем переходить к настройкам, важно понять логику программы. Блокировка выбора текущего месяца для межрасчетных документов — это не ошибка программы, а сознательное архитектурное решение разработчиков 1С.

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

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

Способ 1. Временный обход блокировки через групповое изменение реквизитов

Этот способ является самым популярным среди опытных расчетчиков и не требует программирования. Ограничение на выбор текущего периода наложено только на уровне формы (в интерфейсе карточки начисления). В самой структуре базы данных такого запрета нет. Мы можем временно «обмануть» программу, изменить настройки, а затем вернуть их в исходное состояние.

Разберем этот процесс по шагам:

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

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

Способ 2. Обход через замену расчетной формулы

Если база вашего начисления состоит из одного-двух простых показателей (например, только из оклада сотрудника пропорционально отработанному времени), то можно полностью отказаться от использования встроенного механизма расчетной базы и показателя РасчетнаяБаза.

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

Проанализируем пример стандартной формулы:

Результат = РасчетнаяБаза * ДоляПремии / 100

Мы можем заменить показатель РасчетнаяБаза на математический аналог расчета оклада за текущий месяц. Формула в карточке начисления примет следующий вид:

Результат = (Оклад * ВремяВДнях / НормаДней) * ДоляПремии / 100

Если начисление рассчитывается по часовой ставке, используйте аналогичные показатели времени в часах:

Результат = (ТарифнаяСтавкаЧасовая * ВремяВЧасах) * ДоляПремии / 100

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

Способ 3. Использование планового начисления вместо разового

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

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

Разберем, как реализовать этот сценарий:

  1. В настройках начисления укажите, что оно выполняется Ежемесячно (или В течение заданного периода (по отдельному документу-приказу)).
  2. На вкладке «Расчет базы» спокойно выберите «Текущий месяц».
  3. Назначайте это начисление сотрудникам с помощью документов Назначение планового начисления, Изменение плановых начислений или специального документа Приказ на доплату до среднего заработка на требуемый период (например, строго на текущий месяц — с 1 по 30 число).
  4. Расчет произойдет автоматически в конце месяца в общем документе Начисление зарплаты и взносов, когда все базовые показатели (оклад, сдельная оплата, ночные и т.д.) уже будут точно рассчитаны и известны системе.

Способ 4. Применение расширения конфигурации

Если в вашей организации регулярно создаются новые начисления с базой за текущий месяц, выполнять каждый раз процедуру группового изменения реквизитов (Способ 1) может быть неудобно. В этом случае программист 1С может разработать или подключить готовое небольшое расширение конфигурации (файл с расширением .cfe).

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

Важнейший нюанс для расчетчика: последовательность проведения документов

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

Помните: программа не может рассчитать процент от «воздуха». Если вы создадите документ Разовое начисление 15-го числа, когда по сотрудникам еще нет введенных табелей, сдельных нарядов или данных о времени, расчетная база будет равна нулю.

Чтобы расчет прошел корректно, соблюдайте следующую последовательность:

  1. Внесите в систему все первичные документы, влияющие на базу текущего месяца (документы Данные для расчета зарплаты, табели учета рабочего времени, отклонения, больничные листы и т.д.).
  2. Рассчитайте и проведите документ Разовое начисление (или Премия) в конце месяца, когда база уже сформирована.
  3. При необходимости выплатите это начисление в межрасчетный период отдельной ведомостью (указав в ведомости способ выплаты «Разовое начисление» или «Премия»), не дожидаясь общей выплаты зарплаты.

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

← На главную