Как выполнить свертку и разделить базу ЗКБУ 1.0 или ЗУП 2.5 по отдельным организациям?

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

При реорганизации учреждений или разделении обязанностей между расчетчиками часто возникает задача выделить данные одного конкретного учреждения из общей информационной базы конфигураций «1С:Зарплата и кадры бюджетного учреждения 1.0» или «1С:Зарплата и Управление Персоналом 2.5». Пользователи ищут типовую обработку свертки, однако сталкиваются с тем, что стандартных инструментов для зарплатных конфигураций на платформе 1С:Предприятие 8.2 / 8.3 не предусмотрено разработчиком.

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

Почему в ЗКБУ 1.0 и ЗУП 2.5 отсутствует типовая свертка?

В отличие от учетных конфигураций (например, «1С:Бухгалтерия предприятия»), где достаточно зафиксировать входящие остатки по счетам через документ ОперацияБух, в зарплатных конфигурациях расчетная и кадровая модель построена на непрерывных регистрах:

  1. Расчет среднего заработка для отпусков и командировок: данные берутся за предшествующие 12 месяцев из регистров расчета ОсновныеНачисленияРаботниковОрганизаций и ДополнительныеНачисленияРаботниковОрганизаций.
  2. Расчет пособий и больничных листов: требуются сведения о заработке за 2 предшествующих календарных года.
  3. Налоговый учет и взносы: базы по НДФЛ и страховым взносам накапливаются нарастающим итогом с начала календарного года в регистрах накопления НДФЛРасчетыСБюджетом, СтраховыеВзносыИсчисленные.
  4. Сквозные кадровые данные: справочник ФизическиеЛица является общим, а сотрудники могут переводиться между учреждениями одной базы.

Простое удаление старых периодов ломает встроенные алгоритмы расчета. Поэтому разделение базы требует особого подхода.

Способ 1. Создание копии базы и удаление лишних учреждений

Рассмотрим популярный и практичный подход: создание физической копии информационной базы с последующей очисткой данных по сторонним учреждениям.

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

  1. Создание полной резервной копии базы: выгружаем информационную базу в файл .dt и разворачиваем отдельную копию для нового учреждения.
  2. Обработка кадровых переводов между организациями: если сотрудник работал сначала в удаляемом учреждении, а затем был переведен в целевое, простое удаление документов приведет к «битым» ссылкам. В таком случае в документах ПриемНаРаботуВОрганизацию и КадровоеПеремещениеОрганизаций заменяем исходную организацию на целевую, чтобы сохранить стаж и непрерывную кадровую историю.
  3. Снятие с проведения и очистка документов: документы, относящиеся к лишним учреждениям (начисления зарплаты, табели, выплаты, налоги), снимаем с проведения и помечаем на удаление.
  4. Удаление помеченных объектов: выполняем стандартную процедуру Удаление помеченных объектов через меню программы.
  5. Тестирование и исправление: запускаем в конфигураторе режим Тестирование и исправление информационной базы с установленными флагами Проверка ссылочной целостности, Очищать ссылки и Сжатие таблиц информационной базы.
  6. Сжатие файла базы данных: для файлового варианта выполняем оптимизацию утилитой chdbfl.exe, для клиент-серверного — команду Shrink в СУБД.

Способ 2. Выгрузка данных через «1С:Конвертация данных 2.0»

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

Для реализации этого способа выполняются следующие действия:

  1. В конфигурации «Конвертация данных 2.0» создаются правила выгрузки из конфигурации ЗКБУ 1.0 в аналогичную чистую базу той же версии.
  2. В правилах выборки данных (ПВД) накладывается программный отбор по конкретной ссылке на справочник Организации.
  3. Настраивается выгрузка справочников ФизическиеЛица, СотрудникиОрганизаций, связанных кадровых документов и регистров сведений (КадроваяИсторияСотрудников, ПлановыеНачисленияРаботниковОрганизаций).
  4. Данные регистров расчета выгружаются только за последние 1–2 года, чтобы обеспечить корректный расчет среднего заработка и больничных листов.

Способ 3. Ограничение доступа на уровне записей (RLS)

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

  1. Переходим в меню: Сервис → Настройки программы → Ограничения доступа.
  2. Устанавливаем флаг «Использовать ограничение прав на уровне записей».
  3. В настройках групп пользователей и ролей указываем доступ только к назначенным организациям.

Важно: включение механизма RLS не уменьшает размер базы данных и увеличивает нагрузку на СУБД при массовых расчетах зарплаты. Кроме того, сохраняется риск случайного изменения прав администратором.

Рекомендуемая альтернатива: Переход на актуальную редакцию «ЗКГУ 3.1»

Поскольку линейка 1.0 / 2.5 является устаревшей, наиболее оптимальным решением при разделении учреждений является штатный перенос данных в чистую базу «1С:Зарплата и кадры государственного учреждения 3.1»:

  1. В типовом помощнике начальной настройки ЗКГУ 3.1 выбираем перенос данных из ЗКБУ 1.0.
  2. В окне выбора данных указываем только одно требуемое учреждение.
  3. Выбираем рекомендованный вариант переноса: переносится актуальная кадровая структура, остатки взаиморасчетов и данные для расчета среднего заработка за последние годы.

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

← На главную