Записки программиста 1с

Загрузка картинок в элемент справочника 1с. Например фотографии сотрудника.

Загрузка картинок в 1с зависит от конфигурации (типовая или нет), в которую планируется загрузить изображение.

Способ программной загрузки картинок в 1С зависит от того, какая конфигурация используется — самописная (где вы сами управляете реквизитами) или типовая на базе БСП (УТ 11, ERP, УНФ, Комплексная автоматизация, КА, Розница), где файлы привязываются через специальные справочники.

Загрузка картинок в пустую( или самописанную ) конфигурацию 1С.

В этом случае у справочника (например, Номенклатура) создан реквизит Картинка с типом ХранилищеЗначений.

Загрузка картинок в 1с
загрузка картинки в 1с

добавление файла pdf

&НаСервере
Процедура Команда1НаСервере(путь)
	// Готовим файл и помещаем его в хранилище
    ИмяФайлаНаДиске="C:\Users\Vladimir\Desktop\"+объект.Файл.Ссылка+"."+объект.Файл.Расширение;
	//ИмяФайлаНаДиске = "C:\Users\Vladimir\Desktop\Ганзюк (1).pdf";//объект.ПутьКФайлу;//"C:\Users\v.burmistrov\Downloads\ффд12.pdf";	
ДвоичныеДанные = Новый ДвоичныеДанные(ИмяФайлаНаДиске);
ВременноеХранилище = ПоместитьВоВременноеХранилище(ДвоичныеДанные);
// Подготоваливаем описание файла заполнив все необходимые параметры
ПараметрыФайла = РаботаСФайлами.ПараметрыДобавленияФайла();
ПараметрыФайла.Автор = Пользователи.ТекущийПользователь();
ПараметрыФайла.ВладелецФайлов =объект.Ссылка ;
ПараметрыФайла.ИмяБезРасширения = СтрЗаменить(ИмяФайлаНаДиске,".pdf","");
ПараметрыФайла.РасширениеБезТочки = "pdf";
// Используем функцию БСП и добавляем файл к объекту
РаботаСФайлами.ДобавитьФайл(ПараметрыФайла, ВременноеХранилище);
	
КонецПроцедуры

&НаКлиенте
Процедура Команда1(Команда)
	ПутьКФайлу="";
	ИмяФайла="";
	//Если ПоместитьФайл(ПутьКФайлу,ИмяФайла,истина)=истина тогда
	путь =ПутьКФайлу+ИмяФайла;
	//Объект.ПутьКФайлу=путь;	
	//конецесли;
	Команда1НаСервере(путь);
КонецПроцедуры

Загрузка картинок в типовые конфигурации

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

Особенности работы на управляемых формах

  1. Клиент-Сервер: Напрямую передать путь к файлу вроде "C:\image.jpg" на сервер в метод Новый ДвоичныеДанные() нельзя, если код выполняется в клиент-серверном режиме (сервер 1С «не увидит» локальный диск вашего ПК).
  2. Как правильно сделать с клиента: Сначала на Клиенте нужно получить файл через НачатьПомещениеФайлаНаСервер() (или ПоместитьФайл()), передать полученный адрес временного хранилища на Сервер, и уже на Сервере извлекать двоичные данные.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *