Почему возникает ошибка «Не найден файл обмена» в Агент Плюс и как её исправить?

Системный администратор 1С v8.3 (Обычные формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

При работе с мобильной системой «Агент Плюс» одной из самых распространенных преград для синхронизации данных является сообщение «Не найден файл обмена». Эта ошибка может возникать как на этапе выгрузки данных из учетной системы 1С, так и при попытке загрузки обновленных данных на мобильное устройство агента. Ситуация осложняется тем, что проблема может локализоваться на разных уровнях: в коде 1С, в сетевых настройках сервера или в параметрах безопасности ОС Android.

В этой статье мы подробно проанализируем основные причины возникновения данной ошибки и разберем по шагам алгоритм их устранения, опираясь на опыт технических специалистов и системных администраторов.

1. Проверка прав доступа и разрешений

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

На стороне сервера: Если база 1С работает в клиент-серверном варианте, выполнение кода по созданию файла обмена происходит от имени пользователя, под которым запущена служба rmngr (Агент сервера 1С). Выясним, имеет ли этот пользователь права на запись в папку, куда должен быть выгружен файл. Рекомендуется предоставить полные права пользователю USR1CV8 на соответствующий каталог.

На стороне Android (Scoped Storage): Рассмотрим особенности современных версий Android (10 и выше). В этих системах действует технология «песочницы». Даже если файл физически находится во внутренней памяти, приложение Агент Плюс может его «не видеть» без специального разрешения. Пройдем по шагам для исправления:

  1. Зайдем в настройки смартфона в раздел «Приложения».
  2. Найдем в списке «Агент Плюс».
  3. Перейдем в пункт «Разрешения» (или «Доступ к файлам»).
  4. Убедимся, что включен параметр «Доступ ко всем файлам» (Allow management of all files).

2. Настройка путей: Клиент-серверное несоответствие

Разберем ситуацию, упомянутую в обсуждении: база находится на сервере, а путь к файлу указывается клиентский. Это классическая ошибка настройки. Рассмотрим подробнее, как это работает в 1С.

Если в настройках обмена указан путь типа C:\Exchange\data.xml, то сервер 1С будет искать эту папку на своем локальном диске «C:», а не на компьютере бухгалтера или администратора, который нажал кнопку «Выгрузить». Чтобы избежать этой коллизии, проанализируем следующие рекомендации:

3. Режим работы FTP-соединения

Если обмен данными настроен через FTP-сервер, выясним причину, по которой файл может не обнаруживаться, даже если он там есть. Основная проблема часто кроется в выборе между активным и пассивным режимами передачи данных.

Проанализируем механику: в активном режиме сервер инициирует соединение с клиентом, что часто блокируется брандмауэрами. В пассивном режиме инициатором выступает клиент. Если в настройках 1С установлен один режим, а сервер жестко требует другой, список файлов (команда LIST) может возвращаться пустым, и система выдаст ошибку «Не найден файл обмена».

Посмотрим на пример настройки программного кода (если вы используете кастомную обработку), где важно явно указать режим:


// Пример настройки пассивного режима для FTP-соединения
ПассивныйРежим = Истина;
Соединение = Новый FTPСоединение(СерверFTP, ПортFTP, Логин, Пароль, Прокси, ПассивныйРежим);

Обязательно проверьте аналогичную галочку «Пассивный режим» в настройках самого приложения Агент Плюс на мобильном устройстве.

4. Идентификация агента и именование файлов

Система Агент Плюс ищет файл с конкретным именем. Обычно это имя формируется по шаблону, включающему GUID мобильного устройства или уникальный код агента. Рассмотрим ситуацию: в 1С выгрузка прошла успешно, файл agent_001.xml создан, но мобильное приложение сообщает, что файл не найден.

Выясним причину: скорее всего, в настройках мобильного приложения указан идентификатор, отличный от того, который записан в справочнике «Мобильные устройства» (или «Агенты») в 1С. Проанализируем соответствие:

  1. Проверьте GUID устройства в настройках самого приложения Агент Плюс (раздел «Информация»).
  2. Сверьте его со значением в 1С.
  3. Убедитесь, что в именах файлов не используются кириллические символы, которые могут быть некорректно интерпретированы сервером или мобильной ОС. Рекомендуется использовать только латиницу.

5. Технические помехи: Брандмауэры и антивирусы

Рассмотрим ситуацию, когда файл создается, но блокируется внешним ПО. Антивирусы часто сканируют новые файлы в папках обмена и на время проверки «запирают» их. Если Агент Плюс пытается обратиться к файлу именно в этот микромомент, он получит отказ в доступе, что будет интерпретировано как отсутствие файла.

Решение: добавьте папку обмена в исключения антивируса на сервере и проверьте настройки брандмауэра (Firewall) на портах 20, 21 (FTP) или тех портах, по которым идет обмен по HTTP/HTTPS.

6. Временные файлы и разрыв сессии

Иногда файл обмена бывает настолько объемным, что при нестабильной связи процесс записи прерывается. Посмотрим на алгоритм работы: сначала система может создавать временный файл с расширением .tmp, а по завершении переименовывать его в целевой .xml. Если произошел разрыв, в папке останется только .tmp, который мобильное приложение игнорирует. Система поиска закономерно сообщит: «Не найден файл обмена».

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


// Увеличение таймаута соединения
Соединение = Новый FTPСоединение(СерверFTP, ПортFTP, Логин, Пароль, , Истина, 60); // 60 секунд

Итоги

Для эффективного решения проблемы «Не найден файл обмена» мы рекомендуем действовать последовательно: сначала проверить физическое наличие файла в папке, затем права доступа службы сервера и мобильного приложения, и в последнюю очередь — тонкие настройки сетевых протоколов (FTP) и идентификаторов устройств. Тщательный анализ этих факторов позволяет устранить ошибку в 99% случаев.

← На главную