|
Возникла необходимость в реализации задержки(таймера) | ☑ | ||
---|---|---|---|---|
0
kit7772010
03.04.14
✎
18:12
|
Всем привет. Возникла необходимость в реализации задержки(таймера) для выполнения задачи в бизнес-процессе, далее БП. Есть Определенная последовательность действий в БП при выполнении которых должно пройти время. Т.е. чтобы человек который стартовал БП мог уйти от компьютера, а следующая по карте задача выполнилась с определенным интервалом. БП на упр. формах.
|
|||
1
kit7772010
03.04.14
✎
18:14
|
вот скрин карты http://pixs.ru/showimage/Dlyaforuma_7536669_11531401.jpg
|
|||
2
Heckfy
03.04.14
✎
18:18
|
||||
3
Wobland
03.04.14
✎
18:34
|
предлагаю Сигнал(). замерить длительность звучания, разделить нужное время задержки на него, выводить в цикле
|
|||
4
wade25
03.04.14
✎
18:46
|
(0) Ужасное решение, не взлетит. Я как понимаю, у Вас БП идет по параллельным веткам и нужно ожидание одного этапа от другого?
|
|||
5
Лефмихалыч
03.04.14
✎
18:48
|
может просто не стартовать процесс, пока он не нужен?
|
|||
6
y22-k
03.04.14
✎
18:54
|
(0) к времени сервера привязаться если время меньше время начала + время паузы тогда не продолжать
|
|||
7
y22-k
03.04.14
✎
18:55
|
(6) хотя это шляпа мне кажется
|
|||
8
Лефмихалыч
03.04.14
✎
18:56
|
предлагаю не маяться муйнёй, а вместо этого запускать процесс регламентным заданием, когда в системе появляется что-то, что однозначно говорит о необходимости старта процесса.
|
|||
9
Лефмихалыч
03.04.14
✎
18:58
|
а, или загвоздка не в том, чтобы задержка была, а втом, чтобы задача САМА выполнилась?
Тогда ее надо абресовать на служебного пользователя и регзаданием мониторить наличие задач этого пользователя и при наличии делать, что нужно и их выполнять. |
|||
10
kit7772010
03.04.14
✎
20:38
|
вот карта конкретного БП http://pixs.ru/showimage/BPTaymerjp_9283911_11533501.jpg
|
|||
11
Лефмихалыч
03.04.14
✎
20:41
|
(10) достаточно добавить срок в задачу и регламентное задание, которое будет пасти этот срок и стартовать процессы по обработке нарушений срока.
Не изобретайте волосопедов, возьмите Документооборот, там это и многое другое реализовано |
|||
12
kit7772010
03.04.14
✎
20:42
|
Мысли по поводу регл задания были, просто думал может есть какая-то альтернатива.
|
|||
13
Лефмихалыч
03.04.14
✎
20:48
|
скажу больше - в ДО вот это "подождать до срока, потом отправить клюяузу" можно сделать, не открывая конфигуратор, с любым процессом
|
|||
14
MadHead
03.04.14
✎
20:58
|
Я бы сделал через обработчик ожидания. При выполнении задачи стартуешь обработчик ожидания с однократным выполнением с таймером в 3 секунды. в нему уже продолжаешь работу. Единственное что иногда это может оказаться не 3 секунды, но я думаю не смертельно
|
|||
15
MadHead
03.04.14
✎
20:59
|
на сервере можно и фоновое стартовать
|
|||
16
Лефмихалыч
03.04.14
✎
21:01
|
(14) угу. А потом объясняй начальнику, что он не имеет права закрывать окно 1С после выполнения свой задачи, как минимум 3 часа к ряду
|
|||
17
Tateossian
04.04.14
✎
00:00
|
Процедура глВремя_Задержка(чСекунд) Экспорт
ИмяПутьСкрипта = КаталогПользователя()+"sleep.js"; Скрипт = СоздатьОбъект("Текст"); Скрипт.ДобавитьСтроку("WScript.Sleep("+Строка(1000*чСекунд)+");"); Скрипт.Записать(ИмяПутьСкрипта); cmdLine="wscript.exe "+ИмяПутьСкрипта; WshShell = СоздатьОбъект("WScript.Shell"); WshShell.Run(cmdLine, 0, -1); КонецПроцедуры Вот отсюда http://kb.mista.ru/article.php?id=98. |
|||
18
romix
04.04.14
✎
01:48
|
///////////////////////////////////////////////////////////////////////
Процедура sleep(КолМиллесекунд) Экспорт wsh=Новый COMОбъект("WScript.Shell"); wsh.run("ping -n 1 -w "+Формат(КолМиллесекунд,"ЧГ=")+" 0.0.0.1",0,-1); КонецПроцедуры |
|||
19
romix
04.04.14
✎
01:48
|
Также можно использовать ПодключитьОбработчикОжидания(<ИмяПроцедуры>, <Интервал>, <Однократно>)
|
|||
20
Arbeiten
04.04.14
✎
09:58
|
(19) А разве это будет работать без запущенного клиента?
|
|||
21
kit7772010
04.04.14
✎
10:29
|
Да но эти функции зависят от ОС, если будет Linux, то походу только регл задания помогут.
|
|||
22
kit7772010
04.04.14
✎
10:30
|
(20) , тем более это не будет работать если клиент вырубится
|
|||
23
kit7772010
04.04.14
✎
17:23
|
Документооборот 8 КОРП, редакция 1.3 (1.3.3.5), в этом релизе конфы, в демке, в лоб не вижу таймера, может чет не то?
|
|||
24
kit7772010
04.04.14
✎
17:50
|
Насколько я понял это делается в РС НастройкаОтложенногоСтартаБизнесПроцессов, а потом регл задание уже обрабатывает все БП с отложенным стартом?
|
|||
25
kit7772010
04.04.14
✎
17:57
|
Но это отложенный старт БП, а как быть с точкой маршрута? если не весь БП, а только 1 задачу надо стартовать отложенной.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |