При работе с типовыми решениями «1С:Підприємство» (или их современными аналогами на платформе BAS) пользователи часто сталкиваются с ситуацией, когда стандартные механизмы обмена перестают функционировать после очередного обновления конфигурации. Одной из наиболее распространенных проблем при синхронизации 1С:Управление нашей фирмой (УНФ) версии 1.6 с порталом Prom.ua является ошибка обращения к несуществующей таблице базы данных. Рассмотрим подробнее, почему это происходит и как реанимировать процесс выгрузки товаров.
Для начала разберем суть технического сбоя. Сообщение об ошибке {{142, 20}}: Таблица не найдена "РегистрСведений.ПрисоединенныеФайлы" прямо указывает на то, что в коде внешней или встроенной обработки присутствует запрос, который пытается получить данные из объекта, удаленного из структуры метаданных конфигурации.
Выясним причину таких радикальных изменений. В ранних редакциях УНФ (включая ветку 1.4 и первые релизы 1.6) Библиотека стандартных подсистем (БСП) использовала единый регистр сведений ПрисоединенныеФайлы для хранения ссылок на картинки, документы и файлы, привязанные к различным объектам системы. Однако, начиная с версии УНФ 1.6.9 и выше, архитектура хранения была пересмотрена в пользу повышения производительности и масштабируемости. Теперь для каждого справочника, который поддерживает хранение файлов, создается собственный подчиненный справочник. Например, для справочника Номенклатура был создан отдельный справочник НоменклатураПрисоединенныеФайлы.
Проанализируем ситуацию: обработка обмена с Prom.ua, написанная под старый стандарт, продолжает «стучаться» в старую дверь (общий регистр), которой в версии 1.6.9.1 больше не существует. Именно поэтому настройка подключения и сопоставление категорий работают корректно (они используют API и другие таблицы), а этап формирования файла выгрузки с картинками обрывается с ошибкой.
Если мы обладаем навыками программирования или имеем в штате специалиста, самый правильный путь — это адаптация кода обработки под новую структуру данных. Рассмотрим по шагам, как это реализовать:
Query.ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПрисоединенныеФайлы КАК ПрисоединенныеФайлы.Справочник.НоменклатураПрисоединенныеФайлы.Посмотрим на пример того, как примерно должен выглядеть исправленный блок запроса в коде:
// Старый вариант запроса:
// "ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПрисоединенныеФайлы КАК ПрисоединенныеФайлы
// ПО Номенклатура.Ссылка = ПрисоединенныеФайлы.Объект"
// Новый вариант запроса для УНФ 1.6.9+:
"ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НоменклатураПрисоединенныеФайлы КАК ПрисоединенныеФайлы
ПО Номенклатура.ФайлКартинки = ПрисоединенныеФайлы.Ссылка"
Важно помнить, что в новом механизме БСП связь часто идет через реквизит ФайлКартинки самого объекта Номенклатура, который хранит ссылку на элемент справочника присоединенных файлов. Также убедитесь, что в запросе выбираются корректные поля, такие как ПутьКФайлу или ДанныеФайла, в зависимости от того, как обработка упаковывает картинку в файл обмена.
Разберем ситуацию, когда вмешательство в программный код нежелательно или невозможно. В конфигурации 1С:Управление нашей фирмой существует штатный, более современный механизм формирования прайс-листов.
Проанализируем преимущества этого подхода: Маркетплейс Prom.ua прекрасно умеет работать с форматом YML (Yandex Market Language). Этот формат является стандартом де-факто для интернет-торговли. В УНФ этот функционал обычно находится в разделе «Продажи» — «Прайс-листы» или через настройку интеграции с маркетплейсами.
Пошаговый алгоритм настройки:
Этот метод исключает использование устаревших внешних обработок и гарантирует, что 1С будет корректно подтягивать основное изображение товара, так как стандартный функционал выгрузки в XML обновляется фирмой «1С» вместе с конфигурацией.
Даже если мы успешно поправили запрос, часто возникает сопутствующая проблема: в файле выгрузки отсутствуют ссылки на фотографии. Выясним причину этого явления.
В новых версиях УНФ 1.6 для каждого товара может быть прикреплено множество файлов, но только один из них должен быть назначен основным изображением. Если при загрузке картинок в 1С вы просто добавили файл в список, но не нажали кнопку «Использовать как основное», реквизит ФайлКартинки в справочнике Номенклатура останется пустым.
Рассмотрим, как это проверить:
Откроем карточку любой позиции Номенклатура, перейдем в раздел «Файлы» или посмотрим на поле с картинкой. Если поле пустое, необходимо вручную или групповой обработкой назначить изображения основными. В коде запроса (Решение 1) мы должны ориентироваться именно на связь Номенклатура.ФайлКартинки, чтобы выгружать правильное фото, а не все подряд прикрепленные документы (например, сертификаты в формате PDF), которые Prom.ua не сможет отобразить.
Напоследок разберем самый технологичный вариант. Использование статических файлов (XML/YML) — это вчерашний день. Современный способ синхронизации подразумевает использование API. Существуют готовые модули интеграции от партнеров Prom, которые устанавливаются в 1С как расширения или внешние обработки.
Почему это лучше?
НоменклатураПрисоединенныеФайлы.Таким образом, если вы столкнулись с ошибкой РегистрСведений.ПрисоединенныеФайлы, у вас есть три пути: точечно исправить запрос в Конфигураторе, перейти на стандартный функционал формирования YML-прайсов или внедрить полноценный модуль обмена через API. Мы рекомендуем второй вариант как самый быстрый и бесплатный, либо третий — как наиболее надежный для активно развивающегося интернет-магазина.