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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.01.2011, 22:07   #1  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,875 / 3123 (112) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
это одна из идей, которую я хочу пропихнуть в АХ 2012.
**** выделено отсюда Используете ли вы @SYS метки при создании своих партнерских расширений? ****

Цитата:
Сообщение от kashperuk Посмотреть сообщение
Да, это одна из идей, которую я хочу пропихнуть в АХ 2012.
Посмотрим, или получится.
Идея хорошая.

Иван, было бы неплохо пропихнуть еще парочку :
1. В отладчике выходить из метода не по последней строчке, а по закрывающей скобке "}" - очень этого не хватает. Сейчас приходится иногда вставлять в конце метода вызов метода пустышки - неудобно. Тем более что в других продуктах MS, именно так и работает. (Например, когда отлаживаешь в Excel макрос на VBA)
2. Облегчить каким-нибудь способом поиск мест в коде, в которых меняются свойства контрола или датасорса или поля датасорса. Поясню подробнее. Иногда разбираешь чужие модифы, ошибки и происходит вызов ядреного метода, например xRecord.insert() или xRecord_ds.active() - чтобы найти кто и откуда гадит, достаточно поставить точку останова внутри метода, воткнуть туда, например, простенький if с проверкой на некорректные значения и точкой останова и таким образом быстро найти проблему. Если метод не перекрыт, то перекрыть его и добавить свой код с проверками. А вот со свойствами датасорсов и контролов такой номер не прокатит, так как их перекрывать нельзя. А иногда очень нужно. Например выяснить, из-за чего же все-таки дизейблится поле и т.п. Возможно, решать надо совсем по другому, не так как я описываю. Например, чтобы отладчик мог задавать условные точки останова, по значению переменной или по значению свойства объекта. - Но в любом случае это очень нужная вещь - могла бы сэкономить кучу времени. Проще всего по-моему дать возможность обрабатывать любое свойство как метод, перекрывая его в код X++. Или сделать что-то по аналогии с использованием \System Documentation\Classes\FormRun\controlMethodOverload т.е. сделать настройку в ядре, которая вызывала бы определенный программистом метод при изменении заданного свойства объекта. Т.е. нужно мне поймать кто дизейблит контрол Object, я вызываю FromRun.XXXcontrolMethodOverload("MyMethodName4Invoke", Object, "Object_PropertyName") и при изменении свойства PropertyName ядро дергает мой метод MyMethodName4Invoke() передавая в него Object, а я ставлю в своем методе MyMethodName4Invoke() точку останова и вижу стек вызовов и быстро нахожу проблему.

Последний раз редактировалось Logger; 25.01.2011 в 22:19.
За это сообщение автора поблагодарили: Pustik (1), S.Kuskov (3).
Теги
button, clicked, stack trace, stack trace clicked, кнопка, стек вызовов

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
dynamics-ax: SCOM Me this, PowerShell Me that! (Dynamics AX 2012) Blog bot DAX Blogs 0 26.01.2011 04:12
dynamics-ax: Modeling the world, with Microsoft Dynamics AX 2012 Blog bot DAX Blogs 0 25.01.2011 09:11
mfp: Getting to AX 2012 Blog bot DAX Blogs 3 21.01.2011 15:59
Рабочая область в АХ sukhanchik DAX: Функционал 6 15.10.2009 13:10
Общая схема порядка обновления с АХ 3.0 на АХ 4.0 Vadim Korepin DAX: Функционал 11 25.11.2008 17:40

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 15:20.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.