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