HelpF.pro

Создать, заменить, записать файл в Хранилище Значения

Код 1C v 8.х
 Функция СоздатьФайлВХранилище(ЛокПолноеИмяФайла,ЛокНаименованиеЭлемента)Экспорт
Попытка
ЛокХранилище = Новый ХранилищеЗначения(Новый ДвоичныеДанные(ЛокПолноеИмяФайла));
Исключение
Возврат Null;
КонецПопытки;
ЛокСправочникХЗН = Справочники.ХранилищеДополнительнойИнформации.СоздатьЭлемент();
ЛокСправочникХЗН.Наименование = ЛокНаименованиеЭлемента;
ЛокСправочникХЗН.Хранилище = ЛокХранилище;
Попытка
ЛокСправочникХЗН.Записать();
Возврат ЛокСправочникХЗН;
Исключение
Возврат Null;
КонецПопытки;
КонецФункции

Функция ЗаменаФайлаВХранилище(ЛокПолноеИмяФайла,ЛокНаименованиеЭлемента) Экспорт
Попытка
ЛокХранилище = Новый ХранилищеЗначения(Новый ДвоичныеДанные(ЛокПолноеИмяФайла));
Исключение
Возврат Null;
КонецПопытки;
ЛокСправочникХЗНСсылка = Справочники.ХранилищеДополнительнойИнформации.НайтиПоНаименованию(ЛокНаименованиеЭлемента);
Если ЛокСправочникХЗНСсылка.Пустая() Тогда
Возврат Null;
КонецЕсли;
ЛокСправочникХЗН = ЛокСправочникХЗНСсылка.ПолучитьОбъект();
ЛокСправочникХЗН.Хранилище = ЛокХранилище;
Попытка
ЛокСправочникХЗН.Записать();
Возврат ЛокСправочникХЗН;
Исключение
Возврат Null;
КонецПопытки;
КонецФункции

Функция ЗаписатьФайлИзХранилища(ЛокПолноеИмяФайла,ЛокНаименованиеЭлемента) Экспорт
Попытка
ЛокСпр = Справочники.ХранилищеДополнительнойИнформации.НайтиПоНаименованию(ЛокНаименованиеЭлемента);
ЛокСпр.Хранилище.Получить().Записать(ЛокПолноеИмяФайла);
Возврат Истина;
Исключение
Возврат Ложь;
КонецПопытки;
КонецФункции

Функция СоздатьВременныйФайлИзХранилища(ЛокНаименованиеЭлемента,ЛокРасширение)
ЛокПолноеИмяФайла = КаталогВременныхФайлов()+ПолучитьИмяВременногоФайла(ЛокРасширение);
Если ЗаписатьФайлИзХранилища(ЛокПолноеИмяФайла,ЛокНаименованиеЭлемента) Тогда
Возврат ЛокПолноеИмяФайла;
Иначе
Возврат Null;
КонецЕсли;
КонецФункции

Опубликовано на сайте: https://HelpF.pro
Прямая ссылка: https://HelpF.pro/faq/view/630.html