Администрирование · 11 мин
Как удалить транспортное сообщение в 1С
Как найти и удалить транспортное сообщение в 1С при обмене данными: где хранятся файлы обмена, как очистить очередь сообщений и избежать ошибок синхронизации.
Транспортное сообщение в 1С — это файл или пакет данных, которым информационные базы обмениваются при синхронизации: через каталог обмена, FTP, электронную почту или веб-сервис. Иногда такое сообщение зависает в очереди, повреждается или блокирует обмен, и его требуется удалить вручную.
Типичные ситуации: синхронизация останавливается с ошибкой «сообщение обмена уже было принято», файл в каталоге обмена занимает гигабайты и не загружается, либо после сбоя база постоянно пытается отправить один и тот же пакет. Во всех этих случаях удаление проблемного сообщения — рабочий способ восстановить обмен.
Способ удаления зависит от того, где находится сообщение: в каталоге на диске, в регистре сведений очереди сообщений (в механизмах EnterpriseData и БСП) или в виде зарегистрированных изменений в плане обмена. Ниже разобраны все варианты с точным порядком действий.
Что такое транспортное сообщение и где оно хранится
При обмене данными 1С формирует XML-пакет с изменениями и передаёт его второй базе. До момента успешной загрузки пакет существует как транспортное сообщение. В зависимости от транспорта это может быть файл вида Message_XXX_YYY.xml в сетевой папке, вложение письма на почтовом сервере или файл на FTP-ресурсе.
В механизмах на базе Библиотеки стандартных подсистем (БСП) дополнительно ведётся учёт отправленных и полученных сообщений: номера сообщений хранятся в узлах плана обмена (реквизиты «Номер отправленного» и «Номер принятого»), а сами файлы — в каталоге, указанном в настройках подключения. Если используется обмен через «1С:Бизнес-сеть» или корпоративный менеджер сообщений, промежуточные пакеты могут храниться в служебных регистрах базы.
Понимание того, где лежит сообщение, определяет способ удаления: файловый каталог чистится средствами ОС, очередь внутри базы — штатными средствами настройки синхронизации, а застрявшая регистрация изменений снимается в плане обмена.
Подготовка перед удалением: резервная копия и диагностика
Перед любыми действиями сделайте резервную копию базы или хотя бы скопируйте само сообщение в отдельную папку. Если удалите нужный пакет, данные придётся восстанавливать повторной выгрузкой, а в некоторых сценариях — первоначальной настройкой синхронизации заново.
Затем определите, что именно произошло. Откройте журнал регистрации и отфильтруйте события по словам «Обмен данными» — там будет текст ошибки и номер проблемного сообщения. Проверьте настройки синхронизации: раздел «Администрирование» — «Синхронизация данных» — ссылка на настройки обмена, вкладка с событиями отправки и получения.
Сравнить номера отправленного и принятого в узлах плана обмена обеих баз
Проверить размер файла и попробовать открыть его XML-структуру
Открыть события отправки данных в настройках синхронизации
Проверить даты файлов и оставить только актуальные
Удаление файла сообщения из каталога обмена
Если обмен настроен через локальный или сетевой каталог, откройте настройки синхронизации и посмотрите путь к каталогу обмена. Перейдите в эту папку средствами операционной системы. Файлы сообщений обычно имеют вид Message_КодОтправителя_КодПолучателя.xml, также там могут лежать архивы ZIP, если включено сжатие.
Найдите проблемный файл по номеру из ошибки или по дате создания. Переместите его в резервную папку (не удаляйте сразу безвозвратно), затем запустите синхронизацию заново. База-отправитель сформирует новое сообщение, если изменения ещё зарегистрированы, либо обмен завершится успешно, если данные уже переданы.
Для обмена через FTP логика та же: подключитесь к серверу любым FTP-клиентом с теми же учётными данными, что указаны в настройках, и уберите проблемный файл. Для обмена через электронную почту удалите письмо с вложением из папки «Входящие» почтового ящика, используемого для обмена.
- 1Откройте настройки синхронизации и выпишите путь к каталогу обмена
- 2Сделайте резервную копию базы и скопируйте каталог обмена
- 3Найдите проблемный файл сообщения по номеру или дате
- 4Переместите файл в резервную папку
- 5Запустите синхронизацию и проверьте журнал регистрации
- 6При успешном обмене удалите резервную копию файла
Удаление сообщения из очереди обмена данными
В типовых конфигурациях на БСП история сообщений доступна из формы настройки синхронизации. Откройте «Администрирование» — «Синхронизация данных», выберите нужную настройку и перейдите по ссылке «События отправки данных» или «События получения данных». Здесь видны номера сообщений, даты и статусы.
Если сообщение зависло в статусе отправки, его можно отменить или удалить из очереди прямо в этой форме (доступность кнопок зависит от версии конфигурации). В ряде конфигураций предусмотрена команда «Удалить сообщение обмена» или очистка очереди через обработку настройки транспорта.
Когда штатных кнопок нет, используется другой подход: в узле плана обмена вручную корректируют номера сообщений. Откройте узел плана обмена (через «Все функции» — «Планы обмена» либо через настройку синхронизации) и установите «Номер отправленного» и «Номер принятого» так, чтобы обе базы ожидали следующее сообщение с одинаковым номером. Это фактически исключает проблемное сообщение из цикла обмена.
Снятие регистрации изменений как альтернатива удалению
Иногда проблема не в самом файле, а в том, что база упорно пытается отправить огромный или повреждённый набор изменений. В этом случае целесообразнее не удалять сообщение, а снять регистрацию изменений с узла плана обмена.
Откройте настройку синхронизации, перейдите к составу отправляемых данных (ссылка «Зарегистрированные изменения» или аналогичная в вашей конфигурации). Выделите проблемные объекты или весь состав и выполните команду «Отменить регистрацию» / «Удалить регистрацию». После этого база перестанет включать эти данные в очередное сообщение.
Учтите: снятые с регистрации изменения не попадут во вторую базу автоматически. Если данные нужны, после восстановления обмена выполните повторную регистрацию нужных объектов или воспользуйтесь типовой обработкой «Регистрация изменений для обмена данными».
Сравнение вариантов
Подходит при повреждённом или лишнем файле обмена. Быстро, но не решает проблему зависшей регистрации изменений
Подходит при зависшей отправке в типовых механизмах БСП. Требует доступа к настройкам синхронизации
Подходит при ошибке «сообщение уже принято». Требует согласованных изменений в обеих базах
Подходит при зацикленной отправке большого пакета. Данные придётся регистрировать повторно
Проверка результата и восстановление обмена
После удаления сообщения обязательно выполните полный цикл синхронизации в обе стороны и проверьте журнал регистрации: не должно быть ошибок о номерах сообщений, повреждённых пакетах или недоступности транспорта. В событиях отправки и получения последние записи должны иметь успешный статус.
Дополнительно убедитесь, что данные в базах согласованы. В типовых конфигурациях есть отчёт «Состав отправляемых данных» и инструменты сопоставления; как минимум проверьте несколько ключевых документов или элементов справочников, которые должны были перейти в последних сообщениях.
Как проверить результат
Нет ошибок обмена, события завершены успешно
Повторяются ошибки о номере сообщения или формате пакета
Последние сообщения в статусе «выполнено»
Сообщения висят в статусе отправки или с ошибкой
Старые файлы удаляются после успешной загрузки
Файлы накапливаются, каталог растёт
Контрольные документы совпадают в обеих базах
Есть расхождения по недавно изменённым объектам
Частые ошибки при удалении транспортных сообщений
Самая распространённая ошибка — удаление файла сообщения, которое ещё не загружено в базу-приёмник, без корректировки номеров. Отправитель считает сообщение доставленным, а приёмник его никогда не получит: данные расходятся, и обнаруживается это часто спустя недели.
Вторая ошибка — очистка всего каталога обмена «для надёжности». Вместе с проблемным файлом удаляются актуальные пакеты, и обмен приходится перенастраивать чуть ли не с нуля. Третья типичная ситуация — правка номеров сообщений только в одной базе, после чего синхронизация полностью блокируется ошибкой нумерации.
FAQ
Можно ли удалить транспортное сообщение без остановки обмена?
Файл из каталога можно убрать в любой момент, но делать это лучше в паузе между сеансами синхронизации, чтобы не удалить файл в момент его записи или чтения. Для регламентных заданий обмена желательно временно отключить расписание, удалить сообщение, выполнить обмен вручную и вернуть расписание.
Что делать, если после удаления появилась ошибка «неверный номер сообщения»?
Откройте узел плана обмена в обеих базах и сравните значения «Номер отправленного» и «Номер принятого». Установите их так, чтобы номер принятого в одной базе равнялся номеру отправленного в другой. После согласования номеров обмен возобновится.
Как найти каталог обмена, если настройку делал другой специалист?
Откройте настройку синхронизации и перейдите к параметрам подключения — там указан путь к каталогу, FTP-серверу или почтовому ящику. Если настройка недоступна, путь можно посмотреть в узле плана обмена через «Все функции» либо найти в журнале регистрации по тексту ошибок обмена.
Удалятся ли данные из базы, если удалить сообщение обмена?
Нет, данные, уже записанные в базу, не пострадают. Риск касается только тех изменений, которые содержались в удалённом сообщении и ещё не были загружены во вторую базу — они не перенесутся, пока их не зарегистрируют повторно.
Как избежать накопления старых сообщений в каталоге обмена?
В типовых механизмах успешно загруженные файлы удаляются автоматически. Если файлы копятся, проверьте, завершаются ли сеансы обмена без ошибок, и настройте регламентную очистку каталога средствами ОС с фильтром по дате, оставляя файлы за последние несколько дней.
Что важно запомнить
Перед удалением транспортного сообщения сделайте резервную копию и определите по журналу регистрации, какое именно сообщение вызывает сбой. Удаляйте точечно: файл из каталога, запись из очереди или регистрацию изменений. После действий проверьте успешность обмена и согласованность номеров сообщений в обеих базах.