27.10.2016, 11:18 | #1 |
Участник
|
Progress bar при операции Confirm в форме Puchase order.
Добрый день! Не так давно начал изучать AX 2012, на работе начали давать небольшие задания. Никак не могу разобраться со следующим: имеется форма PurchTable, на которой есть кнопка подтверждения(Confirm) покупки. При подтверждении покупки, временами из за очень больших объемов покупок, приходится ждать процесса подтверждения, при этом AX не подает никаких признаков работы, кроме уведомления о обработке в трее. Меня попросили добавить в сие действо строку состояния, какого она должна быть вида не указали, просто чтобы работники видели что, что нибудь происходит. Я пробовал уже по всякому, но все дело в том что, прогресс бар не отображается, код обрабатывается, все покупки подтверждаются, но прогресс не отображается никак. использовал класс SysoperationProgress. Я подозреваю что все это работает на сервере, но клиенту не отображается, т е я чего то недопонимаю и не могу до этого никак допереть. Класс с которым работает форма FormLetterService.
Использую ax 2012, билд ядра 6.3.164.0 |
|
27.10.2016, 14:07 | #2 |
Участник
|
У пользователей и у вас в тесте, вероятно, включено выполнение бизнес-логики в CIL. Это нормально, так и должно быть, так бизнес-логика выполняется быстрее. Однако, при этом отсутствует штатная возможность с сервера нарисовать "градусник" на клиенте - это by design. Можно разве что где-нить до начала выполнения FormLetter в CIL попытаться нарисовать "градусник", а потом его скрыть, но обновляться значения в нем штатно не будут.
|
|
27.10.2016, 15:14 | #3 |
Участник
|
Да, все выполняется в CIL...честно признаюсь я подозревал что из за этого и не работает. Существует ли вообще возможность сдедлать при таких условиях прогресс бар? или вообще наглухо нельзя? если так, тогда как поступить
|
|
27.10.2016, 15:51 | #4 |
Боец
|
Пролема даже глубже. Выполнение в CIL вы можете отключить в настройках пользователя (временно, для теста). ProgressBar это сильно не вдохновит. По-началу он нарисуется, но как только вы переключитесь между окнами и обратно, он тут же перестанет обновляться и система примет такой же подвисший вид как и в первом случае. Это древняя проблема прогресс бара в аксапте. Он работает в однопоточном режиме и виснет всегда. К сожалению, готового решения особо никто не предложил.
|
|
28.10.2016, 10:56 | #5 |
Участник
|
С ваших уст, да начальнику в уши Спасибо большое за помощь! Удачи
|
|
31.10.2016, 21:25 | #6 |
Участник
|
Цитата:
http://alexvoy.blogspot.ca/2013/12/h...-progress.html
__________________
Felix nihil admirari |
|
31.10.2016, 21:28 | #7 |
Участник
|
ну, так и кружи его на сервере, а показывай через таблицу батчей. оно там так изначально и сделано, только не работает из-за косяка, на который судя по всему просто всем наплевать. я пофиксил.
__________________
Felix nihil admirari |
|
01.11.2016, 09:30 | #8 |
Участник
|
могу предложить, чтобы пользователи не смотрели в зависшую аксапту, для больших заказов, запускать подтверждение в пакетном режиме, по окончании обработки пользователь получит уведомление
|
|
|
За это сообщение автора поблагодарили: S.Kuskov (2). |
01.11.2016, 16:38 | #9 |
Участник
|
Цитата:
__________________
Felix nihil admirari |
|
|
За это сообщение автора поблагодарили: gl00mie (1). |
03.11.2016, 13:51 | #10 |
Участник
|
спасибо за помощь всем, постараюсь что нибудь придумать
|
|