Инструменты разработчика среды MorphX (часть 1)

Данная статья посвящена инструментарию разработчика в среде MorphX Microsoft Dynamics AX 2012. Статья состоит из двух частей, вторую часть которой можно прочитать по ссылке Инструменты разработчика среды MorphX (часть 2).

Дерево прикладных объектов

Дерево прикладных объектов (англ. Application Object Tree, сокр. AOT) — основная точка входа, необходимая для разработки, просмотра репозитария всех прикладных элементов системы и совершения других операций. AOT даёт возможность просматривать свойства элементов, изменять или создавать новые элементы. Как видно из названия, дерево прикладных объектов представляет иерархию элементов. Элементы сгруппированы по категориям и отсортированы в алфавитном порядке.

Для того, чтобы открыть AOT достаточно нажать сочетание горячих клавиш «Ctrl+D» или нажать на иконку на панели инструментов.

Инструменты разработчика среды MorphX

Все наименования элементов имеют шаблон, которому следует придерживаться для обеспечения быстрой навигации и распознования назначения данного элемента:

<Бизнес часть названия элемента> + <Функциональная часть названия элемента> + <Функциональность, выполняемое действие или тип контента>

Для навигации по дереву объектов можно использовать стрелки. Для поиска можно начать набирать наименование элемента, которого необходимо найти, в соответвующей категории.

В настройках АХ можно включить отображение слоев в АОТ. В таком случае справа от наименования элемента будет отображаться названия слоев на которых присутствует данный элемент. Элемент, который присутсвует на текущем слое, выделен полужирным шрифтом.

Проекты

Проекты предназначены для логической группировки прикладных элементов. В рамках проекта можно группировать и структурировать элементы. Проекты подразделяются на частные и общие.

Начальный проект может быть выбран в настройках. Он будет автоматически открываться при запуске системы.

Проекты могут быть созданы автоматически. Одним из таких способов является создание группы в проекте и присвоение ее свойству GroupMask значения, по которому будут добавляться объекты. Вторым способом являются фильтры. Для этого в открытом окне проектов нужно выбрать фильтр и задать необходимые критерии. Также проекты могут быть созданы автоматически при использовании некотрых мастеров, инструмента сравнения и др.

Проекты бывают двух типов (количество типов может быть изменено): обычные и проекты тестирования. Проекты тестирования предназначены для группипрвки классов тестирования.

Окно свойств

Окно свойств позволяет просматривать и изменять свойства прикладного элемента. Окно свойств показывает свойства прикладных элементов как пары ключ-значение

Открыть окно свойств можно нажатием «Alt+Enter» или в контекстном меню элемента.

Свойства, которые доступны только для чтения, выделены серым цветом. Свойства, которые отличны от свойств по-умолчанию, выделены полужирным шрифтом.

Окно свойств имеет две вкладки: свойств, содержащие свойства в определенном порядке, и категории, содержащие сгруппированные и отсортированные по алфавиту свойства.

Редактор кода X++

Редактор кода X++ — это обычный текстовый редактор, который поддерживает синтаксическую подсветку и IntelliSense. Весь код X++ пишется только в редакторе кода X++.

Открыть редактор можно, выбрав определенный узел в дереве AOT и нажав клавишу Enter.

Окно редактора состоит из двух частей. На левой части показаны доступные методы, а на правой части показан код X++, выбранный в левой части метода.

Редактор кода X++ содержит набор сценариев редактора, которые можно вызвать, щелкнув значок «Сценарий» на панели инструментов редактора кода X++ или щелкнув правой кнопкой мыши пустую строку в редакторе кода, указывая «Сценарии», а затем щелкнув нужный сценарий. Сценарии позволяют сократить время разработки и уменьшают вероятность ошибок в коде. Набор сценариев может быть расширен.

Редактор меток

Редактор меток предоставляет возможность просматривать и редактировать метки. Термин «метка» в Microsoft Dynamics AX обозначает локализуемый (переведеный на большинство языков) текстовый ресурс.

Все текстовые ресурсы хранятся в файлах меток, текстовых файлах на основе Unicode, которые можно просматривать и редактировать с помощью блокнота. Имена данных файлов имеют трехбуквенные идентификаторы. В AX 2012 файлы меток управляются в AOT и распространяются с использованием файлов моделей.

AOT предоставляет набор операций для файлов меток, в том числе «Экспортировать в файл меток», который можно использовать для извлечения файла для внешнего перевода.
Новые файлы меток могут быть созданы с помощью мастера файла меток, к которому можно обратиться непосредственно из узла «Файлы меток» в AOT или из меню «Инструменты», указывая «Мастера» > «Мастер файла меток». При наличии файла с расширением .ald, можно создать соответствующую запись в AOT с помощью команды «Создать из файла» в контекстном меню узла «Файлы меток» в AOT.

Редактор меток может быть запущен с помощью одной из следующих процедур:

  • В меню «Сервис» выбрать пункт «Метка» > «Редактор меток».
  • На панели инструментов редактора кода X++ нажать кнопку «Просмотр метки/текста».
  • В свойствах текста в окне свойств нажать кнопку «Поиск».

Повторное использование метки иногда предпочтительнее, чем создание новой. Новую метку можно создать, нажав «Ctrl+N» или нажав «New».

Компилятор

