как сохранить файл из диалога выбора файла в xml #774467


#0 by Svikator1
8.3.8.1675 Всем доброго времени суток. Помоги пожалуйста со следующим вопросом, просьба сразу тапками не кидать, т.к. уже гуглил, пробовал различные методы и т.д. Суть вопроса: пытаюсь поместить файл в формате xml во временное хранилище для дальнейшей передачи адреса на сервер, ничего не получается. При вызове процедур Поместитьфайл,Поместитьфайлы,ПоместитьВоВременноеХранилище выдаётся ошибка "Использование модальных окон в данном режиме запрещено!"(хм...вроде всё по книжке). Дальше погуглив нашёл примеры на сайте Чистова и других умных людей, что нужно использовать "ОписаниеОповещения",т.к. всё нужно делать без использования модальности, попробовав данный метод возникает та же самая ошибка на строке кода при создании Описания оповещения. Вопрос в следующем, есть ли вообще рабочий механизм для того чтобы поместить файл во временное хранилище?Если есть то можно ли привести пример для помещения файла. А то уже весь мозг сломал с этой модальностью))
#1 by Волшебник
запусти в толстом клиенте
#2 by Svikator1
Спасибо действительно помогло. Не сочтите за наглость, просто в продолжение темы: 1. А как передать параметры как это есть в "ДиалогВыбораФайла", допустим если я хочу открывать файл только определённого расширения или допустим использовать режим множественного выбора. В СП указано что для объекта "ОписаниеОповещения" есть дополнительные параметры, а какие параметры туда можно передавать не указано. 2. Как же быть на тонком клиенте или web? Или есть какие то ещё методы?
#3 by Nuobu
Такие методы есть: Свойство "Фильтр" у объекта "ДиалогВыбораФайлов".
#4 by Fragster
Глобальный контекст.НачатьПомещениеФайлов (Global context.BeginPuttingFiles) Глобальный контекст (Global context) НачатьПомещениеФайлов (BeginPuttingFiles) Синтаксис: НачатьПомещениеФайлов(<ОписаниеОповещения>, <ПомещаемыеФайлы>, <НаборПомещаемыхФайлов>, <Интерактивно>, <УникальныйИдентификаторФормы>) Параметры: Тип: ОписаниеОповещения. Содержит описание процедуры, которая будет вызвана после завершения со следующими параметрами: <ПомещенныеФайлы> – массив объектов типа ОписаниеПереданногоФайла или Неопределено, если файлы не получены. <ДополнительныеПараметры> - значение, которое было указано при создании объекта ОписаниеОповещения. <ПомещаемыеФайлы> (необязательный) Тип: Строка. Массив объектов типа ОписаниеПередаваемогоФайла. Каждый объект описывает получаемый файл: Хранение - расположение данных во временном хранилище; Имя - это локальный путь, по которому должен быть получен файл. Массив может быть заполнен полностью, в этом случае известен набор помещаемых файлов и адреса, по которым они должны быть сохранены. Массив может быть заполнен частично, у элементов массива заполнены только имена. В этом случае, набор помещаемых файлов определен, а места хранения неизвестны. Файлы будут размещены в новых временных хранилищах. Массив может быть не заполнен. В этом случае набор помещаемых файлов определяется по значениям остальных параметров метода (поиском по маске либо интерактивным выбором). Тип: ДиалогВыбораФайла; Строка. Определяет набор помещаемых файлов. Может быть задан строкой поиска для метода НайтиФайлы либо заранее подготовленным диалогом выбора файлов в режиме открытия файлов. Если параметр определен, то параметр <ПомещаемыеФайлы> должен быть не определен либо быть пустым массивом. Указывает использование интерактивного режима, при котором пользователю показывается диалог, в котором он может выбрать набор помещаемых файлов. Тип: УникальныйИдентификатор. Уникальный идентификатор формы, который можно получить с помощью свойства УникальныйИдентификатор управляемой формы. Файл помещается во временное хранилище и автоматически удаляется после удаления объекта формы. Если параметр не указан, помещенное значение будет удалено, после очередного запроса сервера из общего модуля, при контекстном и неконтекстном серверном вызове из формы, при серверном вызове из модуля команды или при получении формы. Описание: Начинает помещение набора файлов из локальной файловой системы во временное хранилище. Доступность: Тонкий клиент, веб-клиент, толстый клиент. См. также: Глобальный контекст, метод ПоместитьФайлы --------------------------------------------------------------------------------      Методическая информация
#5 by Fragster
диалог передавать в НаборПомещаемыхФайлов
#6 by Fragster
совет из в топку
#7 by Fragster
все-таки 8.3.8 на дворе
#8 by Svikator1
Всё получилось, файл получен. Только в процессе возник ещё небольшой вопрос. Почему если идти по шагам в отладчике то обе процедуры отрабатывать отрабатывают, а сам диалог выбора файла вызывается уже в самом конце процедуры нажатия кнопки и вызов "ОбработатьВыборФайла" тоже происходит в самом конце, не совсем понятно почему так происходит?
#9 by Svikator1
Я конечно ничего против не имею, только вот приходится вызовы процедур и функций идущих после этих двух строчек кода, переносить в процедуру "ОбработатьВыборФайла", иначе они обрабатываются не своевременно и некорректно.
#10 by Fragster
так и задумано. асинхронность. боль. ведь async/await - это же так сложно.
#11 by Fragster
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С