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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.02.2015, 22:14   #6  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Сложно)

На базовом классе DimensionControllerObject есть несколько делегатов, вызовы которых используются при создании контролов аналитик

делегат DimensionLinkShowField отвечает за пропуск создания контрола (parmCancel() класса-события DimensionLinkCancelEventArgs должен вернуть True)
делегат DimensionLinkAllowFieldEdit - за возможность блокирования изменения контрола (DimensionLinkCancelEventArgs.parmCancel() == true)
делегат DimensionLinkMarkFieldOptional - за обязательность (DimensionLinkCancelEventArgs.parmCancel() == true)

Для подписки на событие, необходимо реализовать паблик-метод, соответствующий подписываемому делегату, в классе-обработчике формы (на самой форме нельзя - подписка не будет выполнена)

Определение аналитики выполняется по идентификатору аналитики (DimensionAttributeRecId)

X++:
// Метод в классе-обработчике
public void showDimensionControl(DimensionLinkCancelEventArgs _e)
{
    ;

    if (_e)
        _e.parmCancel(_e.parmDimensionAttributeId() != ViewDimensionAttributeRecId);
}

//Подпись на событие DimensionLinkShowField
...
    dimensionDefaultingController = DimensionDefaultingController::constructInGroupWithValues(
...
//подписка на событие
//myHadlerClass.showDimensionControl - это Instance-метод класса
    dimensionDefaultingController.DimensionLinkShowField += eventhandler(myHadlerClass.showDimensionControl);
//если потребуется использовать статический метод
    dimensionDefaultingController.DimensionLinkShowField += eventhandler(MyHadlerClass::staticShowDimensionControl);
...
__________________
Axapta v.3.0 sp5 kr2
За это сообщение автора поблагодарили: Oz (2), Logger (3).
Теги
ax2012, financialdimensions2012

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как связать 3 таблицы на форме kitty DAX: Программирование 10 18.04.2013 08:27
Как мне обновить Grid расположенный на другой форме? Yuri Safronov DAX: Программирование 17 22.01.2013 14:18
Поля из разных таблиц в динамической Lookup-форме samolalex DAX: Программирование 8 06.06.2011 20:20
Отображение связи n:n на форме mazzy DAX: Программирование 22 16.03.2011 16:19
Связь между таблицами в форме Акавешка DAX: Программирование 8 31.01.2011 08:11

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

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

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