Получить файл из хранилища менеджера сервиса. Возвращает полное имя файла, полученного из файлового хранилища МС по его идентификатору.
// Возвращает полное имя файла, полученного из файлового хранилища МС по его идентификатору.
//
// Параметры:
// ИДФайла - УникальныйИдентификатор - идентификатор файла в файловом хранилище МС.
//
// Возвращаемое значение:
// Строка - полное имя извлеченного файла.
//
Функция ПолучитьФайлИзХранилищаМенеджераСервиса(Знач ИДФайла) Экспорт
ОписаниеФайла = Неопределено;
АдресМенеджераСервиса = ВнутреннийАдресМенеджераСервиса();
Если НЕ ЗначениеЗаполнено(АдресМенеджераСервиса) Тогда
ВызватьИсключение(НСтр("ru = 'Не установлены параметры связи с менеджером сервиса.'"));
КонецЕсли;
ПараметрыДоступаКХранилищу = Новый Структура;
ПараметрыДоступаКХранилищу.Вставить("URL", АдресМенеджераСервиса);
ПараметрыДоступаКХранилищу.Вставить("UserName", ИмяСлужебногоПользователяМенеджераСервиса());
ПараметрыДоступаКХранилищу.Вставить("Password", ПарольСлужебногоПользователяМенеджераСервиса());
Если ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.ПередачаДанных") Тогда
ПоддерживаемыеВерсии = ОбщегоНазначения.ПолучитьВерсииИнтерфейса(ПараметрыДоступаКХранилищу, "DataTransfer");
Если ПоддерживаемыеВерсии.Количество() > 0 Тогда
// В одной из версий БТС общий модуль ПередачаДанных был переименован в ПередачаДанныхСервер для разрешения конфликта имен.
// Для совместимости реализована поддержка обоих имен модулей.
Попытка
МодульПередачаДанных = ОбщегоНазначения.ОбщийМодуль("ПередачаДанныхСервер");
Исключение
МодульПередачаДанных = ОбщегоНазначения.ОбщийМодуль("ПередачаДанных");
КонецПопытки;
ОписаниеФайла = МодульПередачаДанных.ПолучитьИзЛогическогоХранилища(ПараметрыДоступаКХранилищу, "files", ИДФайла);
КонецЕсли;
КонецЕсли;
Если ОписаниеФайла = Неопределено Тогда
ОписаниеФайла = ПолучитьФайлИзХранилища(ИДФайла, ПараметрыДоступаКХранилищу, Истина, Истина);
КонецЕсли;
Если ОписаниеФайла = Неопределено Тогда
Возврат Неопределено;
КонецЕсли;
СвойстваФайла = Новый Файл(ОписаниеФайла.ПолноеИмя);
Если Не СвойстваФайла.Существует() Тогда
Возврат Неопределено;
КонецЕсли;
// Менеджер сервиса устанавливает исходному файлу атрибут "Только чтение".
// Унаследованный атрибут снимается, чтобы файл можно было удалить.
СвойстваФайла.УстановитьТолькоЧтение(Ложь);
Возврат СвойстваФайла.ПолноеИмя;
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
ПоместитьФайлВХранилищеМенеджераСервиса (БСП)
ВыгрузитьОбластьВХранилищеМС (БСП)
ПолучитьФайлИзХранилищаВСервисе (БСП)
ПолучитьПроксиМенеджераСервиса (БСП)
ПолучитьПроксиИнформационногоЦентра (БСП)
ПолучитьПроксиЦентраИдей (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)