После переноса данных из ЗУП 2.5 в ЗУП 3.1 не обнуляется сальдо на конец месяца: как решить проблему

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

Переход с устаревшей конфигурации «Зарплата и Управление Персоналом», редакция 2.5, на современную редакцию 3.1 — это сложный и ответственный процесс. Очень часто пользователи, выбравшие вариант «Полного переноса данных», сталкиваются с крайне неприятной методологической проблемой: в расчетных листках сотрудников за первые месяцы ведения учета в новой базе начинает «висеть» фантомное сальдо. При этом фактически все выплаты произведены в полном объеме, долгов перед сотрудниками нет, но программа упорно показывает входящее и исходящее сальдо на конец месяца.

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

Выясняем глубинную причину проблемы: разница в архитектуре регистров

Для того чтобы понять, почему «плывут» остатки, нам необходимо обратиться к архитектурным различиям между редакциями 2.5 и 3.1. В старой редакции ЗУП 2.5 учет взаиморасчетов велся в разрезе физических лиц, организаций и периодов взаиморасчетов. При этом ключевым моментом была дата выплаты зарплаты, а жесткой привязки к документам-основаниям не требовалось.

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

Проанализируем основные измерения, в разрезе которых учет ведет ЗУП 3.1:

  1. Месяц взаиморасчетов (или период). Например, начисление отпуска произошло в декабре (период взаиморасчетов — декабрь), а выплата была произведена в январе (период взаиморасчетов — январь). Если программа не сможет корректно сопоставить эти периоды, сальдо закроется неверно.
  2. Документ-основание. В ЗУП 3.1 ведомости на выплату жестко привязываются к конкретным документам начисления (например, к конкретному документу Начисление отпуска или Начисление зарплаты и взносов). Если при переносе данных документ-основание «разошелся» (например, в одном регистре это документ переноса данных, а в другом — пустое значение), программа зафиксирует расхождение.
  3. Регистры учета. В ЗУП 3.1 за взаиморасчеты отвечают сразу три регистра накопления: Взаиморасчеты с сотрудниками, Зарплата к выплате и Бухгалтерские взаиморасчеты с сотрудниками. При «Полном переносе» документы переноса данных часто формируют записи только по первым двум регистрам, полностью игнорируя третий. Это приводит к тому, что при переключении настроек отчетов «По данным бухучета» или «По месяцам расчета» мы получаем абсолютно разные и некорректные картины.

Рассмотрим пошагово три основных метода исправления пересортицы и приведения взаиморасчетов в идеальное состояние.

Способ №1: Метод «Нулевой ведомости» (бухгалтерский лайфхак)

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

Выполним следующие действия по шагам:

  1. Перейдем в раздел Выплаты и создадим новый документ Ведомость в банк (или Ведомость в кассу, в зависимости от того, как выплачивается зарплата) текущим месяцем расчета.
  2. Нажмем кнопку Подобрать и выберем проблемного сотрудника, у которого не закрывается сальдо.
  3. Программа автоматически заполнит ведомость суммами. Наша задача — сделать так, чтобы общая сумма к выплате в строке сотрудника была строго равна 0 рублей.
  4. Дважды щелкнем левой кнопкой мыши по колонке К выплате в строке сотрудника. Откроется детальное окно редактирования распределения выплаты.
  5. В открывшемся окне мы увидим строки с пересортицей. Вручную скорректируем эти строки так, чтобы они полностью компенсировали друг друга. Для этого нам нужно добавить две записи с противоположными знаками:
    • Добавим строку с плюсом (например, +10 000 рублей) с указанием «неправильного» месяца или документа-основания (например, Декабрь прошлого года), по которому программа видит задолженность.
    • Добавим строку с минусом (например, -10 000 рублей) с указанием «правильного» месяца или документа-основания (например, Январь текущего года), по которому программа видит переплату.
  6. Убедимся, что итоговая сумма по сотруднику в окне редактирования и в самой ведомости составляет ровно 0 рублей, после чего проведем документ.

После проведения такой «нулевой» ведомости записи в регистре Зарплата к выплате взаимно уничтожат друг друга, и фантомное сальдо из расчетного листка полностью исчезнет.

Способ №2: Корректировка регистров через документы «Перенос данных»

Если сотрудников с нарушенным сальдо много, ручная корректировка нулевыми ведомостями может занять слишком много времени. В этом случае нам придется напрямую отредактировать документы технического переноса данных, созданные программой при миграции из ЗУП 2.5.

