Разработка и Конфигурация · 11 мин
Коллекция картинок в 1С: что это и как с ней работать
Что такое коллекция картинок в 1С, где хранятся стандартные изображения платформы, как добавить свои картинки и использовать их в формах, кнопках и отчётах.
Коллекция картинок в 1С — это набор графических изображений, которые используются для оформления интерфейса прикладного решения: иконки кнопок командных панелей, пиктограммы справочников и документов, картинки в табличных полях, отчётах и предупреждениях. Платформа 1С:Предприятие поставляется со встроенной библиотекой стандартных изображений, а разработчик может дополнять её собственными картинками на уровне конфигурации.
Разработчики и администраторы сталкиваются с коллекцией картинок в нескольких ситуациях: при создании новой команды с собственной иконкой, при настройке внешнего вида формы, при выводе статусов в списках (например, зелёная/жёлтая/красная индикация) и при оформлении печатных форм. Понимание того, как устроена библиотека картинок, избавляет от типичных ошибок — размытых иконок, неработающих ссылок на изображения и конфликтов при обновлении конфигурации.
В этой статье разберём, что представляет собой коллекция картинок в 1С, где она хранится, как обратиться к стандартным изображениям из кода, как добавить собственные картинки в конфигурацию и какие ограничения нужно учитывать.
Что такое коллекция картинок в 1С
В терминологии 1С существует два уровня хранения изображений. Первый — встроенная библиотека картинок платформы, которая доступна в любой конфигурации без дополнительной настройки. Она содержит сотни стандартных пиктограмм: «Записать», «Провести», «Создать», «Найти», стрелки, знаки вопроса, информационные значки и другие элементы, привычные пользователям типовых решений.
Второй уровень — объект конфигурации «Общие картинки» (в дереве конфигуратора: Общие → Общие картинки). Сюда разработчик добавляет собственные изображения: логотипы компании, специфические иконки для отраслевых команд, индикаторы состояний. Каждая общая картинка получает имя, по которому к ней обращаются из встроенного языка и из свойств элементов формы.
Кроме того, картинки могут храниться непосредственно в данных: в реквизитах справочников (например, фотография товара или сотрудника) или в регистрах сведений. Это уже не «коллекция» в интерфейсном смысле, а прикладное хранение бинарных данных, и подход к работе с ними отличается.
Где хранятся стандартные картинки платформы
Стандартная библиотека картинок — часть платформы 1С:Предприятие, она не хранится в информационной базе и не занимает место в конфигурации. Набор изображений определяется версией платформы: при обновлении платформы состав библиотеки может пополняться, а внешний вид отдельных пиктограмм — меняться в соответствии с новыми стандартами интерфейса.
Посмотреть доступные стандартные картинки можно в конфигураторе: откройте свойства любой кнопки формы, перейдите к свойству «Картинка» и нажмите кнопку выбора. В диалоге на вкладке «Из библиотеки» отобразится полный список стандартных изображений с поиском по имени. Это самый быстрый способ подобрать подходящую иконку, не запоминая названия.
В тонком клиенте и веб-клиенте платформа автоматически подбирает подходящее представление картинки. Учтите: если вы зашили имя стандартной картинки в код, при смене версии платформы внешний вид иконки может измениться — это нормально и не является ошибкой.
Как обратиться к картинке из встроенного языка
Для программного обращения к изображениям используется объект БиблиотекаКартинок. Типичный сценарий — назначить картинку кнопке, декорации или ячейке табличного документа динамически, в зависимости от логики программы.
// Стандартная картинка платформы
Элементы.КнопкаОтправить.Картинка = БиблиотекаКартинок.ОтправитьЭлектронноеПисьмо;
// Собственная общая картинка конфигурации
Элементы.ДекорацияСтатус.Картинка = БиблиотекаКартинок.СтатусЗаказа_Зеленый;
// Проверка кода состояния в списке
Если Статус = 1 Тогда
КартинкаСтатуса = БиблиотекаКартинок.Информация;
КонецЕсли;Если указанное имя не существует ни в библиотеке платформы, ни в общих картинках конфигурации, обращение вернёт пустую картинку без сообщения об ошибке. Это коварное поведение: опечатка в имени проявится только визуально — иконка просто не отобразится. Поэтому имена общих картинок лучше копировать из конфигуратора, а не набирать вручную.
Для вывода картинки в табличный документ (например, в печатную форму) используется другой механизм — область рисунка табличного документа, куда изображение помещается методом Рисунок или через объект Картинка, созданный из файла или двоичных данных.
Как добавить собственную картинку в конфигурацию
Собственные изображения добавляются в конфигураторе через ветку Общие → Общие картинки. Порядок действий прост, но есть нюансы с форматами и размерами, которые влияют на итоговое качество отображения.
- 1Откройте конфигуратор и в дереве конфигурации разверните ветку «Общие» → «Общие картинки».
- 2Нажмите «Добавить», задайте имя картинки латиницей без пробелов (например, ЛоготипКомпании) — по этому имени она будет вызываться из кода.
- 3В свойстве «Картинка» нажмите кнопку выбора и загрузите файл изображения (PNG, JPG, BMP и другие поддерживаемые форматы).
- 4При необходимости загрузите несколько вариантов размеров для разных режимов отображения.
- 5Сохраните конфигурацию, обновите конфигурацию базы данных и проверьте отображение в режиме предприятия.
Для иконок команд предпочтителен формат PNG с прозрачным фоном. Размер подбирается под место использования: для кнопок командных панелей обычно достаточно небольшой пиктограммы, а логотип для печатной формы должен иметь достаточное разрешение, чтобы не выглядеть размытым при печати. Слишком большие файлы увеличивают размер конфигурации и время загрузки форм — оптимизируйте изображения перед загрузкой.
Где используются картинки: типовые сценарии
Наиболее частый сценарий — назначение иконки команде. В конфигураторе откройте команду объекта или общую команду и укажите картинку в соответствующем свойстве. Команда с понятной пиктограммой быстрее находится пользователем в командной панели формы.
Индикация состояний в списках
В динамических списках и таблицах форм часто выводят колонку с картинкой состояния: оплачен/не оплачен, согласован/отклонён. Реализуется это через колонку типа «Картинка» с привязкой к полю данных, где хранится индекс или имя картинки, либо через условное оформление с назначением картинки по условию.
Картинки в реквизитах объектов
Фотографии товаров, сотрудников, подписи руководителей хранятся в реквизитах с типом «ХранилищеЗначения», куда помещаются двоичные данные файла. На форме такая картинка выводится через поле картинки с адресом во временном хранилище. Это уже прикладная разработка: потребуется код загрузки файла, помещения в хранилище и получения навигационной ссылки для отображения.
Сравнение вариантов хранения
Подходит для стандартных действий (записать, найти, печать). Не требует настройки, но набор и вид иконок зависят от версии платформы.
Подходят для интерфейсных иконок и логотипов. Хранятся в конфигурации, требуют аккуратности при обновлениях.
Подходят для пользовательских изображений: фото товаров, сканов документов. Увеличивают объём базы, требуют кода для загрузки и вывода.
Типичные ошибки и ограничения
Самая распространённая ошибка — опечатка в имени картинки при обращении из кода. Платформа не сообщает об ошибке, а просто не выводит изображение, поэтому проверять результат нужно визуально в режиме предприятия, а не только синтаксическим контролем модуля.
Ещё одно ограничение касается веб-клиента: не все операции с файлами изображений, привычные в толстом клиенте, доступны в браузере без расширения работы с файлами. Если решение должно работать в веб-клиенте, тестируйте загрузку и отображение картинок именно там.
Как проверить результат
После добавления или изменения картинок выполните контрольную проверку в режиме предприятия. Откройте формы, где используются изображения, и убедитесь, что иконки отображаются корректно во всех целевых клиентах: тонком, толстом и веб-клиенте, если он используется.
Как проверить результат
Пиктограмма видна, не размыта, фон прозрачный
Пустая кнопка или белый/чёрный квадрат вместо фона
Картинка появляется при выполнении условия
Картинка отсутствует без сообщений об ошибке — вероятна опечатка в имени
Собственные общие картинки сохранились
Картинки пропали — обновление выполнено загрузкой без объединения
Если картинка используется в печатной форме, дополнительно распечатайте тестовый документ или сохраните его в PDF: на экране изображение может выглядеть приемлемо, а при печати оказаться зернистым из-за низкого разрешения.
Что важно запомнить
Коллекция картинок в 1С — это встроенная библиотека платформы и общие картинки конфигурации. Стандартные изображения вызываются через БиблиотекаКартинок по имени, собственные добавляются в конфигураторе и требуют аккуратности при обновлениях. Для пользовательских фото используйте реквизиты с двоичными данными, для доработок типовых решений — расширения конфигурации.
Частые вопросы
Где посмотреть полный список стандартных картинок платформы?
Откройте в конфигураторе свойства любого элемента, у которого есть свойство «Картинка» (например, кнопки формы), нажмите кнопку выбора и перейдите на вкладку «Из библиотеки». Там доступен полный список с поиском по имени. Состав библиотеки зависит от версии платформы.
Почему картинка не отображается, хотя код выполняется без ошибок?
Обращение к несуществующему имени в БиблиотекаКартинок не вызывает исключения — возвращается пустая картинка. Проверьте имя на опечатки, скопировав его из конфигуратора, и убедитесь, что общая картинка с таким именем действительно добавлена и конфигурация базы данных обновлена.
Какой формат и размер выбрать для иконок команд?
Оптимален PNG с прозрачным фоном. Размер подбирайте под место использования: для командных панелей достаточно небольшой пиктограммы, чрезмерно большое разрешение только увеличит конфигурацию без выигрыша в качестве.
Можно ли хранить фотографии товаров в общих картинках?
Технически можно, но это неправильно: каждое новое фото потребует изменения конфигурации. Для пользовательских изображений создайте реквизит с типом «ХранилищеЗначения» в справочнике или регистр сведений и выводите картинку на форму через временное хранилище.
Пропадут ли мои картинки при обновлении типовой конфигурации?
При обновлении через сравнение и объединение собственные общие картинки обычно сохраняются, но при полной загрузке конфигурации из файла они будут потеряны. Храните исходные файлы отдельно и по возможности выносите доработки в расширение конфигурации.
Работают ли картинки в веб-клиенте?
Отображение картинок в веб-клиенте работает штатно, но операции с файлами (загрузка с диска пользователя) требуют расширения работы с файлами или асинхронных методов помещения файлов. Тестируйте такие сценарии именно в браузере.