30.03.2009, 22:41 | #1 |
Участник
|
Set up of Alert in AX4
Всем приветю У меня такой вопрос: Как можно правильно настройть Alert чтобы получить сообщение и в Popups и по Е-mail ?
|
|
31.03.2009, 08:27 | #2 |
Программатор
|
поиск рулит
Настройка оповещений Send alerts to online users in AX 4.0 Скинул только 2 ссылки. Если в поиске набрать "Alerts", то там много чего интересного. Последний раз редактировалось Sada; 31.03.2009 в 08:30. |
|
31.03.2009, 10:14 | #3 |
Участник
|
Я бы для начала (до выхода в инет) почитал стандартный хелп.
__________________
Ivanhoe as is.. |
|
01.04.2009, 11:47 | #4 |
Участник
|
Я прочел как все зделать. Вопрос , какие классы должны быть в Batch чтобы при Processing после какихто изминений (допустим мы меняем Item name) заданый Alert сработал и отправлял бы сообщение по E-mail (я использовал класс SysEmailDistributor) и при Basic-Setup-Manage alert rule для заданого alert rule я бы видел View Alerts (здесь я использовал классы: EventJobCUD или EventJobDueDate). Эти классы это Jobs для Journal, caм Journal cидит в Batch Group и Batch Group в Batch List.
У меня две ситуациий : 1) Ставлю Batch Group в Batch list и после этого делаю Processing но AX client Блокируется 2) c начала Processing потом Ставлю Batch Group в Batch list и когда job executing то выскакивает ошибка: Error executing code: SysDictField object not initialized. Stack trace (S)\Classes\SysDictField\nullValue (S)\Data Dictionary\Maps\LogMap\Methods\getDataAslist - line 20 (S)\Classes\EventProcessorCUD\processUpdate - line 7 (S)\Classes\EventProcessorCUD\process - line 12 (S)\Classes\EventProcessorCUD\run - line 14 (S)\Classes\EventJobCUD\runCudEventsForUser - line 25 |
|
01.04.2009, 11:53 | #5 |
Программатор
|
Вы там что-то программируете штоли?
|
|
01.04.2009, 12:05 | #6 |
Участник
|
|
|
01.04.2009, 14:44 | #7 |
Участник
|
Почему так много нерусских слов?
Опишите пошагово ваши действия в Аксапте (в какой форме что нажимаете, в какой последовательности), возможно, вам кто-нибудь и сможет помочь.
__________________
Ivanhoe as is.. |
|
01.04.2009, 16:19 | #8 |
Участник
|
Цитата:
e-mail = user mail И для Alert ставлю значения: Receive alerts every (minutes) = 1 Pop-up link destination: = To alert Send alert as e-mail message = define on eachalert rule Show pop-ups = define on eachalert rule 2) Inventory Management - Items и в General для Item name right click и выбираю Create alert rule... 3) В окне Create alert rule - Items настраиваю : Event = has changed Alert me for = All records in Items Alert me when = no end date Alert me with: Subject = Field Item name in table Items has changed Message= item name was changed Alert who = userid Also alert me by: show pop-ups = true send e-mail = true 4) Basic -setup - batch groups создаю групу Alerts 5) Basic - setup - Batch - Journal types Здесь создаю новый Journal type (Alert) для которого в General задаю нужные классы: EventJobCUD, EventJobDueDate, SysEmailDistributor 6) Basic - setup - Batch - Journal names Создаю новый Journal (AL) который имеет Journal type = Alert Нажимаю Jobs и добавляю EventJobDueDate, SysEmailDistributor После этого нажимаю Processing и в Batch Journal Execution для Batch выбираю: Batch Processing = true Batch Group = Alerts Priority = 1 Здесь же в Batch Journal Execution нажимаю Recurrence и в окне Recurrence : No end date = true minutes = true count =1 После этих настроек в Batch Journal Execution нажимаю OK. 7) В Basic - inquires - batch list в списке вижу мой Alerts который имеет статус Waiting 8) Для оповощения по e-mail настраиваю шаблон: basic - setup - e mail templates и Outgoing server : Administration - Setup - E mail parameters 9) Запускаю Processing из Basic - Periodic - Batch - Processing 10) Меняю название для Item name и после заданой времени ничего не получаю, то есть я не оповощен ни по е-mail , ни pop-ups -ами. И даже в Basic - Setup - Alerts - manage alert rule для заданой alert rule при нажатий View alerts - никаких сообщениий нет. Что я делаю неправисльно подскажите пожалуста ? |
|
01.04.2009, 16:32 | #9 |
Участник
|
Для начала попробуйте без журналов пакетных заданий обойтись, после пункта 3:
1. Измените название номенклатуры. 2. Далее запустите руками Основное / Периодические операции / Оповещения / Изменение основных оповещений, в диалоге не указывайте пакетную обработку, запустите вручную. 3. Ждите минуту - должно появиться оповещение. 3.1. Если нету окна всплывающего - меню клиента Вид / Оповещения - там есть оповещение? 4. Для отсылки почты - Администрирование / Периодические операции / Обработка сообщений электронной почты / Пакет. 4.1. Если не пришла почта - смотрим список в Администрирование / Периодические операции / Обработка сообщений электронной почты / Состояние отправки сообщений - должно быть ваше письмо. Если п. 3.1. и 4.1. не показывают результата - тогда не знаю. Может приложение не рабочее? Глобальная компиляция выполнялась без ошибок?
__________________
Ivanhoe as is.. |
|
02.04.2009, 10:38 | #10 |
Участник
|
Цитата:
Сообщение от Ivanhoe
Для начала попробуйте без журналов пакетных заданий обойтись, после пункта 3:
1. Измените название номенклатуры. 2. Далее запустите руками Основное / Периодические операции / Оповещения / Изменение основных оповещений, в диалоге не указывайте пакетную обработку, запустите вручную. 3. Ждите минуту - должно появиться оповещение. 3.1. Если нету окна всплывающего - меню клиента Вид / Оповещения - там есть оповещение? 4. Для отсылки почты - Администрирование / Периодические операции / Обработка сообщений электронной почты / Пакет. 4.1. Если не пришла почта - смотрим список в Администрирование / Периодические операции / Обработка сообщений электронной почты / Состояние отправки сообщений - должно быть ваше письмо. Если п. 3.1. и 4.1. не показывают результата - тогда не знаю. Может приложение не рабочее? Глобальная компиляция выполнялась без ошибок? При 3.1 получаю ошибку: Error executing code: SysDictField object not initialized. Stack trace (S)\Classes\SysDictField\nullValue (S)\Data Dictionary\Maps\LogMap\Methods\getDataAslist - line 20 (S)\Classes\EventProcessorCUD\processUpdate - line 7 (S)\Classes\EventProcessorCUD\process - line 12 (S)\Classes\EventProcessorCUD\run - line 14 (S)\Classes\EventJobCUD\runCudEventsForUser - line 25 При 4.1 никаких ошибок не получаю но и е-mail тоже не получаю и в Периодические операции / Обработка сообщений электронной почты / Состояние отправки сообщений - нету никакого состояния. Такое ошущение что эти классы принимают неправильные значения и либо ничего не происходит либо вылетает ошыбка ... ? |
|
02.04.2009, 10:50 | #11 |
Участник
|
Проблема в указанной ошибке, т.е. процедура формирования оповещения (и на его основе почты) не отрабатывает. Начните с компиляции этих классов (указаны в инфологе), а лучше сделать глобальную компиляцию.
__________________
Ivanhoe as is.. |
|
02.04.2009, 12:20 | #12 |
Участник
|
Цитата:
Error executing code: SysDictField object not initialized. Stack trace (S)\Classes\SysDictField\nullValue (S)\Data Dictionary\Maps\LogMap\Methods\getDataAslist - line 20 (S)\Classes\EventProcessorCUD\processUpdate - line 7 (S)\Classes\EventProcessorCUD\process - line 12 (S)\Classes\EventProcessorCUD\run - line 14 (S)\Classes\EventJobCUD\runCudEventsForUser - line 25 ? |
|
02.04.2009, 13:09 | #13 |
Программатор
|
Тема похожа на помоги себе сам. Ставите точку останова где-то тут Data Dictionary\Maps\LogMap\Methods\getDataAslist - line 20. Моделируете ситуацию и понеслась.... душа в рай...
ЗЫ: Либо вы добавляли какие то поля и не промапили их в LogMap, либо еще что то. Четверки у меня щас нет(и не будет (. Так что тока догадки Последний раз редактировалось Sada; 02.04.2009 в 13:16. |
|
02.04.2009, 14:46 | #14 |
Участник
|
Попробуйте очистить таблицы, указанные в map.
__________________
Ivanhoe as is.. |
|
02.04.2009, 16:51 | #15 |
Участник
|
|
|
02.04.2009, 18:32 | #16 |
Участник
|
Я это никак не объясняю, меня там не было )
__________________
Ivanhoe as is.. |
|
02.04.2009, 20:06 | #17 |
Участник
|
Всем спасибо. Проблема решена. После удалении записей из EventCud table класс EventJobCud заработал без ошибочно. Проблема была в записях у которых field CudTableId содержал неверные ID таблицы. При попытке обращения к ним класс давал збой. Плюс к этому и за неправильных ID после запуска класса записи умножалися в геометрической прогресии .
|
|
23.06.2009, 19:47 | #18 |
Участник
|
Есть вопрос ? Есть ли какаята возможность отправить на е-mail userId того кто попался на rule не программируя ?
|
|
24.06.2009, 11:29 | #19 |
Участник
|
Если честно, не понял, что нужно сделать
Можно подробнее: Что отправить? На какой e-mail? Что значит "попался"?
__________________
Ivanhoe as is.. |
|
24.06.2009, 12:15 | #20 |
Участник
|
Я так понимаю, нужно, чтобы в сообщении фигурировали данные не только о том, что изменилось такое-то поле, но еще и код пользователя, который значение этого поля поменял. Кажется, штатно такая возможность не предусмотрена; можно в принципе допилить код, чтобы он воспринимал и обрабатывал какие-то макросы в тексте уведомлений.
|
|