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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.11.2014, 16:22   #6  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
Цитата:
Сообщение от belugin Посмотреть сообщение
Для AX есть некий автоматизированный анализ кода в Lifecycle Services

Сам не пробовал
Я пробовал, могу немного рассказать.

1. Тул предлагает загрузить модель для анализа
2. В течение нескольких часов производится закачка\компилирование модели и запускается анализ.
3. Неожиданно, для казалось бы полностью вычищенной модели, получаем кучу ошибок\замечаний.
4. При анализе видим, что найденных 90% замечаний неоднозначные.

Например:
  • Если анализатор "видит" CRUD операции с таблицами и не встречает выше по коду "ttsbegin" в текущем методе, вываливает это как ошибку\замечание, при этом не учитывая, что метод целиком уже может выполняться в рамках транзакции. Отсюда получаем ругань чуть ли не на каждый метод где есть CRUD.
  • Если вы что-то воткнули в стандартный код, то все грехи стандартного кода будут расценены как ваша кастомизация со всеми вытекающими.
  • В исполняемом на сервере коде нельзя пользоваться такими функциями как info\error\setprefix. (ну клиентскими Box:: само собой).
  • Анализатор требует переноса ВСЕХ CRUD операций на таблицы\классы, причем обязательно в серверном исполнении. Т.е. select на форме либо клиентском классе уже не напишешь, даже если это будет временная таблица.
  • Для CRUD операций требуется обязательно предшествующие validateWrite\Delete, даже если таблица временная, использующаяся как некий буфер.
  • Требует кэширования всех дисплей методов, даже если метод закэширован (баг), даже если метод написан на датасорсе.

Есть и много полезных замечаний.

Технически, тул реализован незамысловато. Где-то в облаке крутится аксапта, куда загружается ваша модель (отсюда обязательность совпадения версий вашей модели с версией тула и длительное время на компиляцию). В аксапте написан некий BestPractice extention, который выполняет проверку. По результирующему отчету даже видно, что он выгружается их таблицы SysCompilationOutput.

В общем тул пока сыроват, но в целом полезен, если не воспринимать все замечания в лоб.

Ну а вообще, можно было включить этот BestPractice extention в рамки стандартной системы и не заниматься глупостями в виде отдельных web приблуд.
За это сообщение автора поблагодарили: mazzy (2), belugin (3), sukhanchik (3), Krash (1), MikeR (2).
Теги
code review, lifecycle services

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Удобство чтения кода - залог и определенная гарантия его работоспособности sukhanchik DAX: Программирование 29 11.04.2013 10:52
Небольшой тюнинг редактора кода AX2012 kart DAX: Программирование 6 22.02.2013 17:21
axforum blogs: О заполнении Наименования и Кода номенклатуры в печатной форме Накладной (Ax2009 ru7) Blog bot DAX Blogs 0 07.06.2011 09:11
проблема с настройкой штрихового кода Nic DAX: Функционал 4 27.12.2004 09:04
Использование штрихового кода (barcode) в Аксапта Pavlo AKA Panok DAX: Функционал 9 17.10.2003 15:13

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

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

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