Имя: Пароль:
   
1C
 
В форме документа выполнить длительную операцию
0 Momus
 
07.10.20
16:46
УФ, конфигурация на БСП. При записи документа в форме объекта делаю несколько соединений с вэб-сервисом и делаю какие-то операции. Как правильно оптимизировать мой выполняемый код, чтобы не тормозить обработку запись документа?
БСП позволяет выполнить код фоново, но для этого нужно разместить его в модуле в экспортной процедуре, я же не хочу уходить с формы.
1 Momus
 
07.10.20
16:49
"...не хочу уходить с формы" - меньше изменений хочу вносить в типовую конфигурацию
2 mikecool
 
07.10.20
16:57
фоновыезадания, регламенты...
3 fisher
 
07.10.20
17:06
А у тебя это что же, несвязанные события? Веб-сервис сбойнет - документ все равно записаться должен? Запись откатится - веб-сервис должен отработать?
4 fisher
 
07.10.20
17:07
Если связанные - тогда или синхронно, или на очередях. Контроль доставки какой-то быть должен.
5 Voronve
 
07.10.20
17:09
(0) Подписка
6 Momus
 
07.10.20
17:46
(3) выполняю свой код после записи документа. документ должен записываться всегда, вэб-сервис не должен мешать. Более того я хочу, чтобы и по времени запись документа осталась та же.
(5) можно подробнее? Не понял о чем речь. Подписка на событие?
7 Momus
 
07.10.20
17:48
(2) минимум изменений хочу внести в конфу. Соответственно свое фоновое задание добавлять не буду.
8 Voronve
 
07.10.20
17:48
(6) На событие
9 Momus
 
07.10.20
17:51
(8) так тоже самое ж выйдет, нет? запись документа будет точно такой же по времени как сейчас. Более того свой код я планировал выполнять только при записи из формы, а не при любой записи
10 Momus
 
07.10.20
17:57
Видимо придется в модуле менеджера свою процедура размещать для запуска с помощью бсп фонового задания. Думал может быть есть другой способ, про который я не знаю
11 fisher
 
07.10.20
17:57
(6) Если документ записался, а веб-сервис не отработал - это будет критично для системы или нет? Если критично, то без изменений не обойтись.
12 Momus
 
07.10.20
17:58
(11) некритично
13 fisher
 
07.10.20
18:04
(12) Тогда действительно можно через фоновое... Но как ты в сабже и писал, только на уровне правок формы этого сделать не получится...
14 Momus
 
07.10.20
18:05
(13) я вот и хотел узнать возможно ли это. Ответ "нет" это тоже ответ)
15 acht
 
07.10.20
18:07
(9) > запись документа будет точно такой же по времени как сейчас.

Как только "несколько соединений с вэб-сервисом" начнут подтормаживать из-за сети или загрузки web сервера, то никакой "точно такой же" не будет. А буджет затягивание транзакции с заблокированными данными для всех остальных.
16 acht
 
07.10.20
18:15
Только если ты собрался не дожидаться результатов фонового. Но, учитывая "Соответственно свое фоновое задание добавлять не буду." из (7), все еще запутанней
17 Momus
 
07.10.20
18:36
(16) не собирался дожидаться результатов. Не собирался добавлять свое регламентное задание
18 Momus
 
07.10.20
18:42
Да и в чем путаница? После записи документа нужно выполнить код, не блокируя работу пользователя, с минимальным количеством доработок типовой. Форма уже редактируется, поэтому весь код нужно разместить именно в ней. Если это невозможно, то решение я знаю, но без дополнительных изменений в конфе не обойтись, чего хотелось бы избежать
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший