![]() |
#1 |
Участник
|
FormDataSourceInteractionAttribute, ListPage свойства датасорса
Всем привет!
DAX 2012 R2. Такой вопрос. Нужно перекрыть методы на DS в форме типа ListPage. Я так понял надо использовать класс FormDataSourceInteractionAttribute. Примеры, которые я нашел - работают, добавляю свой метод - не работает. Конкретно нужно перекрыть validatewrite(). Например, в классе SalesTableInteraction добавляю метод, а он не срабатывает: X++: [FormDataSourceInteractionAttribute('SalesLine', 'validateWrite')] public void salesLine_DS_validateWrite() { info("!!!"); }
__________________
Ivanhoe as is.. |
|
![]() |
#2 |
Дмитрий Ерин
|
класс SalesTableInteraction, насколько я понял, обрабатывает форму SalesTable, которая не на шаблоне ListPage, а на DetailsPage. То есть в ней и так можно методы перекрыть (и validateWrite() там как раз перекрыт, возможно, поэтому и не срабатывает). А для ListPage, мне кажется, нужно смотреть в сторону SalesTableListPageInteraction и его предков.
__________________
![]() |
|
![]() |
#3 |
Участник
|
Да, некорректно написал. Я добавлял метод именно в SalesListPageInteraction.
__________________
Ivanhoe as is.. |
|
![]() |
#4 |
Участник
|
Еще идеи? Куда копать?
__________________
Ivanhoe as is.. |
|
![]() |
#5 |
Программатор
|
Если это ListPage, то зачем там validateWrite? Там же ничего править нельзя...
|
|
![]() |
#6 |
Участник
|
Нельзя
![]() Конкретный кейс - в форму Заказов на продажу (ListPage) добавлены доп. таблицы для физической сортировки и фильтрации.
__________________
Ivanhoe as is.. |
|
![]() |
#7 |
Участник
|
Это SalesTableListPage? Вы дополнительные таблицы в \Queries\SalesTableListPage добавили? Или как-то по-другому?
Последний раз редактировалось Stitch_MS; 24.01.2014 в 17:17. Причина: опечатка |
|
![]() |
#8 |
Участник
|
Да эта форма, да - таблицы в Query.
__________________
Ivanhoe as is.. |
|
![]() |
#9 |
Читатель
|
Даже если у созданных datasource установлены AllowCreate, AllowDelete и AllowEdit в "нет"?
|
|
![]() |
#10 |
Участник
|
Насколько я понял, для ListPage можно перекрыть только один метод на DataSource - selectionChanged, который задан в базовом классе ListPageInteraction. Другие методы работать не будут
|
|
![]() |
#11 |
Участник
|
Тоже столкнулся с проблемой перекрытия validateWrite на ListPage. Кто-нибудь решил? Создается впечатление, что опять что-то недоделали. Однако на формах DetailsPage с их PageInteraction классами возможность есть...
|
|
![]() |
#12 |
Участник
|
|
|
![]() |
#13 |
Участник
|
|
|
![]() |
#14 |
Участник
|
Прошу прощения, ввёл в заблуждение. На Query нельзя перекрыть этот метод.
Но, думаю, что в классе *ListPageInteraction это возможно. |
|
![]() |
#15 |
Участник
|
|
|
![]() |
#16 |
Участник
|
Цитата:
http://dynamicsuser.net/forums/p/74310/399704.aspx |
|
![]() |
#17 |
Участник
|
|
|
|
|