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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 31.01.2008, 09:43   #1  
zZ_TOP_Zz is offline
zZ_TOP_Zz
int 20h
Аватар для zZ_TOP_Zz
 
143 / 24 (1) +++
Регистрация: 26.02.2007
Адрес: Санкт -Петербург
? Ссылка на журнал в окне Infolog в Axapta 3.0
Добрый день всем.

Подскажите как реализовать такую штуку

При формировании журнала, в инфолог выкидывалось не просто сообщение, что сформирован журнал такой то номер, но и ссылка на него, что бы щелкнул и открылось окно данного журнала.


Всем спасибо за советы.

P.s. версия Axapta 3.0 sp4
__________________
It's just my Unhopelessnessabilityerism
Trying to debug my mind
Старый 31.01.2008, 09:51   #2  
Alex_KD is offline
Alex_KD
Участник
AxAssist
MCBMSS
Соотечественники
 
522 / 362 (14) ++++++
Регистрация: 06.07.2006
Адрес: Melbourne, Down Under
Копать сюда:

метод
info(SysInfoLogStr txt, URL helpUrl = '', SysInfoAction _sysInfoAction = null)

и классы SysInfoAction.
__________________
AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0
Старый 31.01.2008, 09:51   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
параметр action.
в tutorial были примеры вроде
__________________
полезное на axForum, github, vk, coub.
Старый 31.01.2008, 10:05   #4  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
прочтите про \Classes\SysInfoAction_FormName_RU на База знаний ERP : Axapta / Info Log
За это сообщение автора поблагодарили: zZ_TOP_Zz (1).
Старый 31.01.2008, 10:33   #5  
zZ_TOP_Zz is offline
zZ_TOP_Zz
int 20h
Аватар для zZ_TOP_Zz
 
143 / 24 (1) +++
Регистрация: 26.02.2007
Адрес: Санкт -Петербург
Уважаемый belugin спасибо. Очень помогло. Вопрос снят.

Всем ответившим спасибо.

для тех кому интересно чем это закончилось вот пример кода


X++:
//В процедуре формирования журнала добавляем 

    SysInfoAction_FormName_RU   action;
    ;

  //  ..... участок кода

if (LedgerJournalTable::find(ledgerJournalTable.JournalNum).Posted == NoYes::Yes)  
{     
   //  ..... участок кода

           action = new SysInfoAction_FormName_RU(ledgerJournalTable, formStr(LedgerJournalTable));
           info(strfmt("Создан журнал № %1 (%2)", ledgerJournalTable.JournalNum, ledgerJournalTable.ledgerJournalName().Name), '', action);
  
 //  ..... участок кода
}
__________________
It's just my Unhopelessnessabilityerism
Trying to debug my mind

Последний раз редактировалось zZ_TOP_Zz; 31.01.2008 в 11:03. Причина: Расширение ответа
За это сообщение автора поблагодарили: gefr (1).
Старый 31.01.2008, 10:37   #6  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Если не завязываться на конкретную форму, то можно реализовать необходимый функционал в общем случае через класс SysInfoAction_FormRunQuery:
X++:
void addInfologMsgWithAction(str _msg, Common _record)
{
    QueryBuildRange qbr;
    Query           query = new Query();
    ;
    qbr = query.addDataSource(_record.tableId).addRange(fieldname2id(_record.tableId, fieldstr(LedgerTrans, RecId)));
    qbr.value(queryValue(_record.recId));
    info(_msg, '', SysInfoAction_FormRunQuery::newQuery(query));
}
Если нужно выводить сообщение именно для журналов, то можно использовать вместо Common, к примеру, JournalTableMap и переделать Range на использование поля JournalId
Старый 20.08.2015, 09:13   #7  
gefr is offline
gefr
Участник
Аватар для gefr
MCBMSS
 
147 / 17 (1) ++
Регистрация: 01.11.2004
Адрес: МО, Котельники
В AX 2012 не заработало. Выдавались ошибки о не инициализированных источниках, которых не было по debug в запросе к форме. К Item, например, требовал источник ProdTable.

Но заработал измененный вариант для определенной формы:
X++:
public static void addInfologMsgWithAction(str _msg, Common _common, FormName _formName)
{
 SysInfoAction_FormName_RU action;   
 ;
 action = new SysInfoAction_FormName_RU(_common, _formName);
 info(_msg, '', action);

}
За это сообщение автора поблагодарили: Товарищ ♂uatr (1).
Старый 21.08.2015, 10:31   #8  
Peter Savintsev is offline
Peter Savintsev
Участник
 
246 / 119 (4) +++++
Регистрация: 14.12.2001
Я обычно использую класс SysInfoAction_TableField:
X++:
info("Создан журнал ГК", "", SysInfoAction_TableField::newBuffer(ledgerJournalTrans));
Преимущества:
1. Не нужно заморачиваться с тем, какая именно форма должна открываться, т.к. автоматически используется основная форма для таблицы, переданной в качестве параметра.
2. Не нужно объявлять отдельную переменную для параметра _sysInfoAction => код выглядит компактнее.
Теги
ax3.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ссылка на разнесенный журнал переноса kvg6 DAX: Функционал 18 03.04.2007 13:48
Введение в Аксапту Роман Кошелев DAX: Прочие вопросы 0 18.12.2001 14:00
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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