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

По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Эти процедуры используются?
НачатьУстановкуРасширенияРаботыСФайлами
НачатьПодключениеРасширенияРаботыСФайлами
https://its.1c.ru/db/pubv8devui/content/249/hdoc
НачатьУстановкуРасширенияРаботыСФайлами
НачатьПодключениеРасширенияРаботыСФайлами
(4) Нет. Они обязательны?
Используется
НачатьПомещениеФайловНаСервер(ЗавершениеВызов,,,ДиалогПомещенияФайлов , ЭтаФорма.УникальныйИдентификатор);
Описание варианта метода:
Начинает помещение файлов, показывая диалог выбора файлов из локальной файловой системы во временное хранилище.
В веб-клиенте расширение работы с файлами не требуется.
Используется
НачатьПомещениеФайловНаСервер(ЗавершениеВызов,,,ДиалогПомещенияФайлов , ЭтаФорма.УникальныйИдентификатор);
Описание варианта метода:
Начинает помещение файлов, показывая диалог выбора файлов из локальной файловой системы во временное хранилище.
В веб-клиенте расширение работы с файлами не требуется.
&НаКлиенте
Процедура ЗагрузитьФайлы(Команда)
ЗавершениеВызов = Новый ОписаниеОповещения("ЗавершениеВызов" , ЭтотОбъект);
Фильтр = "xml файлы |*.xml";
ДиалогПомещенияФайлов = новый ПараметрыДиалогаПомещенияФайлов("Выберите файлы для загрузки",Истина , Фильтр);
НачатьПомещениеФайловНаСервер(ЗавершениеВызов,,,ДиалогПомещенияФайлов , ЭтаФорма.УникальныйИдентификатор);
КонецПроцедуры
&НаКлиенте
Процедура ЗавершениеВызов(ПомещенныеФайлы, ДополнительныеПараметры) Экспорт
МассивСсылокНаФайлы = Новый Массив;
Если ПомещенныеФайлы = Неопределено Тогда
Возврат;
КонецЕсли;
Для каждого ПереданныйФайл Из ПомещенныеФайлы Цикл
МассивСсылокНаФайлы.Добавить(ПереданныйФайл.СсылкаНаФайл);
КонецЦикла;
Если МассивСсылокНаФайлы.Количество() > 0 Тогда
ЗавершениеВызовМассивСсылокНаФайлы = Новый ОписаниеОповещения("ЗавершениеВызовМассивСсылокНаФайлы" , ЭтотОбъект);
НачатьПомещениеФайловНаСервер(ЗавершениеВызовМассивСсылокНаФайлы, , ,МассивСсылокНаФайлы , ЭтаФорма.УникальныйИдентификатор);
КонецЕсли;
КонецПроцедуры
Показать
(7) Зачем вы повторно помещаете файлы на сервер в процедуре ЗавершениеВызов: Даже не так, зачем вообще помещать файлы на сервер, если на сервере вы с ними не работаете?
Если МассивСсылокНаФайлы.Количество() > 0 Тогда
ЗавершениеВызовМассивСсылокНаФайлы = Новый ОписаниеОповещения("ЗавершениеВызовМассивСсылокНаФайлы" , ЭтотОбъект);
НачатьПомещениеФайловНаСервер(ЗавершениеВызовМассивСсылокНаФайлы, , ,МассивСсылокНаФайлы , ЭтаФорма.УникальныйИдентификатор);
КонецЕсли;
(8) Обработка, в файловом и клиент-серверном варианте работает. На форме есть таблица значений для заполнения значениями файлов. При работе в тонком клиенте на веб-сервере эта форма не заполняется значениями. Методом НачатьПомещениеФайловНаСервер эту таблицу удалось заполнить, но теперь перестала работать процедура обработки файлов из таблицы значений.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот