При настройке и сопровождении синхронизации данных между управленческими системами (1С:ERP, 1С:Комплексная автоматизация, 1С:Управление торговлей) и 1С:Бухгалтерией предприятия (БП) часто возникают ситуации, когда после установки очередного обновления "ломается" привычный обмен. Одна из распространенных проблем — документы создаются, проводятся, но не регистрируются к обмену. Даже принудительная попытка зарегистрировать объект вручную не дает результата.
В этой статье мы подробно разберем ситуацию, когда перестают отправляться документы СчетФактураВыданный, проанализируем причины этого поведения и рассмотрим пошаговое решение, основанное на реальном опыте пользователей и архитектуре обмена EnterpriseData.
Прежде чем менять настройки, давайте убедимся, что мы имеем дело именно с рассматриваемой проблемой. Симптоматика обычно выглядит следующим образом:
Если объект не регистрируется даже вручную, это верный признак того, что он не проходит через фильтры, установленные в правилах регистрации плана обмена.
В последних релизах конфигураций на базе 1С:ERP (включая УТ 11.5 и КА 2.5) механизм фильтрации данных при обмене был усовершенствован. Это наиболее вероятная причина проблемы, если она возникла сразу после обновления.
Разберем, что именно происходит. В настройках узла обмена появилась возможность гибко управлять составом мигрирующих данных не только по организациям и складам, но и по разделам учета и видам документов. Этот функционал работает по принципу "Белого списка" (White List): если галочка напротив документа не стоит, система (БСП) блокирует его регистрацию на уровне кода.
При обновлении конфигурации список доступных документов может расширяться или изменяться их внутренняя идентификация. В результате настройки могут "сброситься" или новые требования к фильтрам не будут активированы автоматически.
Давайте пройдем путь исправления настройки непосредственно в базе-источнике (ERP или УТ):
После изменения настроек попробуйте снова зарегистрировать документ к обмену. Теперь блокировка должна быть снята.
Если решение с фильтрами не помогло, давайте рассмотрим архитектурную особенность современного формата обмена EnterpriseData. В этом формате данные часто передаются пакетами или зависимыми структурами.
В правилах регистрации объектов (ПРО) часто прописана логика: Счет-фактура выданный регистрируется только тогда, когда регистрируется его документ-основание. Это сделано для того, чтобы в Бухгалтерию не попадали "повисшие" счета-фактуры без реализаций.
Проанализируем возможные сценарии:
Ложь.Решение: Попробуйте зарегистрировать к обмену документ-основание (саму накладную). Если она успешно зарегистрируется, проверьте, "подтянулся" ли за ней счет-фактура. Обычно это происходит автоматически.
Это банальная, но очень частая ошибка, о которой стоит упомянуть. В настройках синхронизации есть параметр "Начальная дата выгрузки документов".
Давайте проверим этот параметр:
СчетФактураВыданный.Иногда пользователи меняют дату документа "задним числом", и она выпадает из периода обмена. Если вам необходимо выгрузить старые документы, временно сдвиньте дату начала выгрузки назад, выполните обмен, а затем верните дату на актуальное значение (например, начало текущего закрытого периода).
Иногда, даже если все настройки верны, платформа продолжает использовать старую версию правил, закэшированную в сеансе или на сервере. Это особенно актуально после динамических обновлений.
Чтобы исключить этот фактор, выполните следующие действия:
Если вы хотите точно узнать, почему объект не регистрируется, и обладаете навыками программирования или администрирования, можно воспользоваться отладкой или анализом плана обмена.
Рассмотрим, как это работает "под капотом". При записи документа или при попытке регистрации система вызывает событие плана обмена. Внутри этого события срабатывает процедура проверки правил регистрации (ПРО). Эта процедура возвращает булево значение (Истина/Ложь).
Код проверки обычно выглядит примерно так (упрощенно):
Функция ПроверитьВозможностьРегистрации(Объект, Узел)
// Проверка даты
Если Объект.Дата < Узел.ДатаНачалаВыгрузки Тогда
Возврат Ложь;
КонецЕсли;
// Проверка фильтров (тот самый "Белый список")
Если Не ОбъектПроходитПоОтбору(Объект, Узел.НастройкиОтбора) Тогда
Возврат Ложь;
КонецЕсли;
// Специфичные проверки для счета-фактуры
Если ТипЗнч(Объект) = Тип("ДокументСсылка.СчетФактураВыданный") Тогда
Если Не ЗначениеЗаполнено(Объект.ДокументОснование) Тогда
Возврат Ложь; // Без основания не выгружаем
КонецЕсли;
КонецЕсли;
Возврат Истина;
КонецФункции;
Понимание этой логики помогает не искать проблему в "магии" 1С, а методично проверять каждое условие: дату, отборы (фильтры), заполненность реквизитов.
Если после обновления ERP или УТ у вас перестали уходить счета-фактуры в Бухгалтерию, с вероятностью 99% проблема кроется в настройках отбора по видам документов.
Что нужно сделать прямо сейчас:
Счет-фактура выданный.Это восстановит нормальную регистрацию документов и позволит закрыть период в Бухгалтерии без ручного ввода данных.