К статье
Практический материал

Справочники и Данные · 8 мин

Как добавить картинку в коллекцию в 1С

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

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

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

Как 1С хранит картинки: разбираемся перед загрузкой

В типовых конфигурациях на БСП (Библиотека стандартных подсистем) изображения хранятся как присоединённые файлы. Например, для номенклатуры существует служебный справочник «НоменклатураПрисоединенныеФайлы», где каждый элемент связан с конкретной карточкой товара. Одна из картинок помечается как основная и отображается в карточке и списках.

Физически файл может лежать в двух местах. Первый вариант — внутри информационной базы (в хранилище значений): файлы надёжно попадают в резервные копии, но база быстро растёт в размере, что замедляет выгрузку и обновление. Второй вариант — тома на диске: в базе остаётся только ссылка и путь, а сами файлы лежат в сетевой папке. Это разгружает базу, но требует отдельно настраивать доступ к папке и включать её в регламент бэкапа.

Добавление картинки через карточку элемента

Самый частый сценарий — прикрепить фото к товару вручную. Откройте карточку элемента справочника (например, «Номенклатура»), найдите область изображения или ссылку «Присоединённые файлы» / «Изображения». В большинстве типовых форм работают три способа: кнопка «Добавить» или «Присоединить», перетаскивание файла мышью прямо в область картинки, а также вставка из буфера обмена, если конфигурация это поддерживает.

После добавления нескольких изображений одно из них нужно назначить основным — именно оно показывается в списках, отчётах и на сайте при интеграции. Обычно это делается кнопкой «Установить основным» в списке присоединённых файлов либо выбором файла в поле «Файл картинки» карточки товара.

Порядок действий в типовой конфигурации
  1. 1
    Откройте карточку элемента справочника (товар, контрагент, сотрудник)
  2. 2
    Нажмите «Присоединить» или перетащите файл изображения в область картинки
  3. 3
    Дождитесь загрузки и проверьте, что файл появился в списке присоединённых
  4. 4
    Назначьте нужное изображение основным через «Установить основным»
  5. 5
    Запишите карточку и откройте список — картинка должна отображаться в превью

Массовая загрузка изображений в коллекцию

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

Перед массовой загрузкой приведите имена файлов к единому правилу: только артикул без пробелов и спецсимволов, либо код элемента. Проверьте форматы — безопаснее всего JPEG и PNG. Файлы весом по несколько мегабайт каждый при загрузке в базу заметно увеличат её объём, поэтому для больших каталогов имеет смысл предварительно уменьшить разрешение снимков до разумного для каталога уровня.

Программное добавление картинки: для разработчиков

Если конфигурация самописная или нужна интеграция, картинку добавляют кодом. Типовой подход в конфигурациях на БСП — использовать программный интерфейс работы с присоединёнными файлами: создать элемент справочника присоединённых файлов и поместить в него двоичные данные изображения. В простейших самописных решениях картинку кладут напрямую в реквизит типа «ХранилищеЗначения».

Упрощённый пример для реквизита-хранилища выглядит так: прочитать файл в двоичные данные, создать объект элемента справочника, присвоить реквизиту Новый ХранилищеЗначения(ДвоичныеДанные) и записать. Для БСП используется метод добавления присоединённого файла с указанием владельца, имени файла и расширения.

bsl
ДвоичныеДанные = Новый ДвоичныеДанные("C:\Images\tovar_001.jpg");
Объект = Справочники.Номенклатура.НайтиПоКоду("000123").ПолучитьОбъект();
Объект.ФайлКартинки = Новый ХранилищеЗначения(ДвоичныеДанные, Новый СжатиеДанных(9));
Объект.Записать();

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

Проверка результата и типичные ошибки

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

Частые проблемы: файл присоединён, но не назначен основным, поэтому в списках пусто; изображение добавлено в базу, хранящую файлы в томах, а папка тома недоступна с клиентского компьютера — тогда вместо картинки пустая рамка; неподдерживаемый формат (например, WebP или TIFF) загружается, но не отображается в тонком клиенте.

Типичные ошибки
01
Файл присоединён, но не назначен основным — в списках и на сайте картинка не выводится
02
Хранение в томах на диске включено, а сетевая папка недоступна пользователям — изображения «пропадают»
03
Загрузка файлов по 5–10 МБ в базу — база раздувается, замедляются бэкапы и обновления
04
Имена файлов с пробелами и кириллическими спецсимволами ломают автоматическое сопоставление при массовой загрузке
05
Попытка вставить картинку в табличную часть или колонку списка, где конфигурация вообще не предусматривает изображения

Ограничения и когда нужен разработчик

Штатный механизм присоединённых файлов покрывает большинство задач, но у него есть границы. В некоторых конфигурациях количество изображений на элемент не ограничено, однако выводить их умеют не все формы. Отображение картинок в динамических списках заметно нагружает клиент при больших выборках. Публикация изображений на сайт или в мобильное приложение требует отдельной настройки обмена — простое добавление файла в базу этого не обеспечивает.

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

Итог

Что важно запомнить

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

Частые вопросы

Почему картинка загружена, но не показывается в списке товаров?

Чаще всего изображение не назначено основным. Откройте список присоединённых файлов элемента и установите нужную картинку основной. Также проверьте, что в настройках списка включён показ изображений — не все формы отображают их по умолчанию.

Какие форматы изображений поддерживает 1С?

Гарантированно работают JPEG, PNG, GIF и BMP. Форматы WebP, HEIC и TIFF могут загрузиться как файл, но не отображаться в интерфейсе тонкого клиента. Перед загрузкой надёжнее конвертировать всё в JPEG или PNG.

Где лучше хранить картинки — в базе или на диске?

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

Можно ли добавить одну картинку сразу к нескольким элементам?

Штатно присоединённый файл привязывается к одному владельцу. Для массовой привязки одного изображения к группе товаров потребуется обработка или небольшая доработка: файл копируется в присоединённые файлы каждого элемента.

Картинка видна в 1С, но не выгружается на сайт. В чём причина?

Добавление файла в базу и выгрузка на сайт — разные механизмы. Проверьте настройки обмена с сайтом: какие изображения передаются, назначено ли изображение основным и не слишком ли велик файл для ограничений обмена.

Как удалить или заменить картинку в коллекции?

Откройте список присоединённых файлов элемента, выделите нужный файл и удалите его либо пометьте на удаление. Для замены проще добавить новое изображение, назначить его основным, а старое затем удалить — так карточка никогда не останется без картинки.