AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.12.2011, 23:14   #1  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,342 / 3563 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Добрался до компа
Итак, делаем следующие действия:
1. Создаем файлик link.html со следующим текстом:
Цитата:
<html><a href=Dynamics://ERP?DrillDown_546>Dynamics://ERP?DrillDown_546</a></html>
Что будет до знака вопроса никому особо неинтересно. Главное - чтобы что-то было и совпало со значением в модуле \Основное\Настройка\Оповещения\Параметры оповещений в поле "Цель поисково-аналитической работы" (по-русски - EventParameters.DrillDownGroupId). И когда формируется ссылка - то текст до знака вопроса подставляется из этого поля
2. Убеждаемся в винде, что у нас с протоколом Dynamics:// сопоставлен файл AXHLink.exe (см. мой пост выше)
3. Убеждаемся, что в конфигурационной утилите клиента АХ выбрана та конфигурация, откуда была сгенерирована ссылка.
4. Заходим в АХ, в метод \Classes\Info\startup и на строчке if (startupCommand) ставим точку останова (самый верх метода)
5. Щелкаем по ссылке и отвечаем на идиотский вопрос, что разрешаем доступ к клиенту AX
Название: AXHLinkAccess.PNG
Просмотров: 3289

Размер: 12.1 Кб
6. Анализируем строку startupCommand, которая была передана в АХ. У меня это:
Цитата:
drilldown_546?ERP
7. Заходим в метод \Classes\SysStartupCmd\construct, смотрим (вверху), как разбирается эта строка. Запоминаем, что попало в переменную parm (546?ERP). Убеждаемся в инициализации класса \Classes\SysStartUpCmdDrillDown
8. Заходим в метод \Classes\SysStartUpCmdDrillDown\infoRun и смотрим, как разбирается переменная parm. Видим, как в строке
X++:
str alertId = EventDrillDownPoller::parseAlertId(parm);
получается alertId. А в строках
X++:
str navigationMark = EventDrillDownPoller::parseDrillDownNavigationMark(parm);
и
X++:
EventDrillDownPoller::checkDrillDownNavigationMark(navigationMark)
получается и проверяется этот параметр DrillDownGroupId
9. В строке
X++:
alertRecord = EventInbox::find(str2int64(alertId));
понимаем, что alertId - это не что иное, как EventInboxId, т.е. код записи (InboxId) в таблице входящих оповещений (та, которая открывается по колокольчику)

Ну и отвечая на вопрос - правильный синтаксис запуска клиента АХ в этом случае будет такой:

Client\Bin\ax32.exe -startupcmd=drilldown_546?ERP
__________________
Возможно сделать все. Вопрос времени
За это сообщение автора поблагодарили: EVGL (5), mnt_dx (1).
Старый 14.01.2014, 17:38   #2  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Цитата:
Сообщение от sukhanchik Посмотреть сообщение
Итак, делаем следующие действия:
1. Создаем файлик link.html со следующим текстом:

Что будет до знака вопроса никому особо неинтересно. Главное - чтобы что-то было и совпало со значением в модуле \Основное\Настройка\Оповещения\Параметры оповещений в поле "Цель поисково-аналитической работы" (по-русски - EventParameters.DrillDownGroupId). И когда формируется ссылка - то текст до знака вопроса подставляется из этого поля
2. Убеждаемся в винде, что у нас с протоколом Dynamics:// сопоставлен файл AXHLink.exe (см. мой пост выше)
3. Убеждаемся, что в конфигурационной утилите клиента АХ выбрана та конфигурация, откуда была сгенерирована ссылка.
4. Заходим в АХ, в метод \Classes\Info\startup и на строчке if (startupCommand) ставим точку останова (самый верх метода)
5. Щелкаем по ссылке и отвечаем на идиотский вопрос, что разрешаем доступ к клиенту AX
Похоже, в AX2012 все сломано.
На dynamics://T/?DrillDown_5637300833 программа AxhLink говорит "Legacy AxHLink URLs can only have a single command_parameter pair".
Пишешь ей dynamics://DrillDown_5637300833 - начинает ругаться на какой-то Range.
Теги
оповещения, ax4.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
atinkerersnotebook: Create Filtered Alerts To Sniff Out The Data You Really Want Blog bot DAX Blogs 0 23.05.2014 19:11
Проведите ликбез по DAX, плиз ) Andey DAX: Программирование 3 23.05.2012 12:27
axinthefield: Managing the Alerts Queue for AX 2009 Blog bot DAX Blogs 0 11.06.2011 05:19
Оповещения в DAX 2009 suicest DAX: Функционал 2 02.06.2009 12:33
dax-lessons: Active directory in Axapta Blog bot DAX Blogs 0 27.08.2007 23:00
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 03:34.