Как передать файл с клиента на сервер асинхронно. Ну вот чтоб вообще асинхронно. #804085


#0 by sem4cnt
Добрый день! Пишу алгоритм для передачи файлов с клиента на сервер. Столкнулся с тем, что функции, заявленные 1С как асинхронные, таковыми не являются. У нас пользователи грузят в 1С-ку большие файлы до 1Гб и пока какая-нибудь "асинхронная" ПоместитьФайлы отработает - пользователь курит у монитора. А хотелось бы, чтобы он мог в этот момент что-то делать в открытой форме. Что делать? Кто как выходил их такой ситуации?
#1 by Вафель
у 1с однопоточная асинхронность. Асинхронно только в очередь помещаются
#2 by Господин ПЖ
в фоновую задачу запихнуть?
#3 by mszsuz
НачатьПомещениеФайла?
#4 by Вафель
на клиенте нет фоновых задач. Переходи на веб клиент, там вроде форма должна быть доступна
#5 by sem4cnt
Пробовал. Она тоже виснет до полной загрузки файла :(
#6 by sem4cnt
Фоновую задачу можно запустить только с сервера, а мне на клиенте надо файл забрать.
#7 by Вафель
Можно запустить новую 1ску, но правда события по завершению не получишь
#8 by YFedor
А нужно передать в определенное место, т.е. с привязкой к какому-то справочнику, документу ... или просто на сервер выложить?
#9 by ptiz
Пусть юзер асинхронно через проводник копирует файл в сетевую шару.
#10 by eklmn
поподробней, кажется у тебя тут проблемы с алгоритмом
#11 by eklmn
поподробней, кажеться у тебя тут проблемы с алгоритмом
#12 by sem4cnt
Просто на сервер для последующей обработки.
#13 by eklmn
обработки кем,чем? просто так ничего не бывает
#14 by Вафель
пусть копируют в папку на сервере
#15 by YFedor
Пользователи складывают в папочку, как пишет , регламентное задание на сервере обрабатывает
#16 by Господин ПЖ
если просто копировать - зачем через 1с пропускать?
#17 by sem4cnt
Нет у них доступа к серверу. Только через 1С грузят файлы.
#18 by Asmody
Кстати вот, интересно, ПолеHTMLДокумента в своем потоке выполняется или нет?
#19 by YFedor
яндекс диск
#20 by Вафель
ftp
#21 by Вафель
Даже из 1с можно клиента фтп с параметрами запускать и он будет в фоне перекачивать
#22 by МимохожийОднако
Я однажды делал так, что на сервер ползёт файл с другим расширением. А когда файл загрузился, то меняю расширение на нужное. Можно конечно и имя менять, если на него завязано.
#23 by Fragster
поле html документа и http сервис в той же 1ске, принимающий файл. правда, пока файл не передастся, форму с полем html документ закрывать нельзя
#24 by X Leshiy
Отличный пример ларингопроктологии :)
#25 by Юрий Лазаренко
Можно еще через com открывать невидимое окно IE и из него загружать файл на http-сервис. Тогда можно и 1С полностью закрывать, передача не прервется.
#26 by Лефмихалыч
большие файлы так передают только чудаки
#27 by lubitelxml
dropbox не предлагать?
#28 by PiotrLoginov
"пока какая-нибудь "асинхронная" ПоместитьФайлы отработает - пользователь курит у монитора" - очень интересная информация. Проверю на досуге. Покажу пользователю общую форму "ДлительнаяОперация", а затем начну "помещение" файла из пути на клиенте, указанном пользователем. Неужели прога зависнет, если файл большой, на время копирования файла по сети? Ну что ж, тогда не использовать "помещение", а копировать файл другими средствами языка, например КопироватьФайл
#29 by Автоном
Если нужно прям действительно асинхронно - используйте сторонние утилиты командной строки вызывая их из 1с. Вызвали, передали параметры, и будет она качать ваш файл отдельным потоком, никак не касаясь работы 1с. А средствами языка - хоть тресни, но идеала не получится, так уж 1с реализовала асинхронное выполнение.
#30 by Автоном
А к самому серверу где размещен сервер 1с им доступ не нужен. Просто нужен доступ к серверу передачи файлов - например -FTP или HTTP.
#31 by sem4cnt
ага, зависнет :(
#32 by Torquader
Клиент к серверу может установить только одно соединение, так что или несколько клиентов - запускать нового для передачи файлов или для работы пользователя или сторонняя программа. При желании, на сервере подымается Web-сервис и в него через отдельный код (можно даже из отдельно запущенной 1С с локальной пустой базой) загружается файл. А можно действительно асинхронно - порезать файл на много маленьких кусочков и передавать через обработку ожидания - тогда и пользователь поработать сможет.
#33 by Юрий Лазаренко
Да не надо резать, гиговые файлы уходят по локалке в веб-сервис 1С из браузера за секунды, уже проверяли.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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