Как исправить ошибку «Таблица не найдена РегистрСведений.ПрисоединенныеФайлы» при синхронизации УНФ 1.6 с Prom.ua?

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

При работе с типовыми решениями «1С:Підприємство» (или их современными аналогами на платформе BAS) пользователи часто сталкиваются с ситуацией, когда стандартные механизмы обмена перестают функционировать после очередного обновления конфигурации. Одной из наиболее распространенных проблем при синхронизации 1С:Управление нашей фирмой (УНФ) версии 1.6 с порталом Prom.ua является ошибка обращения к несуществующей таблице базы данных. Рассмотрим подробнее, почему это происходит и как реанимировать процесс выгрузки товаров.

Анализ причины ошибки и архитектурных изменений

Для начала разберем суть технического сбоя. Сообщение об ошибке {{142, 20}}: Таблица не найдена "РегистрСведений.ПрисоединенныеФайлы" прямо указывает на то, что в коде внешней или встроенной обработки присутствует запрос, который пытается получить данные из объекта, удаленного из структуры метаданных конфигурации.

Выясним причину таких радикальных изменений. В ранних редакциях УНФ (включая ветку 1.4 и первые релизы 1.6) Библиотека стандартных подсистем (БСП) использовала единый регистр сведений ПрисоединенныеФайлы для хранения ссылок на картинки, документы и файлы, привязанные к различным объектам системы. Однако, начиная с версии УНФ 1.6.9 и выше, архитектура хранения была пересмотрена в пользу повышения производительности и масштабируемости. Теперь для каждого справочника, который поддерживает хранение файлов, создается собственный подчиненный справочник. Например, для справочника Номенклатура был создан отдельный справочник НоменклатураПрисоединенныеФайлы.

Проанализируем ситуацию: обработка обмена с Prom.ua, написанная под старый стандарт, продолжает «стучаться» в старую дверь (общий регистр), которой в версии 1.6.9.1 больше не существует. Именно поэтому настройка подключения и сопоставление категорий работают корректно (они используют API и другие таблицы), а этап формирования файла выгрузки с картинками обрывается с ошибкой.

Решение 1: Исправление кода запроса в Конфигураторе

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

  1. Откроем базу в режиме Конфигуратор.
  2. Найдем внешнюю обработку (или встроенную в составе конфигурации) «Обмен с личным кабинетом».
  3. Перейдем в модуль обработки и найдем строку 142 (согласно тексту ошибки). В этой области расположен текст запроса Query.
  4. Проанализируем текст запроса. Нам необходимо заменить конструкцию ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПрисоединенныеФайлы КАК ПрисоединенныеФайлы.
  5. Вместо этого мы должны использовать обращение к справочнику Справочник.НоменклатураПрисоединенныеФайлы.

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


// Старый вариант запроса:
// "ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПрисоединенныеФайлы КАК ПрисоединенныеФайлы
// ПО Номенклатура.Ссылка = ПрисоединенныеФайлы.Объект"

// Новый вариант запроса для УНФ 1.6.9+:
"ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НоменклатураПрисоединенныеФайлы КАК ПрисоединенныеФайлы
ПО Номенклатура.ФайлКартинки = ПрисоединенныеФайлы.Ссылка"

Важно помнить, что в новом механизме БСП связь часто идет через реквизит ФайлКартинки самого объекта Номенклатура, который хранит ссылку на элемент справочника присоединенных файлов. Также убедитесь, что в запросе выбираются корректные поля, такие как ПутьКФайлу или ДанныеФайла, в зависимости от того, как обработка упаковывает картинку в файл обмена.

Решение 2: Переход на формат выгрузки YML (Яндекс.Маркет)

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

Проанализируем преимущества этого подхода: Маркетплейс Prom.ua прекрасно умеет работать с форматом YML (Yandex Market Language). Этот формат является стандартом де-факто для интернет-торговли. В УНФ этот функционал обычно находится в разделе «Продажи» — «Прайс-листы» или через настройку интеграции с маркетплейсами.

Пошаговый алгоритм настройки:

  1. Перейдем в раздел настроек CRM или Продаж и найдем пункт «Выгрузка товаров в Яндекс.Маркет» (в украинских локализациях он может называться иначе, но суть остается прежней — формирование XML/YML файла).
  2. Создадим новую настройку выгрузки, выберем необходимые группы номенклатуры и установим отборы по остаткам и ценам.
  3. Укажем способ хранения файла (например, на диске или на FTP-сервере) либо получим прямую ссылку на формирование файла «на лету» (если это поддерживает ваш сервер).
  4. В личном кабинете Prom.ua в разделе «Импорт товаров» создадим новую ссылку на импорт, выбрав тип файла «YML/XML».
  5. Вставим полученную из 1С ссылку или загрузим сформированный файл.

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

Решение 3: Проблема «битых» ссылок и основного изображения

Даже если мы успешно поправили запрос, часто возникает сопутствующая проблема: в файле выгрузки отсутствуют ссылки на фотографии. Выясним причину этого явления.

В новых версиях УНФ 1.6 для каждого товара может быть прикреплено множество файлов, но только один из них должен быть назначен основным изображением. Если при загрузке картинок в 1С вы просто добавили файл в список, но не нажали кнопку «Использовать как основное», реквизит ФайлКартинки в справочнике Номенклатура останется пустым.

Рассмотрим, как это проверить: Откроем карточку любой позиции Номенклатура, перейдем в раздел «Файлы» или посмотрим на поле с картинкой. Если поле пустое, необходимо вручную или групповой обработкой назначить изображения основными. В коде запроса (Решение 1) мы должны ориентироваться именно на связь Номенклатура.ФайлКартинки, чтобы выгружать правильное фото, а не все подряд прикрепленные документы (например, сертификаты в формате PDF), которые Prom.ua не сможет отобразить.

Решение 4: Использование современного API (REST API Prom.ua)

Напоследок разберем самый технологичный вариант. Использование статических файлов (XML/YML) — это вчерашний день. Современный способ синхронизации подразумевает использование API. Существуют готовые модули интеграции от партнеров Prom, которые устанавливаются в 1С как расширения или внешние обработки.

Почему это лучше?

  1. Двусторонний обмен: Вы не только выгружаете товары, но и оперативно получаете заказы обратно в 1С.
  2. Актуальность данных: Остатки и цены обновляются практически мгновенно.
  3. Корректная работа с медиа: Модули, работающие через API, изначально спроектированы под актуальные релизы БСП и справочники НоменклатураПрисоединенныеФайлы.

Таким образом, если вы столкнулись с ошибкой РегистрСведений.ПрисоединенныеФайлы, у вас есть три пути: точечно исправить запрос в Конфигураторе, перейти на стандартный функционал формирования YML-прайсов или внедрить полноценный модуль обмена через API. Мы рекомендуем второй вариант как самый быстрый и бесплатный, либо третий — как наиболее надежный для активно развивающегося интернет-магазина.

← На главную