Проанализируем эту методику подробнее:

  1. Перейдем в раздел Администрирование -> Переносы данных.
  2. Найдем документы с префиксом ВЗ. Именно эти документы отвечают за перенос остатков взаиморасчетов с сотрудниками.
  3. Откроем документ и обратим внимание на вкладки, соответствующие регистрам накопления Зарплата к выплате и Взаиморасчеты с сотрудниками.
  4. Проверим записи по проблемным сотрудникам. Наша цель — добиться того, чтобы суммы и измерения (особенно месяц и организация) в обоих регистрах были абсолютно идентичны. Если в одном регистре сумма числится за декабрем, а в другом за январем, исправим это вручную, приведя записи к единому периоду.
  5. Стоит учитывать, что регистр Бухгалтерские взаиморасчеты с сотрудниками при полном переносе часто остается пустым. Если вы хотите использовать настройку «По данным бухучета», вам придется заполнить этот регистр аналогичными записями.

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


// Пример очистки записей по регистру "Зарплата к выплате" для конкретного документа переноса
ДокументОбъект = Документы.ПереносДанных.НайтиПоНомеру("ВЗ_00000001", ТекущаяДата()).ПолучитьОбъект();

Если ДокументОбъект <> Неопределено Тогда
    // Очищаем набор записей регистра накопления "Зарплата к выплате"
    НаборЗарплата = РегистрыНакопления.ЗарплатаКВыплате.СоздатьНаборЗаписей();
    НаборЗарплата.Отбор.Регистратор.Установить(ДокументОбъект.Ссылка);
    НаборЗарплата.Прочитать();
    НаборЗарплата.Очистить();
    НаборЗарплата.Записать();
    
    // Аналогично очищаем набор для регистра "Взаиморасчеты с сотрудниками"
    НаборВзаиморасчеты = РегистрыНакопления.ВзаиморасчетыССотрудниками.СоздатьНаборЗаписей();
    НаборВзаиморасчеты.Отбор.Регистратор.Установить(ДокументОбъект.Ссылка);
    НаборВзаиморасчеты.Прочитать();
    НаборВзаиморасчеты.Очистить();
    НаборВзаиморасчеты.Записать();
    
    ЗаписатьЛог("Движения по взаиморасчетам успешно очищены.");
КонецЕсли;

Способ №3: Использование документа «Начальная задолженность по зарплате»

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

Разберем этот алгоритм по шагам:

  1. Перейдем в раздел Администрирование -> Переносы данных и полностью распроведем или удалим документы с префиксом ВЗ, которые переносят движения по регистрам Взаиморасчеты с сотрудниками и Зарплата к выплате за прошлый год. Нам не нужны эти некорректные исторические остатки, так как они только засоряют базу.
  2. Перейдем в раздел Главное -> Данные на начало эксплуатации.
  3. Создадим новый документ Начальная задолженность по зарплате на дату начала ведения учета в новой базе (например, на 1 января нового года).
  4. Введем реальную, выверенную задолженность по сотрудникам на эту дату. Если задолженности нет и все выплачено в ноль, документ можно оставить пустым или внести только тех сотрудников, по которым действительно есть реальный переходящий долг.

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

Особенности учета переходящих январских отпусков

Отдельного внимания заслуживает ситуация, когда отпуск сотрудника приходится на январь нового года, но рассчитан и выплачен он был в декабре старого года в ЗУП 2.5.

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

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

Для корректного решения этой проблемы выполним следующие действия:

  1. Временно распроведем или удалим документ Периоды, оплаченные до начала эксплуатации.
  2. Создадим в ЗУП 3.1 полноценный документ Отпуск за декабрь прошлого года, указав в нем те же периоды и суммы, но не проводя по нему выплату (ведь выплата уже прошла в старой базе).
  3. В январе на основании этого созданного отпуска введем документ Больничный лист. Программа автоматически сторнирует необходимую часть отпуска и начислит пособие.
  4. После проведения всех корректировок вернемся к исходному документу Периоды, оплаченные до начала эксплуатации, скорректируем в нем даты с учетом болезни и проведем его снова.

Решаем проблему с перечислением НДФЛ в бюджет

В ЗУП 2.5 документ Перечисление НДФЛ в бюджет заполнялся и редактировался вручную. В ЗУП 3.1 учет налога стал автоматическим. Из-за этого после переноса в ведомости на выплату часто подтягиваются старые хвосты по НДФЛ за предыдущие несколько лет.

Чтобы очистить эти старые остатки и начать вести учет НДФЛ «с чистого листа» с января текущего года, рекомендуется применить следующий метод:

  1. Создадим документ Перечисление НДФЛ в бюджет на конец декабря прошлого года.
  2. Укажем в нем сумму, равную всей накопленной за прошлые годы задолженности по неперечисленному налогу. Это полностью обнулит остатки по регистру к началу нового года.
  3. В дальнейшем производите перечисление НДФЛ непосредственно через платежные ведомости. В каждой ведомости внизу под подписями доступна ссылка «Выплата зарплаты и перечисление НДФЛ». При нажатии на нее открывается окно настроек, где достаточно установить флаг перечисления налога и указать реквизиты платежного поручения.

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

← На главную