Имя: Пароль:
1C
1С v8
Отображение на форме этапов выполнения процедуры на сервере.
0 GreyTim
 
09.02.18
16:01
Имеем обработку на УФ. Нажимаем кнопку на форме и уходим в процедуру НаСервере, в которой можно выделить некие 4 этапа. Хотелось бы, что бы после успешного (или нет) выполнения каждого этапа на форме отображалась надпись о том, что этот этап пройден (или нет). Проблема, что при выполнении строк вида Элементы.Реквизит.Значение = "Пишем что все ок или не ок" на форме ничего не меняется. В итоге видим обновление значения реквизита только после выхода из процедуры.
1 drcrasher
 
09.02.18
16:03
на выбор:
- запуск в 4 этапа с клиента
- фоновое и мониторить временное хранилище на результаты серверного кода
2 GreyTim
 
09.02.18
16:06
Спасибо. Подтвердили мои опасения. Думал, что все можно сделать как-то красивее... ан нет.
3 drcrasher
 
09.02.18
16:14
(2) ну можно сервер взаимодействия заюзать, но еще больший изврат
4 Сияющий в темноте
 
09.02.18
16:15
Код на сервере вернется на клиента только после завершения,поэтому,придется ходить несколько рпз на сервер.
фоновое задание упрется в открытую транзакцию,чтобы оно работало и оповещало без подтвержбения транзакции,между клиен ом и фоновым заданием нужен дополнительный канал
1с предлагает для этого систему общения,но оно еще не совсем то,что нужно
просто,чтобы было такое общение,1с должна отойти от парадигмы запрос ответ,но они пока к этому не готовы
5 GreyTim
 
09.02.18
16:22
Спасибо, народ. Вот еще статейку нашел с разбором и примерами кода. http://xn----1-bedvffifm4g.xn--p1ai/articles/2017-09-08-display-progress-of-long-operations/
6 vde69
 
09.02.18
16:26
(0) делал сабж
(1) между вызовыми нужно делать паузу, что-бы форма успела перисоватся
7 drcrasher
 
09.02.18
16:36
(6) понятно, что паузу надо.
потому я за фоновое. сидит себе дёргает сервак и не жужжит
AdBlock убивает бесплатный контент. 1Сергей