Компилятор — это программа, которая преобразует исходные тексты программ, написанные на языке X++, в исполняемый формат. Каждый раз при изменении кода X++, как и в любом другом языке программирования, необходимо выполнить его компиляцию. Перекомпилировать исходный код можно нажатием клавиши F7 в окне редактора кода X++. Код также будет автоматически откомпилирован при закрытии редактора кода или при сохранении прикладного элемента, в определение которого были внесены изменения.

Окно вывода сообщений компилятора содержит четыре вкладки:

  • Ошибки
  • Предупреждения
  • Best Practices
  • Задачи

Окно вывода компилятора предоставляет доступ ко всем проблемам, обнаруженным во время компиляции. Каждый тип сообщения можно отключить или включить с помощью соответствующих кнопок. Каждая строка в списке содержит информацию о проблеме, которую обнаруживает компилятор, описание проблемы и ее местоположение. Компилятор имеет два вида: форма и окно.

В настройках компилятора можно выбрать уровень Best Practice и элементы, которые он будет проверять. В окне «Сообщения компилятора» нужно перейти «Настройка» > «Компилятор», чтобы определить типы проблем, о которых должен сообщать компилятор. Предупреждения компилятора сгруппированы в четыре уровня. Каждый уровень представляет определенный уровень серьезности, причем 1 является наиболее важным, а 4 рекомендуется для соответствия Best Practices.

Best Practices

Инструмент Best Practices представляет собой MorphX-версию инструмента статического анализа кода, аналогичную FxCop для Microsoft .NET Framework. Инструмент Best Practices встроен в компилятор, а результаты отображаются в окне «Сообщения компилятора» так же, как и другие сообщения в процессе компиляции.

Целью статического анализа кода является автоматическое обнаружение отклонений и рискованных шаблонов разработки в коде. Инструмент Best Practices позволяет любому разработчику выполнить анализ своего кода и модели приложения, чтобы убедиться, что он соответствует набору предопределенных правил. Разработчики могут запускать анализ во время разработки, и они всегда должны делать это перед тестированием реализаций. Поскольку приложение в AX 2012 представляет собой нечто большее, чем просто код, инструмент Best Practices также выполняет статический анализ метаданных — свойств, структур и отношений, которые поддерживаются в AOT.

Правила Best Practices делятся на три уровня:

  • Ошибки
  • Предупреждения
  • Информация

Инструмент Best Practices позволяет подавлять ошибки и предупреждения. В качестве информации сообщается о подавленном отклонении от Best Practices. Это дает возможность идентифицировать отклонение как проверенное и принятое. Чтобы часть кода не генерировала ошибку или предупреждение с рекомендациями, необходимо поместить строку, содержащую следующий текст, непосредственно перед отклонением:

Отладчик

Как и большинство сред разработки, в MorphX присутствует отладчик кода, предназначенный для поиска ошибок в коде. Отладчик – это автономное приложение, не являющееся частью оболочки Microsoft Dynamics AX, как и все остальные инструменты, упомянутые в данной статье.

Окно отладчика может содержать различные элементы:

Элемент Описание
Код Показывает текущий код X++. Каждая переменная имеет всплывающую подсказку, которая показывает ее значение. Окно позволяет перетащить указатель следующего оператора в левом поле. Этот указатель особенно полезен, если путь выполнения не соответствует ожидаемому или если необходимо повторить шаг.
Variables Показывает локальные, глобальные и переменные-члены, а также их имена, значения и типы. Если переменная изменяется во время выполнения, она помечается красным. Каждая переменная связана со значком клиента или сервера. Значение переменной может быть изменено, для это нужно дважды щелкнуть значение.
Call Stack Показывает путь к коду, который следует для достижения определенной точки выполнения. Щелчок по строке в окне «Call Stack» открывает код в окне «Код» и обновляет окно локальных переменных. Значок клиента или сервера указывает уровень, на котором выполняется код.
Watch Показывает имя, значение и тип переменных. Доступны пять разных окон для просмотра. Окна можно использовать для группировки переменных, которые необходимо отслеживать, так, как необходимо пользователю. Для этого можно перетащить переменную сюда из окна кода или окна переменных, или ввести ее вручную.
Breakpoints Отображает все точки останова пользователя. Окно позволяет удалять, включать и отключать точки останова.
Output Показывает активные сведения трассировки приложения, а также вывод в инфраструктуру Infolog. Окно вывода имеет следующие вкладки:

  • Debug. Для вывода в данное окно трассировочной информации кода Х++ используется статический метод printDebug класса Debug.
  • Infolog. Эта страница содержит сообщения из очереди журнала сообщений Infolog.
  • Database, Client/Server и ActiveX. На этих страницах отображаются трассировочные сведения, включенные на вкладке «Разработка» в форме «Параметры».
Status bar Предоставляет следующую важную контекстную информацию:

  • Идентификатор текущего пользователя
  • Идентификатор сессии на AOS
  • Идентификатор текущих счетов компании
  • Текущий уровень транзакции

Примечания

  1. MorphX Development Tools

Литература

  • The Microsoft Dynamics AX Team Inside Microsoft Dynamics AX 2012 R3. — Microsoft Press, 2014 — 820 с. — ISBN 978-0-73568-510-9.

См. также

Comments

So empty here ... leave a comment!

Добавить комментарий

Sidebar