Загрузить (БСП)

Автор: 1С
ОбщийМодуль.АсинхронноеПолучениеДанных
БСП

Загрузить. Записывает данные в логическое хранилище.

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

   	Задание = ДобавитьЗаданиеПодготовкиДанных(ИдентификаторДанных, ИдентификаторПараметров, Параметры);
    ИдентификаторЗадания = Задание.УникальныйИдентификатор();
    РегистрыСведений.СвойстваЗаданий.Установить(Задание);
    Результат = Новый Структура;
    Результат.Вставить(Словарь.ПолеХранилище(), ОчередьЗаданийВнешнийИнтерфейс.ИдентификаторХранилища());
    Результат.Вставить(Словарь.ПолеИдентификатор(), Строка(ИдентификаторЗадания));
    Ответ[Словарь.ПолеРезультат()] = Результат;
    
    Возврат Ответ;
    
КонецФункции

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

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

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

Загрузить (БСП)

ЗагрузитьИзФайла (БСП)

ЗагрузитьСообщения (БСП)

ЗагрузитьКомпонентуИзФайла (БСП)

ЗагрузитьКонтекстОбъекта (БСП)

TurboConf - расширение Конфигуратора 1С