АГТ_ПомощникРасчетчика (Внешняя обработка)
Помощник расчётчика ЗУП — ручной запуск расчётов в один клик
Внешняя обработка для 1С:ЗУП 3.1
|
Один экран, список организаций, галки и кнопки. Отметили нужное — нажали — расчёт выполнен штатными средствами ЗУП. Без ручного прохода по десяткам документов в каждой организации. |
Для кого
Бухгалтеры-расчётчики и расчётные центры, ведущие от 2 до 5 организаций в одной базе ЗУП 3.1.
Какую проблему решает
В базе с несколькими организациями расчётчик каждый месяц повторяет одни и те же действия по кругу: завести и провести отсутствия, начислить аванс, рассчитать отпуска, начислить зарплату, сформировать ведомости — и так по каждой организации отдельно.
Как решает
АГТ_ПомощникРасчетчика_v46 собирает все организации базы в одну таблицу. Расчётчик отмечает галками, что и где нужно сделать, и запускает операцию одной кнопкой сразу по всем выбранным организациям.
- Отсутствия — проведение и расчёт прогулов и неявок (в т.ч. списком).
- Аванс — создание, заполнение и проведение начисления за первую половину месяца.
- Отпуска — расчёт и проведение отпусков штатным методом ЗУП.
- Зарплата — начисление зарплаты и взносов за месяц.
- Ведомости — формирование ведомостей на выплату аванса, зарплаты и отпускных.
Главное преимущество
|
Расчёт делает сама 1С, а не «самописный» код. Обработка вызывает штатные методы ЗУП — те же, что работают за кнопками в типовых формах. Это значит: |
- Результат совпадает с типовым расчётом 1С — проверено сверкой регистров.
- При обновлении ЗУП новые алгоритмы расчёта на 90% подхватываются автоматически — обработку не нужно переписывать под каждый релиз.
- Нет риска «расхождения с типовой методикой», характерного для ручного воспроизведения формул.
Что под капотом
- Отпуска считаются нативным методом Отпуск.Рассчитать — полный аналог кнопки «Перезаполнить»: единовременные выплаты, компенсации, коэффициенты среднего, перерасчёты.
- Автоматический подбор видов расчёта для дополнительных отпусков (учебный, санаторно-курортный и др.) по типовой логике формы.
- Аккуратная работа с документами-исправлениями: они не трогаются автоматически, а оставляются расчётчику — перерасчёт прошлых периодов остаётся под контролем человека.
- Подробный вывод по каждой организации — видно, что обработано и где возникли вопросы.
Совместимость
|
Параметр |
Значение |
|
Конфигурация |
1С:ЗУП 3.1 |
|
Режим расчёта |
Расширенный расчёт зарплаты |
|
Тип поставки |
Внешняя обработка (.epf) |
|
Число организаций |
Без ограничения — все организации базы в одной таблице |
Связанный продукт
АГТ_ПомощникРасчетчика_v46 — это ручной инструмент. Для автоматического выполнения тех же операций по расписанию (без участия человека) существует парное решение — расширение «ПомощникРасчетчика_v37». Оба продукта используют одну расчётную логику и могут применяться вместе.
Инструкция
Обработка «АГТ_ПомощникРасчетчика» — помощник расчётчика ЗУП
Версия обработки: 46 | Конфигурация: 1С:ЗУП 3.1
Назначение
«АГТ_ПомощникРасчетчика_v46» — это внешняя обработка для ручного (интерактивного) запуска типовых расчётных операций в ЗУП по выбранным организациям: проведение отсутствий, начисление аванса, расчёт отпусков, начисление зарплаты и формирование ведомостей на выплату.
Главный принцип работы — обработка вызывает штатные методы 1С, а не воспроизводит логику расчёта вручную. Благодаря этому при обновлении ЗУП алгоритмы расчёта подхватываются автоматически.
Раздел A. Для расчётчика
A.1. Как открыть обработку
- Файл → Открыть в режиме 1С:Предприятие.
- Выбрать файл обработки АГТУправление.epf.
- Откроется форма со списком организаций базы.
|
Для открытия внешних обработок у пользователя должно быть право «Открытие внешних отчётов и обработок». Если кнопка/меню недоступны — обратитесь к администратору. |
A.2. Таблица организаций
При открытии форма автоматически заполняет таблицу всеми организациями базы (кроме помеченных на удаление). По умолчанию все галки выключены — вы сами решаете, что включить.
Колонки таблицы:
|
Колонка |
Назначение |
|
Организация |
Организация, по которой выполняется операция |
|
Отсутствия |
Включить обработку прогулов/неявок |
|
Аванс |
Включить начисление аванса |
|
Отпуска |
Включить расчёт отпусков |
|
ЗП |
Включить начисление зарплаты за месяц |
|
ВедАванс |
Включить формирование ведомости по авансу |
|
ВедЗП |
Включить формирование ведомости по зарплате |
|
ВедОтпуск |
Включить формирование ведомости по отпуску |
|
Платёжные дни |
Дни выплат организации (для окна отпусков) |
|
Расч. отп. на дату |
Дата отсчёта для расчёта отпусков (если нужна) |
|
Период |
Месяц, за который выполняется операция |
Отметьте галки в нужных колонках напротив тех организаций, по которым хотите выполнить операцию. Каждая кнопка работает только по своей колонке: например, кнопка «Аванс» обрабатывает организации с галкой в колонке «Аванс».
A.3. Кнопки запуска
Каждая кнопка запускает одну операцию по всем организациям, где включена соответствующая галка:
|
Кнопка |
Галка (колонка) |
Что делает |
|
Отсутствия |
Отсутствия |
Проводит и рассчитывает документы «Прогул, неявка» и «Прогул, неявка списком» за период |
|
Аванс |
Аванс |
Создаёт/перезаполняет и проводит «Начисление за первую половину месяца» |
|
Отпуска |
Отпуска |
Рассчитывает и проводит документы отпусков штатным методом |
|
Зарплата |
ЗП |
Создаёт и проводит «Начисление зарплаты и взносов» за месяц |
|
Вед. аванс |
ВедАванс |
Формирует ведомость на выплату аванса подтягиваются настройки дат выплаты из настроек самой организации |
|
Вед. зарплата |
ВедЗП |
Формирует ведомость на выплату зарплаты подтягиваются настройки дат выплаты из настроек самой организации |
|
Вед. отпуск |
ВедОтпуск |
Формирует ведомость на выплату отпускных дата= «Планируемая дата выплаты» из отпуска |
A.4. Рекомендуемый порядок за месяц
- По необходимости — Отсутствия (если есть прогулы/неявки),
- По мере оформления отпусков — Отпуска, затем Вед. отпуск.
- Затем Аванс. В день аванса — Вед. аванс.
- В конце месяца — Зарплата, затем Вед. зарплата.
|
Важно про аванс: если за период уже есть проведённый документ «Начисление зарплаты и взносов», то типовое заполнение аванса вернёт 0 строк и документ аванса не создастся. Это штатное поведение 1С, а не ошибка — сначала аванс, потом зарплата. |
A.5. Где смотреть результат
После нажатия кнопки результат выводится в окно сообщений 1С (внизу экрана). Там видно, по каким организациям что обработано, какие документы проведены, и текст ошибок, если они возникли. По завершении выводится строка === Готово ===.
A.6. Что обработка НЕ делает (намеренно)
- Документы-исправления отпусков (когда заполнен «Исправленный документ») — пропускаются с сообщением в окно. Перерасчёт прошлых периодов требует решений человека (период регистрации, дата выплаты), поэтому такие документы оставляются расчётчику.
- Не трогает то, что вы уже рассчитали и провели вручную, если это не входит в текущую операцию.
ПомощникРасчетчика_v37 (расширение)
Автоматический расчёт зарплаты по расписанию — без участия человека
Расширение для 1С:ЗУП 3.1
|
Настроили один раз — расчёты выполняются сами в нужные дни и часы. Отсутствия, аванс, отпуска, зарплата и ведомости по всем организациям, по расписанию, с отчётом на почту. |
Для кого
Бухгалтерии и расчётные центры с фиксированным графиком выплат (2–5 организаций в базе ЗУП 3.1), в т.ч. когда расчёт нужно выполнять в нерабочее время — ночью или рано утром к платёжным дням.
Какую проблему решает
Ежемесячный расчёт привязан к датам: аванс — в свои дни, зарплата — в конце месяца, ведомости — к платёжным дням. Расчётчик вынужден помнить про каждую дату и каждую организацию, заходить в базу и вручную запускать операции.
А при нескольких организациях нагрузка умножается.
Как решает
«Помощник расчётчика» работает как регламентное задание. В документе-настройке по каждой организации задаётся расписание: какая задача, в какие числа и в какой час выполняется. Дальше система делает всё сама.
- Расписание на каждую организацию — свои даты и часы для аванса, зарплаты, отпусков, ведомостей.
- Гибкие правила дат — «ежедневно», «последний день месяца», конкретные числа или «по платёжным дням» организации.
- Двойная защита — задача срабатывает только если разрешена галкой и подошло время по расписанию.
- Отчёт на почту — после выполнения ответственный получает письмо со сводкой: что сделано и были ли ошибки.
Главное преимущество
|
Та же штатная логика 1С — но без ручного запуска. Расширение вызывает типовые методы расчёта ЗУП, поэтому результат идентичен ручному, а обновления конфигурации подхватываются автоматически. Человек освобождается от рутины, но расчёт остаётся «родным» для 1С. |
Что умеет
|
Задача |
Что выполняет автоматически |
|
Отсутствия |
Проведение и расчёт прогулов/неявок, отпусков без оплаты |
|
Аванс |
Начисление за первую половину месяца |
|
Отпуска |
Расчёт и проведение отпусков штатным методом |
|
Зарплата |
Начисление зарплаты и взносов за месяц |
|
Ведомости |
Формирование ведомостей на аванс, зарплату, отпуска |
Контроль и прозрачность
- Email-отчёт по каждой организации после выполнения.
- Подробный журнал регистрации с разбивкой по этапам (аванс, отпуска, зарплата, ведомости) — всегда видно, что и когда отработало.
- Безопасность перерасчётов — документы-исправления и спорные случаи не проводятся вслепую, а остаются под контролем расчётчика.
Совместимость
|
Параметр |
Значение |
|
Конфигурация |
1С:ЗУП 3.1 |
|
Режим расчёта |
Расширенный расчёт зарплаты |
|
Тип поставки |
Расширение конфигурации (.cfe) |
|
Запуск |
Регламентное задание по расписанию |
|
Отчётность |
Email-отчёт ответственному (опционально) |
Связанный продукт
«Помощник расчётчика» автоматизирует расчёт по расписанию. Для случаев, когда нужно запустить расчёт вручную здесь и сейчас (внеплановый пересчёт, разовая операция), существует парное решение — Внешняя обработка «АГТ_ПомощникРасчетчика_v46». Оба продукта используют одну расчётную логику и могут применяться вместе.
Инструкция пользователя
Расширение «Помощник расчётчика» — автозапуск по расписанию
Конфигурация: 1С:ЗУП 3.1 | Тип: расширение (.cfe)
Назначение
Расширение «ПомощникРасчетчика_v37» выполняет те же расчётные операции, что и обработка «АГТ_ПомощникРасчетчика_v46», но автоматически по расписанию — через регламентное задание. Расчётчику не нужно открывать обработку и нажимать кнопки: достаточно один раз настроить расписание в документе, и задачи будут выполняться сами в указанные дни и часы.
Как и обработка, расширение вызывает штатные методы 1С — при обновлении ЗУП расчётная логика подхватывается автоматически.
|
Состав расширения: • общий модуль ПомощникЗУП — вся логика расчёта и диспетчер задач; • документ НастройкиПомощника — расписание и параметры по каждой организации; • регламентное задание ПомощникОбработкиДокументов — запускает проверку расписания. |
Раздел A. Для расчётчика
A.1. Документ «Настройки помощника»
Это главная настройка. На каждую организацию создаётся свой документ. Расширение берёт активный документ организации и работает по нему.
Реквизиты документа:
|
Реквизит |
Назначение |
|
Организация |
Организация, к которой относятся настройки |
|
Аванс / Отпуска / Отсутствия / Зарплата |
Галки: какие задачи вообще разрешены |
|
ВедАванс / ВедЗП / ВедОтпуск |
Галки разрешения для ведомостей |
|
Платёжные дни |
Дни выплат (используются вариантом расписания «по платёжным дням» и окном отпусков) |
|
Расч. отп. на дату |
Дата отсчёта для расчёта отпусков (если нужна) |
|
Расписание |
Таблица: какая задача, в какие числа и время выполняется |
|
Отправлять отчёты на почту |
Включить email-отчёт о выполнении |
|
Ответственный |
Кому уходит email-отчёт |
|
От кого |
Учётная запись-отправитель письма |
|
Две ступени защиты: задача выполнится, только если (1) включена галка задачи в документе И (2) есть строка в расписании с этой задачей, время которой подошло. Снять галку задачи — быстрый способ временно отключить её, не трогая расписание. |
|
A.2. Таблица «Расписание»
Каждая строка расписания — это одна задача и условие, когда её запускать:
|
Колонка |
Что указывать |
|
Задача |
Имя задачи: аванс, отпуска, зарплата, отсутствия, ведаванс, ведзп, ведотпуск |
|
Числа месяца |
Когда запускать (см. варианты ниже) |
|
Время |
Час запуска (задача сработает в этот час, минуты не учитываются) |
|
Период |
Месяц операции; если пусто — текущий месяц |
Варианты колонки «Числа месяца»
|
Значение |
Когда срабатывает |
|
ежедневно |
Каждый день в указанный час |
|
последний |
В последний день месяца |
|
25, 26 |
В перечисленные числа (через запятую) |
|
по платёжным дням |
В дни, заданные в реквизите «Платёжные дни» организации |
|
Имена задач пишутся как в таблице выше (регистр и пробелы не важны, «ё» = «е»). Если в расписании указать незнакомое имя — задача будет пропущена с записью в журнал. |
|
A.3. Пример заполнения расписания
|
Задача |
Числа месяца |
Время |
|
отсутствия |
по платёжным дням |
06:00 |
|
аванс |
по платёжным дням |
07:00 |
|
зарплата |
последний |
20:00 |
|
ведзп |
последний |
21:00 |
В этом примере отсутствия и аванс считаются в платёжные дни организации, а зарплата с ведомостью — в последний день месяца вечером.
A.4. Email-отчёт о выполнении
Если включён флаг «Отправлять отчёты на почту», после выполнения задач по организации формируется письмо со сводкой (что обработано, какие ошибки) и отправляется Ответственному с учётной записи, указанной в «От кого». Это удобно, чтобы контролировать ночные/утренние запуски, не заходя в базу.
A.5. Как проверить, что всё сработало
- Письмо на почте (если включены email-отчёты) — самый быстрый способ.
- Журнал регистрации. Расширение пишет подробный лог. Откройте журнал и отфильтруйте по событиям, начинающимся с ПомощникРасчетчика.
|
Журнал |
Что в нём |
|
ПомощникРасчетчика |
Общие события запуска/завершения, нереализованные задачи |
|
ПомощникРасчетчика.Аванс |
Отсутствия и аванс |
|
ПомощникРасчетчика.Отпуска |
Расчёт отпусков |
|
ПомощникРасчетчика.Зарплата |
Начисление зарплаты |
|
ПомощникРасчетчика.Ведомости |
Формирование ведомостей |
- Проведённые документы в списках ЗУП за нужный период.
Раздел B. Для программиста
Архитектура:
Форма обработки
↓
ТаблицаОрганизаций (ТЧ с галками и периодами)
↓
Кнопки-этапы → Серверные процедуры
↓
Шаг 1: Отсутствия
АГТШаг1_Отсутствия
→ ПрогулНеявка / Списком
→ ОтпускБезСохраненияОплаты
↓
Шаг 2: Аванс
АГТШаг2_НачислениеАванса
→ Документ.НачислениеЗаПервую...
→ Заполнение через МенеджерРасчета
↓
Шаг 3: Отпуска
АГТОбработатьОтпуск
→ Отбор по окну ПДВ
→ ДокОбъект.Рассчитать()
↓
Шаг 4: Зарплата
АГТШаг2_НачислениеЗарплаты
→ ПодготовитьДанныеДляПерезаполн.
→ Полный контейнер 1С
↓
Шаг 5: Ведомости
АГТВедомости
→ ВедомостьВБанк / Перечислением
→ Разделение по наличию карточек
Ключевые технические решения
-
Работа через менеджер расчета (а не прямая запись)
МенеджерРасчета = РасчетЗарплатыРасширенный.СоздатьМенеджерРасчета(Период, Организация);
МенеджерРасчета.РассчитатьЗарплату();
→ Устойчиво к обновлениям, корректный НДФЛ и взносы
-
Отпуска — нативный метод Рассчитать()
ДокОбъект.Рассчитать(ПараметрыРасчета);
→ Вся типовая логика среднего заработка
-
Перенос через полный контейнер 1С
Контейнер = РасчетЗарплатыРасширенный.НовыйСодержимоеДокументаРасчетаЗарплаты();
РасчетЗарплатыРасширенныйФормы.РасчетЗарплатыНачисленияВДанныеФормы(..., ДанныеЗаполнения.Начисления);
// Раскладка в ТЧ объекта с присвоением ИдентификаторСтроки
→ Все таблицы заполняются корректно (показатели, территории, НДФЛ)
-
Сортировка строк (как в форме)
СотрудникиФормыРасширенный.ПорядокСтрокКоллекцийСотрудников()
→ Стабильный порядок строк, как в типовой форме
-
Разделение ведомостей
АГТФизлицаСоСчётом() // запрос к ЛицевыеСчетаСотрудниковПоЗарплатнымПроектам
→ ЗарплатаСоСчётом → основная ведомость
→ ЗарплатаБезСчёта → отдельная ведомость с комментарием
→ Не падает из-за отсутствия карточек у сотрудников
Структура кода
Основные функции:
-
ПолучитьОрганизацииИзТЧ() — фильтр по галкам
-
ПолучитьОкноОтпусков() — вычисление окна ПДВ для отпусков
-
АГТШаг1_Отсутствия() — проведение отсутствий
-
АГТШаг2_НачислениеАванса() — расчет аванса
-
АГТОбработатьОтпуск() — расчет отпусков
-
АГТШаг2_НачислениеЗарплаты() — расчет зарплаты
-
АГТВедомости() — создание ведомостей
Вспомогательные:
-
АГТРазложитьАванс() / АГТРазложитьЗарплата() — раскладка контейнера в ТЧ
-
АГТПеренестиТерриторииСтрокиЗП() — привязка территорий к строкам
-
ПроверитьТабличныеЧастиДокумента() — сторож обновлений ЗУП
Логирование
Все действия записываются в журнал регистрации с префиксом "АгентЗУП.":
ЗаписьЖурналаРегистрации("АгентЗУП.Отпуск",
УровеньЖурналаРегистрации.Информация, , Ссылка, "Документ рассчитан");
Защита от обновлений ЗУП
-
Функция ПроверитьТабличныеЧастиДокумента() проверяет новые ТЧ
-
Использование типовых методов вместо самодельных записей в регистры
B.6. Связь с обработкой АГТ_ПомощникРасчетчика_v46
Расширение и обработка — парные продукты с общей расчётной логикой. Обработка предназначена для ручного запуска, расширение — для регламентного. Расчётные алгоритмы (нативный Отпуск.Рассчитать, подбор видов допотпусков, менеджер расчёта для отсутствий) идентичны.
Проверено на следующих конфигурациях и релизах:
- Зарплата и управление персоналом КОРП, редакция 3.1, релизы 3.1.36.75
- Зарплата и управление персоналом, редакция 3.1, релизы 3.1.36.75
Вступайте в нашу телеграмм-группу Инфостарт