Готовишься к экзамену?
Полнофункциональный тренажер @bot_1cnik_bot с полноценным обучением, режимом экзамена и подробной статистикой.
Что произойдет при повторной выгрузке (повторной передаче) уже ранее отправленного документа в «1С:Бухгалтерию 8» через механизм интеграции/синхронизации данных?
Программа снова выполнит автоматическое сопоставление документа с существующим по набору реквизитов (номер, дата, организация и т.п.), заданному в правилах сопоставления.
Неправильно: Сопоставление по реквизитам - это характерно прежде всего для первичной загрузки, когда соответствия еще не установлены. При повторной выгрузке механизм обмена обычно не «ищет похожий документ заново», а использует уже установленную идентификацию объекта.
Документ будет найден и обновлен по внутреннему идентификатору (уникальному ID/UUID), сохраненному в механизме обмена.
Правильно: После первого обмена между системами фиксируется соответствие объекта, и при повторной выгрузке документ идентифицируется не по номеру и дате, а по внутреннему уникальному идентификатору. Благодаря этому повторная передача не создает дубль, а приводит к синхронизации уже существующего документа.
Система выдаст ошибку и не позволит выполнить повторную выгрузку одного и того же документа.
Неправильно: Повторная выгрузка - штатная ситуация (например, документ изменили и отправляют повторно), поэтому обмен не должен блокироваться ошибкой только из-за факта повторной передачи. Ошибки возможны по другим причинам (права, блокировки, некорректные данные), но не как обязательное правило.
Сначала будет выполнено сопоставление по реквизитам, а затем дополнительно - синхронизация по внутреннему идентификатору.
Неправильно: Обычно эти механизмы не идут «два шага подряд» для одного и того же объекта при повторной передаче: если объект уже известен обмену, достаточно внутреннего идентификатора/таблицы соответствий. Сопоставление по реквизитам требуется, когда соответствие отсутствует (например, на первом обмене или после сброса соответствий).
Пояснение
При синхронизации данных важно различать два этапа идентификации объектов:
1) Первичная загрузка (первый обмен).
Когда объект (документ) передается впервые, у принимающей базы еще нет «связки», какой объект в источнике соответствует какому объекту в «1С:Бухгалтерии 8». Поэтому на первом этапе могут применяться правила первичного сопоставления (по заданным реквизитам поиска) или потребоваться ручное сопоставление, если однозначно определить соответствие не получается.
2) Повторная выгрузка того же документа.
После того как документ уже был передан, механизм обмена хранит соответствие между объектами двух баз и использует внутренний идентификатор (уникальный ID/UUID объекта) для однозначного распознавания документа. Поэтому при повторной выгрузке система не «угадывает» документ по номеру и дате, а находит именно тот экземпляр, который был создан/сопоставлен ранее, и синхронизирует его (обновляет реквизиты, табличные части, статусы - в рамках правил обмена).
Практический пример:
- Вы выгрузили в «1С:Бухгалтерию 8» документ «Реализация».
- Затем в исходной базе исправили сумму, добавили строку или поменяли контрагента и снова выполнили выгрузку.
- При повторной выгрузке документ в Бухгалтерии будет найден по внутреннему идентификатору и обновлен, а не создан заново.
Полезные нюансы для понимания:
- Если на принимающей стороне документ был удален (или соответствия были очищены/сброшены), повторная выгрузка может привести к созданию нового документа или к необходимости повторного сопоставления - потому что связь по внутреннему идентификатору будет нарушена.
- Номер и дата документа не являются надежным уникальным ключом: номера могут совпадать в разных организациях/префиксах, даты могут корректироваться, поэтому для повторной синхронизации используется внутренний уникальный идентификатор.