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

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

Рассмотрим частую задачу, с которой сталкиваются расчетчики и кадровики: необходимость автоматической отправки расчетных листков сотрудников руководителям их подразделений. В типовой конфигурации 1С:ЗУП 3.1 при попытке настроить такую массовую рассылку система выдает предупреждение: "Отчет 'расчетный листок' запрещено рассылать без отбора по физическому лицу".

Разберем причину такого поведения. Данное ограничение внедрено разработчиками 1С намеренно в целях соблюдения закона о защите персональных данных (152-ФЗ). Программа по умолчанию блокирует массовую отправку данных о зарплате подчиненных одному лицу, предполагая, что листок должен направляться строго самому сотруднику. Выясним, как обойти эту проверку и настроить рассылку так, как требует бизнес.

Прежде чем приступать к настройкам, проверим базовые условия:

  1. В системе должна быть настроена учетная запись электронной почты (раздел Администрирование – Органайзер – Почта – Настройка системной учетной записи).
  2. У руководителей-получателей должен быть корректно заполнен email в карточках физических лиц (раздел Кадры – Сотрудники – Личные данные – Email).

Способ 1: Снятие проверки через расширение конфигурации (Рекомендуемый)

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

Разберем по шагам действия программиста в конфигураторе:

  1. Открываем конфигуратор и создаем новое расширение.
  2. Находим общий модуль ЗарплатаКадрыОтчеты.
  3. Находим процедуру ПроверитьНастройкиРассылки (в старых версиях ЗУП 3.1.8 она могла называться КонтрольНастроекОтчетовПриЗаписиРассылкиОтчетов).
  4. Добавляем эту процедуру в расширение с типом вызова &ИзменениеИКонтроль.
  5. Удаляем (комментируем директивами) блок проверки персонализации.

Проанализируем пример модифицированного кода:


&ИзменениеИКонтроль("ПроверитьНастройкиРассылки")
Процедура Расш1_ПроверитьНастройкиРассылки(Отказ, Рассылка, НастройкиКД)
    
    // ... часть типового кода ...

    #Удаление
    Если ТребоватьПерсонализацииОтчетаПриРассылке(ИнформацияОВарианте.ИмяОтчета, КлючВарианта(НастройкиКД))
        И Не ОтчетПерсонализирован(НастройкиКД) Тогда
        Результат.ТекстОшибки = СтрШаблон(
            НСтр("ru = 'Отчет ""%1"" запрещено рассылать без отбора по физическому лицу'"),
            Строка(ИнформацияОВарианте.Вариант));
    КонецЕсли;
    #КонецУдаления
    
    // ... продолжение типового кода ...
    
КонецПроцедуры

После подключения расширения переходим в режим Предприятия. Создаем рассылку отчетов: в наименовании указываем нужное подразделение, выбираем отправлять "Отчеты указанным пользователям", получатели — "Физические лица". В настройках самого отчета (в нижнем окне рассылки) ставим отбор: Подразделение равно нужному подразделению.

Способ 2: Настройка типовыми средствами через дополнительные реквизиты

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

Разберем по шагам создание такой привязки:

  1. Переходим в раздел Администрирование – Общие настройки и устанавливаем флаг Дополнительные реквизиты и сведения.
  2. Находим справочник Подразделения, добавляем новый дополнительный реквизит. Назовем его Руководитель с типом данных Сотрудник или Физическое лицо.
  3. Заходим в карточки подразделений и вручную заполняем созданное поле нужным руководителем.
  4. Открываем отчет Расчетные листки (раздел Зарплата – Отчеты по зарплате).
  5. По кнопке Настройки переключаемся на вид Расширенный.
  6. На вкладке Отборы добавляем новый отбор по нашему доп. реквизиту. Для точности лучше использовать путь: Подразделение на конец периода.Руководитель.Физическое лицо (это поможет избежать путаницы с перемещениями сотрудников в течение месяца).
  7. Обязательный шаг: сохраняем данный вариант отчета под новым именем (например, "Расчетные листки для руководителей"). Если этого не сделать, отбор не появится в настройках рассылки!

Теперь создаем рассылку из нового сохраненного варианта отчета:

  1. Выбираем тип рассылки: "Свой отчет для каждого получателя".
  2. Получатели — "Физические лица".
  3. В нижней таблице настроек отчета устанавливаем курсор на строку нашего нового отбора (Подразделение на конец периода.Руководитель.Физическое лицо) и нажимаем кнопку Указать получателя рассылки. Система должна подставить значение Получатель.
  4. Подбираем в список получателей нужных руководителей. При запуске рассылки программа будет формировать отчет, автоматически подставляя физлицо руководителя в отбор подразделения.

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

Дополнительные рекомендации и альтернативы

Автоматизируем процесс: любую успешно настроенную рассылку можно выполнять без участия пользователя. Для этого в окне рассылки перейдите на вкладку Расписание, установите флажок Выполнить по расписанию и задайте ежемесячный график (например, 10-го числа каждого месяца).

Проанализируем альтернативный, более безопасный подход. Учитывая строгость законов о защите персональных данных, пересылка чужих расчетных листков по открытым каналам электронной почты несет юридические риски. Вместо рассылки можно настроить руководителям ограниченный доступ в базу 1С:ЗУП (механизм RLS). В этом случае руководитель получает права на чтение данных только по своему подразделению, самостоятельно заходит в программу и формирует расчетные листки. Это полностью исключает необходимость сложных настроек электронной почты и обхода блокировок 1С.

← На главную