Имя: Пароль:
1C
1С v8
Как вызвать обработку прерывания пользователя из серверной процедуры?
,
0 FullMoon
 
15.10.14
16:44
Есть процедура или функция,выполняемая на сервере, для которой необходима возможность прерывания. ОбработкаПрерыванияПользователя() выполняется только на клиенте, но при попытке засунуть её в клиентскую процедуру и вызвать из серверной ругается, что процедура не определена.
Нагуглил решения типа http://infostart.ru/public/76309/, но трудность в том, что нужно переписывать на управляемые формы кучу обработок, и хотелось бы сделать это "малой кровью" - без растаскивания кода по процедурам. Я не догоняю какое-то простое решение? или может быть есть альтернатива процедуре ОбработкаПрерыванияПользователя()?
1 butterbean
 
15.10.14
16:46
да, организуй свой цикл на клиенте, с запросами к серверу, но это будет дольше и надо ли оно такое??
2 Жан Пердежон
 
15.10.14
16:46
(0) если нужно тупо прерывание работы, а не индикатор - смотри типовые отчеты;
если все же индикатор - так ведь никто не говорил, что будет легко.
3 FullMoon
 
15.10.14
16:48
(2) Индикатор не нужен, обхожусь "состоянием", реализуемым в серверной процедуре без заморочек.
(1) В пруфлинке как раз об этом речь, но мне это не надо))
4 Banned
 
15.10.14
16:49
Выполняй свою процедуру фоновым заданием.
5 FullMoon
 
15.10.14
16:49
(1) Как раз этого и хочу избежать.
6 FullMoon
 
15.10.14
16:51
(4) Пихать в фоновое задание точечно применяемые обработки, например, по формированию остатков по счету, это ИМХО гораздо больший мазохизм.
7 Fish
 
15.10.14
16:51
(5) Получай ВСЕ необходимые данные с сервера одним вызовом, а потом обрабатывай на клиенте.
8 H A D G E H O G s
 
15.10.14
16:56
(7) Плохая идея.
9 H A D G E H O G s
 
15.10.14
16:57
(7) Особенно для тонкого клиента.
10 Fish
 
15.10.14
16:58
(8) Не спорю, но если так уж необходима ОбработкаПрерыванияПользователя(), тогда имхо всяко лучше, чем делать 100500 обращений к серверу в цикле.
11 FullMoon
 
15.10.14
17:01
(7) Есть например обработка, получающая остатки по счету и создающая ручную операцию с этими остатками. Задача в её адаптации для УФ. Она чуть менее чем полностью будет выполняться на сервере, и это потребует наряду с рисованием УФ минимального изменения кода обычной формы. И трудность только с обработкой прерывания. Если же циклы вытаскивать на клиент, это увеличит объем работы по переводу кучи обработок (в основном, относительно простых) на УФ на порядок.
12 Fish
 
15.10.14
17:04
(11) А зачем вам вообще нужна эта обработка прерывания? Без неё никак не получается что ли?
13 FullMoon
 
15.10.14
17:07
(12) Без неё можно, и я на неё тупо забью, если не получится эффективно решить вопрос. Но в некоторых обработках она всё же будет полезна.
2 + 2 = 3.9999999999999999999999999999999...