При совместной работе программных продуктов 1С:Зарплата и управление персоналом (ЗУП) и 1С:Бухгалтерия предприятия (БП) одним из ключевых этапов завершения месяца является выгрузка результатов расчета заработной платы. Процесс устроен следующим образом: документ ОтражениеЗарплатыВБухучете создается на стороне ЗУП, передается в БП, где бухгалтер проверяет правильность заполнения субконто, ставит флаг «Отражено в учете» и проводит документ. После этого, при обратной синхронизации, документ в ЗУП должен стать недоступным для редактирования (заблокироваться), чтобы исключить расхождения в учете между базами.
Однако пользователи часто сталкиваются с ситуацией, когда галочка в БП установлена и документ успешно проведен, но в ЗУП он по-прежнему открыт для редактирования. В этой статье мы подробно разберем, почему возникает данная техническая проблема, проанализируем внутренние механизмы платформы 1С и изучим все возможные способы её решения — от простых пользовательских приемов до глубоких системных настроек.
Прежде чем приступать к исправлению, давайте разберем логику взаимодействия баз на уровне платформы. За перенос статуса отвечает реквизит документа ОтраженоВУчете на стороне БП. При проведении документа с установленным флагом программа должна зафиксировать изменения в специальной таблице — Плане обмена. Этот процесс называется автоматической регистрацией изменений.
При очередной синхронизации БП формирует XML-пакет, в который помещаются все зарегистрированные объекты. ЗУП считывает этот пакет, находит соответствующий документ и устанавливает для него реквизит ЗарплатаОтраженаВБухучетеПользователем в значение Истина. Визуально это выражается в том, что все поля документа в ЗУП становятся серыми и недоступными для изменения.
Если блокировка не происходит, значит, цепочка передачи данных нарушена на одном из этапов. Рассмотрим подробнее основные причины сбоя:
ОтраженоВУчете не распознается платформой как повод для автоматической отправки объекта.ПриЗаписи), из-за чего План обмена «не узнает» о необходимости отправить документ.Теперь рассмотрим по шагам методы решения этой проблемы, начиная с самого быстрого и эффективного.
Если автоматическая регистрация изменений для документа не сработала и программа считает, что отправлять в ЗУП нечего, мы можем указать ей на этот документ вручную. Это наиболее надежный способ оперативно решить проблему без изменения кода конфигурации.
Разберем процесс ручной регистрации по шагам:
Отражение зарплаты в бухучете стоит значение «0», это подтверждает нашу теорию — программа «забыла» подготовить документ к отправке.Отражение зарплаты в бухучете, выберите нужный период (месяц, по которому возникли расхождения), выделите документ и нажмите кнопку Выбрать.После завершения обмена откройте базу 1С:ЗУП и проверьте статус документа. Он должен успешно заблокироваться.
Если вам неудобно каждый раз заходить в техническое меню регистрации изменений, можно применить небольшую хитрость, которая заставит платформу принудительно зарегистрировать объект к обмену.
Для этого выполните следующие действия в 1С:БП:
Отражение зарплаты в бухучете.Внесение изменений в текстовое поле гарантированно инициирует полноценное событие записи объекта в базу данных на уровне СУБД. Платформа перехватит это событие, отработает стандартная подписка обмена, и документ автоматически добавится в очередь на отправку. Вам останется только запустить синхронизацию.
Иногда передаче признака блокировки мешает конфликт версий. Если в ЗУП документ числится измененным, то при обмене приоритет может оставаться за ним, блокируя получение галочки из БП. Чтобы разрешить эту коллизию, выполните следующие действия:
Если обмен настроен некорректно, базы находятся на доработке или регулярная синхронизация временно отключена, бухгалтер может принудительно заблокировать документ непосредственно в 1С:ЗУП с помощью стандартной сервисной обработки.
Проанализируем этот процесс детально:
Отражение зарплаты в бухучете.ЗарплатаОтраженаВБухучетеПользователем).После выполнения обработки документ в ЗУП примет целевой вид: все его поля станут недоступными для изменения, гарантируя защиту от случайных правок задним числом.
Для специалистов, имеющих доступ к конфигурированию и программированию, приведем пример кода, который выполняет аналогичное действие в обход интерфейса (например, при написании внешней обработки для закрытия периодов):
// Пример программного изменения статуса блокировки документа в ЗУП
СсылкаНаДокумент = Документы.ОтражениеЗарплатыВБухучете.НайтиПоНомеру("00ЗП-000001", ТекущаяДата());
Если Не СсылкаНаДокумент.Пустая() Тогда
ДокументОбъект = СсылкаНаДокумент.ПолучитьОбъект();
// Устанавливаем признак блокировки
ДокументОбъект.ЗарплатаОтраженаВБухучетеПользователем = Истина;
// Включаем режим загрузки, чтобы обойти лишние проверки при записи
ДокументОбъект.ОбменДанными.Загрузка = Истина;
Попытка
ДокументОбъект.Записать(РежимЗаписиДокумента.Запись);
Сообщить("Документ успешно заблокирован в ЗУП!");
Исключение
Сообщить("Ошибка при записи документа: " + ОписаниеОшибки());
КонецПопытки;
КонецЕсли;
Очень часто виновником проблемы становится установленная дата запрета загрузки в настройках синхронизации. Проанализируем, как это проверить:
В программе ЗУП перейдите в раздел Администрирование -> Синхронизация данных. Обратите внимание на признак Даты запрета загрузки. Если они включены, перейдите по ссылке Настроить.
Если дата запрета установлена, например, концом прошлого месяца, а вы пытаетесь синхронизировать изменения за этот же месяц, ЗУП просто проигнорирует новые данные из файла обмена (включая признак блокировки). При этом программа может не выдавать критических ошибок в журнал регистрации. Временно сдвиньте дату запрета загрузки назад, выполните синхронизацию, а затем верните настройки в исходное состояние.
Мы подробно разобрали проблему рассинхронизации флага «Отражено в учете» между конфигурациями 1С:ЗУП и 1С:БП. Чаще всего эта неполадка носит временный характер и связана с особенностями конкретных релизов программ. Чтобы избежать подобных трудностей в будущем, рекомендуем своевременно обновлять обе конфигурации, так как разработчики 1С регулярно выпускают исправления правил обмена для Библиотеки стандартных подсистем (БСП). В случае экстренной необходимости самым быстрым решением остается ручная регистрация документа к обмену или использование группового изменения реквизитов.