Professional Documents
Culture Documents
Ax2012 Enus Devi 01
Ax2012 Enus Devi 01
CHAPTER 1: ARCHITECTURE
Objectives
The objectives are:
Introduction
Microsoft Dynamics AX 2012 is a customizable, multiple-language, and
multiple-currency Enterprise Resource Planning (ERP) solution. Microsoft
Dynamics AX excels in:
Manufacturing.
E-business.
Wholesale.
Services industries.
1-1
Functional features
o
o
o
o
o
Client Workspace
The client workspace is the standard rich client interface that an end-user uses.
The workspace consists of various components:
Navigation Pane
The Navigation pane is the menu on the left side of the screen that shows all of
the modules the current user has access to.
Content Pane
The content pane displays role centers, list pages and area pages.
1-2
Role centers display specific data, reports, alerts, and common tasks
associated with a user's role in the organization. The role center is
displayed when an end-user opens the application or goes to Home in
the Navigation pane.
List pages display lists of data. They are optimized to view and
search through a list of records and act on information.
Chapter 1: Architecture
Area pages display all menu items relevant to the module selected in
the Navigation pane. They are grouped logically to make it easier for
end-users to find what they need.
1-3
Architecture
Microsoft Dynamics AX has a three-tier architecture.
Three-Tier Architecture
Three-tier architecture is defined as having a separate database, server and client
where:
1-4
A SQL Server Database that houses the data entered into, and used
by, the Microsoft Dynamics AX application. It also houses the model
store that contains the application elements. (Application elements
are explained in the following lesson)
Chapter 1: Architecture
The Client application is the user interface through which an enduser accesses Microsoft Dynamics AX. There are various clients
available including the Microsoft Dynamics AX rich client and
Enterprise Portal.
Extended Architecture
Several other components of the Microsoft technology stack are used in a typical
deployment.
Reports are delivered by SQL Reporting Services (SSRS). SSRS is a component
included in SQL Server.
Business Intelligence (BI) components such as Key Performance Indicators use
Online Analytical Processing (OLAP) cubes which are delivered by SQL
Analysis Services (SSAS). SSAS is a component included in SQL Server.
The Enterprise Portal and Role Pages are hosted in SharePoint. There are two
versions of SharePoint that can be used. Window SharePoint Foundation 2010 is
a free download. Microsoft SharePoint Server 2010 is a product that can be
purchased to provide extended collaboration and content management tools.
Integration to other applications or to third party organizations might require
integration solutions such as web services.
1-5
1-6
Chapter 1: Architecture
Application Object Server
The Application Object Server (AOS) is the Microsoft Dynamics AX
application server. The AOS is where most of the business logic is executed.
The AOS performs many tasks. Some of the most important tasks include:
X++ runtime: It runs the X++ code which provides most of the
business logic in Microsoft Dynamics AX.
Multiple AOS's can be installed to spread the processing load over multiple
servers. This improves performance in larger implementations.
Clients
Microsoft Dynamics AX Rich Client is the primary client to access Microsoft
Dynamics AX functionality. Most forms displayed in the rich client are designed
by using the MorphX development environment. Role center pages are
SharePoint pages that are displayed within a rich client form. SQL reports are
called from the rich client by using the report viewer control.
Enterprise Portal pages are displayed through a web browser. A subset of
functionality and reports are available on the portal.
Microsoft Office can be used as a client to access the Microsoft Dynamics AX
application and data. Office add-ins are available out-of-the-box for Microsoft
Excel and Microsoft Word.
Other Applications can be used as a client to the Microsoft Dynamics AX
application. Examples include mobile applications, specialized applications
written in .net and legacy applications. Applications can be integrated using
methods such as web services or the .net business connector.
The .NET Business Connector is a client that has no user interface. It is
designed for other applications to access the Microsoft Dynamics AX business
logic. End-users can use another application as the user interface that interacts
with the AOS through the .net Business Connector.
Developers can access the developer tools through the MorphX IDE in the
Microsoft Dynamics AX client or through Visual Studio Tools in Visual Studio.
1-7
Help Server
Microsoft Dynamics AX Help files are hosted through IIS. When a user accesses
Help from within the rich client, the AOS generates a call to the Help server to
display the Help pages.
Web Services
Web Services are hosted within IIS. The AOS is the web service endpoint that
provides the data that is served to other applications by IIS in a standardized
format.
Development Environments
The Microsoft Dynamics AX application is built of elements that are stored in
the model store in the SQL Service database. For example, the following element
types make up part of the application:
Forms and Menus define how a user interacts with the application.
Classes and Methods are code objects that define business logic.
1-8
Chapter 1: Architecture
Model elements can be modified or added using a development environment. The
development environments that can be used with Microsoft Dynamics AX 2012
include:
A white paper titled "Selecting the Best Development Technology for your
Application Development Scenario AX2012" is available for download on
MSDN.
Forms define the layout of all of the forms. Forms are used to view
data in the Microsoft Dynamics AX client.
1-9
Menus define forms and reports that appear in the menu in the
Microsoft Dynamics AX rich client.
Labels
Labels are used to provide the language text that end-users see when using the
application. All text presented in the client displays the translation of a label
code. The label codes usually are reused wherever the exact same text is used
with the same meaning. This makes it easier to manage multiple languages and to
adapt to company specific language.
As an example:
1-10
All label codes are already translated into all other languages in
which Microsoft Dynamics AX is available. This label code is
translated as "Entrega directa" in the Spanish label file. If an enduser opens the application in Spanish, they will see the Spanish
translation wherever this label code is used.
Developers can create new label files to translate label codes into
other languages or customer specific terminology. Tools, including
the label editor and label wizard, are available within the MorphX
development environment to add or change label files.
Chapter 1: Architecture
MorphX IDE
The MorphX IDE is accessed through the Developer Workspace which provides
access to the AOT and other developer tools. It is used to make changes and add
to the application. This is the most commonly used development environment.
Common operations such as building or modifying tables, forms and menus can
be performed by using drag-and-drop techniques with little or no coding. X++ is
the programming language that is used in the MorphX IDE to write more
advanced business logic.
You can access the MorphX IDE from the Microsoft Dynamics AX client. Click
the Windows menu in the command bar and select New Developer Workspace.
Alternatively you can use the shortcut keys Ctrl+Shift+W.
X++ Tools
X++ is the object-oriented programming language that is used in the MorphX
development environment. X++ has C#-like syntax, and incorporates SQL data
manipulation statements.
A full list of developer tools in the MorphX development environment can be
found in the developer help documentation. Some of the tools available include:
The X++ Code Editor is a text editor used to write X++ code. It
supports color-coding and allows to look up and select various
objects such as method names and enumeration values as you type.
The Table browser displays data from all fields in a selected table.
The table browser can be used to run SQL statements.
1-11
Visual Studio
The Visual Studio development environment is integrated through Visual Studio
Tools for Microsoft Dynamics AX (Visual Studio Tools) and it supports
managed code.
Close integration between MorphX and Visual Studio means developers can take
advantage of the benefits of each development tool and work in the environment
that best suits their development scenario.
Some development scenarios must take place in Visual Studio. This includes
creating and customizing SSRS reports, most Enterprise Portal web development
and any managed code development.
1-12
Chapter 1: Architecture
The Application Explorer is available within Visual Studio. This gives
developers the ability to browse AX metadata. The Application Explorer displays
information that is similar to the AOT in the MorphX IDE. Visual Studio projects
are displayed in the AOT and are stored in the Microsoft Dynamics AX model
store in SQL server.
Development Projects
While developing in Microsoft Dynamics AX, you can group all your
modifications in to a development project. To create a new development project,
click the project icon in the development workspace, or press Ctrl-Shift-P.
Private projects are visible to the user creating them and shared project are
visible to everyone.
To create a new shared project:
1-13
Layers
Application object layers hold all elements that are displayed in the AOT. There
are eight application object layers available. Each of these layers also has a patch
layer making a total of sixteen layers.
Layers are a hierarchy of levels in the application you can use to make
modifications and additions without interfering with the application elements in
the next lower level. When you make an element modification on one level, the
modification overshadows the element on a lower level. When the application is
compiled, only the top-level version of an application element is used.
There are three layers available only to Microsoft to deliver the base application.
(The xxP layer indicates the patch layer for each application object layer).
Layer
Description
SYS, SYP
GLS, GLP
FPK, FPP
1-14
Layer
Description
SLN, SLP
ISV, ISP
VAR,
VAP
Chapter 1: Architecture
There are two layers available to both partners and customers who have a license
to access the AX source code.
Layer
Description
CUS, CUP
USR, USP
1-15
The item number is an extended data type that exists in the SYS
layer. This field is a string which is 20 characters in length.
Models
A model is a logical grouping of elements within a layer. Models help in
situations where multiple ISV solutions or projects must operate together. This
architecture allows many solutions to co-exist within each layer.
An element can exist in exactly one model in a layer. The same element can exist
in a customized version in a model in a higher layer. New models are easy to
create in the MorphX IDE and are applied when modifying or adding objects in
the AOT. Models can be exported, installed, or uninstalled from the model store.
Models are identified by a name and a publisher, and have a set of properties that
can be changed, including a version number.
Following is an example:
1-16
Chapter 1: Architecture
You can use models to view the modifications to the item table made
by all ISV solutions and easily see where each change originated.
Managing Models
Models can be created in the development workspace by clicking on Tools >
Model management > Create model. Then you can enter the model name, your
company, which layer the model is in, the version number, a full description, and
a shorter description. The combination of name and publisher make a unique
model.
To change the current model, click the current model in the status bar.
1-17
Challenge Yourself!
Create a model called Dev1 and a development project called Dev1Training
Step by Step
1. Click Tools > Model Management > Create Model.
2. Enter Dev1 in the model name, your name in the publisher and
Dynamics AX Development 1 training labs in the description.
3. Click OK.
4. Click Close on the infolog dialog.
5. Press Ctrl-Shift-P to open the development projects window.
6. Right-click the Shared node and select New > Project.
7. Rename the project to Dev1Training.
1-18
Chapter 1: Architecture
License Codes
License codes control the modules that can be used within Microsoft Dynamics
AX. If a license code for a module is not purchased, none of that functionality is
available.
Configuration Keys
Configuration keys in Microsoft Dynamics AX control the functionality and
features in the system. These keys ensure the Microsoft Dynamics AX solution is
not cluttered with functionality companies do not use. Configuration keys have
descriptions to describe the functionality affected by enabling or disabling them.
Each configuration key is attached to a license code, so if the license is not
purchased, the configuration key is unavailable.
1-19
Summary
This course provided a high-level introduction to the Microsoft Dynamics AX
architecture.
The course introduced important terms related to Microsoft Dynamics AX
Development, and it also discussed the user interface and the different ways data
can be presented in forms and reports.
This course also discussed the basic security architecture that includes License
codes and configuration keys.
1-20
Chapter 1: Architecture
a.
b.
c.
d.
CUS
VAR
SYS
ISV
1-21
1-22
Chapter 1: Architecture
2.
3.
1-23
Solutions
Test Your Knowledge
1. Microsoft Dynamics AX 2012 has a three-tier architecture. What are the
three tiers and what is the purpose of each tier?
MODEL ANSWER:
SQL Server Database - houses the data entered into, and used by, the
Microsoft Dynamics AX application. It also houses the model store that
contains the application elements. (Application elements are explained in the
following lesson)
Application Object Server - a service that runs most of the business logic.
This runs continuously on a central server.
Client application - the user interface through which an end-user accesses
Microsoft Dynamics AX. There are various clients available including the
Microsoft Dynamics AX rich client and Enterprise Portal.
2. What client applications can be used to access Microsoft Dynamics AX
2012? (Select all that apply)
() Microsoft Dynamics AX Rich Client
( ) Internet Information Server
( ) Application Object Server
() Enterprise Portal
3. Match the following modifications to the layer which they are, or should be,
developed in.
c 1. The core customer table
b 2. A bank file import format developed by a partner that
can be used for several of their customers.
d 3. A new field on the item table required for a vertical
solution developed by an ISV.
a 4. A new label code specified on a field to better reflect
a particular customer's terminology.
a.
b.
c.
d.
CUS
VAR
SYS
ISV
1-24
Chapter 1: Architecture
5. What is displayed in the Application Object Tree? (Select all that apply)
() Tables
() Forms
() Menus
() Visual Studio Projects
6. Which tools can developers use to write Microsoft Dynamics AX business
logic? (Select all that apply)
( ) Microsoft Office
() Visual Studio
() MorphX IDE
( ) SQL Server
1-25
1-26