ЗанестиИнформациюФайлаВРегистр (БСП)

Автор: 1С
ОбщийМодуль.РаботаСФайламиСлужебныйВызовСервера
БСП

Занести информацию файла регистр. Записать в регистр сведений ФайлыВРабочемКаталоге информацию о пути файла.

// Записать в регистр сведений ФайлыВРабочемКаталоге информацию о пути файла.
//  Версия - СправочникСсылка.ВерсииФайлов - версия.
//  ПолныйПуть - Строка - полный путь файла.
//  ИмяКаталога - путь рабочего каталога.
//  НаЧтение - Булево - файл помещен на чтение.
//  РазмерФайла  - размер файла в байтах.
//  ВРабочемКаталогеВладельца - Булево - файл в рабочем каталоге владельца (а не в основном рабочем каталоге).
//
Процедура ЗанестиИнформациюФайлаВРегистр(Версия,
                                         ПолныйПуть,
                                         ИмяКаталога,
                                         НаЧтение,
                                         РазмерФайла,
                                         ВРабочемКаталогеВладельца) Экспорт
	ПолноеИмяФайла = ПолныйПуть;
	
	Если ВРабочемКаталогеВладельца = Ложь Тогда
		Если СтрНайти(ПолныйПуть, ИмяКаталога) = 1 Тогда
			ПолноеИмяФайла = Сред(ПолныйПуть, СтрДлина(ИмяКаталога) + 1);
		КонецЕсли;
	КонецЕсли;
	
	ЕстьПраваНаОбъект = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Версия, "Ссылка", Истина);
	
	Если ЕстьПраваНаОбъект = Неопределено Тогда
		Возврат;
	КонецЕсли;
	
	УстановитьПривилегированныйРежим(Истина);
	
	// Создать набор записей
	НаборЗаписей = РегистрыСведений.ФайлыВРабочемКаталоге.СоздатьНаборЗаписей();
	
	НаборЗаписей.Отбор.Файл.Установить(Версия.Ссылка);
	НаборЗаписей.Отбор.Пользователь.Установить(Пользователи.АвторизованныйПользователь());

	НоваяЗапись = НаборЗаписей.Добавить();
	НоваяЗапись.Файл = Версия.Ссылка;
	НоваяЗапись.Путь = ПолноеИмяФайла;

	Если РазмерФайла <> 0 Тогда
		НоваяЗапись.Размер = РазмерФайла;
	Иначе
		НоваяЗапись.Размер = Версия.Размер;
	КонецЕсли;

	НоваяЗапись.ДатаПомещенияВРабочийКаталог = ТекущаяДатаСеанса();
	НоваяЗапись.Пользователь = Пользователи.АвторизованныйПользователь();
	НоваяЗапись.НаЧтение = НаЧтение;
	НоваяЗапись.ВРабочемКаталогеВладельца = ВРабочемКаталогеВладельца;

	НаборЗаписей.Записать();
	
КонецПроцедуры

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

ЗанестиМаксимальныйНомерДляСканирования (БСП)

ПолучитьПолноеИмяФайлаИзРегистра (БСП)

ЗаписатьПолноеИмяФайлаВРегистр (БСП)

ИнформацияОФайлеОтсутствует (БСП)

УдалитьЗаписьИзРегистраДвоичныеДанныеФайлов (БСП)

УдалитьИзРегистра (БСП)

ПолучитьФайлИзХранилища (БСП)

КлючРазрешения (БСП)

ИнформацияОКомпонентеИзФайла (БСП)

TurboConf ИР адаптер 2.63