Как исправить ошибку «Ошибка при создании временного каталога» при синхронизации между УТ 11 и БП 3.0?

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

При настройке синхронизации данных между конфигурациями «Управление торговлей 11» и «Бухгалтерия предприятия 3.0» пользователи часто сталкиваются с критической ошибкой: «Обработка: ТранспортСообщенийОбменаFTP: Ошибка при создании временного каталога. Каталог временных файлов не существует». Ситуация осложняется тем, что даже при использовании протокола FTP система настойчиво требует наличия локального пути для временного хранения файлов (буфера). Рассмотрим подробно, почему возникает эта ошибка в серверном варианте работы 1С и как её устранить.

Проверка параметров подключения в интерфейсе программы

Первым делом проанализируем настройки самого узла синхронизации. Зачастую ошибка кроется в том, что в мастере настройки остался «хвост» от старых параметров, которые не видны при обычном просмотре. Выполним следующие действия:

  1. Перейдем в раздел Администрирование — Синхронизация данных — Настройки синхронизации.
  2. Выберем нужную настройку и нажмем кнопку Настроить параметры подключения.
  3. Даже если вы используете транспорт через FTP-ресурс, обратите внимание на вкладку параметров для Windows (локальный или сетевой каталог).
  4. Убедитесь, что поле «Каталог» либо заполнено корректным существующим путем на сервере, либо полностью очищено.

Важно понимать: библиотека стандартных подсистем (БСП) в момент выгрузки сначала формирует файл во временной папке на диске сервера, а уже затем отправляет его по FTP. Если в поле Каталог сообщений синхронизации для Windows прописан путь к диску, которого нет на сервере (например, диск D:, когда база переносилась с локального компьютера), 1С выдаст ошибку отсутствия каталога.

Настройка прав доступа для службы сервера 1С

Проанализируем ситуацию с правами доступа. В серверном варианте код выполняется от имени пользователя, под которым запущен агент сервера 1С:Предприятие (обычно это USR1CV8 или системная учетная запись LocalSystem).

Разберем, какие папки необходимо проверить и создать вручную:

  1. Общая временная папка Windows: Проверьте наличие прав «Полный доступ» для пользователя сервера 1С на каталог C:\Windows\Temp. Именно туда платформа часто пытается поместить XML-сообщения обмена.
  2. Профиль системной службы: Если сервер работает под LocalSystem, пути к временным файлам могут отличаться. Проверьте существование следующих директорий:

Для 64-битной платформы:

C:\Windows\System32\config\systemprofile\AppData\Local\Temp

Для 32-битной платформы:

C:\Windows\SysWOW64\config\systemprofile\AppData\Local\Temp

Внимание: папки внутри systemprofile (например, AppData) часто отсутствуют по умолчанию. Их необходимо создать вручную и предоставить права пользователю службы 1С. Без этого метод ИмяВременногоФайла() может возвращать пути, к которым у системы нет доступа.

Очистка «битых» путей в регистре сведений

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

Выполним следующие шаги для проверки:

  1. Откроем Все функции (или «Функции для технического специалиста»).
  2. Найдем регистр сведений Настройки транспортных сообщений обмена.
  3. Проанализируем записи для вашего узла обмена. Особое внимание уделите колонке, отвечающей за путь в Windows.
  4. Если там указан старый или несуществующий путь, его необходимо исправить.

Если программный доступ к регистру ограничен, можно воспользоваться встроенной обработкой «Групповое изменение реквизитов», чтобы найти и очистить некорректные значения в этом регистре для конкретного узла.

Проверка через отладчик (для специалистов)

Если вышеописанные методы не помогли, проанализируем ситуацию с помощью отладчика. Ошибка часто возникает в процедурах БСП при инициализации транспорта. Посмотрим на пример логики, которая может вызывать сбой:


// Пример логики в типовых конфигурациях
ПутьККаталогу = СокращеннаяВыборка.КаталогОбменаWindows;
Если ПустоеЗначение(ПутьККаталогу) Тогда
    ПутьККаталогу = КаталогВременныхФайлов();
КонецЕсли;

Если Не ФС.СуществуетДиректория(ПутьККаталогу) Тогда
    // Здесь возникает исключение, если путь из настроек 
    // или системный Temp недоступен
    ВызватьИсключение "Каталог временных файлов не существует";
КонецЕсли;

Как мы видим, система сначала приоритетно берет путь из настроек узла (тот самый «Каталог сообщений синхронизации»), и только если он пуст — обращается к системному значению КаталогВременныхФайлов(). Основная «ловушка» заключается в том, что в старых версиях УТ 11 и БП 3.0 этот параметр мог сохраняться в скрытых константах, которые не всегда корректно обновляются при изменении способа связи на FTP.

Дополнительные факторы: антивирус и дисковые квоты

Не забудем проверить внешние факторы, которые могут блокировать работу сервера 1С:

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

← На главную