1c8 пример. Прикрепить файл word к договору.

Простой пример кода, как программно прикрепить файл к объекту. В качестве объекта, к которому прикреплен файл, в примере приведен договор.

Вообще файл может быть любого типа, а не не только word (.doc, docx). Это может быть и приложение (.exe или .dll и т.д.) или фильм (.avi) или файл чертежа AutoCad (.dwg). В базе он хранится в двоичном виде в ХранилищеЗначения.

Так выглядит результат:

1c прикрепить файл word к договору

Так выглядит открытый прикрепленный файл:

1c прикрепить файл word к договору

Сами данные записываются в информационную базу в ХранилищеЗначения в двоичном представлении.

Элемент справочника ХранилищеДополнительнойИнформации связывает объект, к которому прикрепляются файлы (данные) и сами данные, записанные в ХранилищеЗначения.

1c Прикрепить файл word к договору. Элемент справочника ХранилищеДополнительнойИнформации

Так выглядит исходный код в Конфигураторе.

1c Прикрепить файл word к договору

Код примера:

// Пример. Прикрепить Файл doc к договору
Процедура ПрикрепитьФайлКДоговору(Кнопка)  	
	
	// данные, помещаемые в хранилище 
	ПолныйПутьФайла = "c:\123.docx";
	
	// объект, к которому прикрепляем данные
	ДоговорСсылка = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор №1234");
	
	// долучаем двоичное (бинарное) представление данных
	ДвоичныеДанные = Новый ДвоичныеДанные(ПолныйПутьФайла);	
	
	// получаем новый элемент хранилища с данными в двоичном представлении
	Хранилище = новый ХранилищеЗначения(ДвоичныеДанные);
	
	// получаем новый элемент ХранилищеДополнительнойИнформации
	ХранилищеДопИнф = Справочники.ХранилищеДополнительнойИнформации.СоздатьЭлемент();
	
	// устанавливаем свойства элемента ХранилищеДополнительнойИнформации
	ХранилищеДопИнф.Наименование = ПолныйПутьФайла;
	ХранилищеДопИнф.ВидДанных = Перечисления.ВидыДополнительнойИнформацииОбъектов.Файл;
	ХранилищеДопИнф.ИмяФайла = ПолныйПутьФайла;
	ХранилищеДопИнф.Объект = ДоговорСсылка;
	ХранилищеДопИнф.Хранилище = Хранилище;
	
	// сохраняем новый элемент в базу
	ХранилищеДопИнф.Записать();
	
КонецПроцедуры


Скачать код примера




Рекламный блок:

Предлагаем решение Ваших задач 1С.

Внедрение 1С:

Доработка и сопровождение 1С:

Ориентировочная стоимость работ программиста 1С : 500 р. за 1 час работы.

Пишите: j008@j008.ru

Звоните: 8 916 710 83 51 Ольга