Tuesday, March 27, 2012

Dynamics AX 2012 Programming model


Design Pattern 
Programming Model 
 
Strongly typed .NET interop to X++ 
Services 
Object-oriented development in X++ 
Customization 
Use to access functionality implemented in X++ from .NET. Where appropriate, you should use eventing to decouple customization business logic implemented in .NET. 
Not recommended 
Layer-based X++ source code customization is supported. Where appropriate, you should use eventing to decouple customization business logic implemented in X++. 
Integration 
Not recommended 
Use service interfaces to access Microsoft Dynamics AX. 
Not recommended 
External application development 
Use if your Windows application runs only on the AOS server. 
Use service interfaces to access Microsoft Dynamics AX in all other cases, including applications that are not Windows-based. 
Not recommended 
Report development 
Not recommended 
Use service interfaces when implementing data methods as your report data source type. 
Use when developing an RDP data source type for your reports 
Enterprise Portal application development 
Use from Enterprise Portal applications to access business logic that is in X++ classes. 
Use services to access Microsoft Dynamics AX functionality, especially if the application is Internet facing. 
Not recommended 

Upgrade Dynamics AX 4.0/AX 2009 to Dynamics AX 2012

Setup source Environment


1.      Import the PreProcessing (databaseupgrade\xpo\UpgradeAX5.xpo) XPO, located in the installation CD folder and Un check "Import with ID values:"
2.      Open the PreProcessing Checklist "SysCheckList_PreUpgrade50" located in the AX50PreUpgradeFramework project.
3.      The Preprocessing Checklist appears, if your checklists has this @ABC123 instead of text, and then do this to get the missing label file. To apply the new label files in your AX4/5 machine (if you are working with preprocessing framework):
·         Copy the label file to the label folder in your AX4/2009 machine
·         Restart the AOS
·         Label folder in AX4/2009 is a sub folder under ...\Application\Appl\ where you can find *.ald files in it.
4.      Run through the PreProcessing Checklist Items to prepare the database for Upgrade
·         If upgrading AX 2009, and the upgrade scripts don't run after opening the cockpit, jump to step #12 and follow the steps there to setup the batch server (AX4 does not require setting up a batch server). Then come back to this point and continue.
·         If upgrading AX4, You need to compile the ReleaseUpdate* classes and the ReleaseUpdateCockpit form.
·         If upgrading AX4, when running the cockpit run multiple instances of AX4:
o   Start the new Microsoft Dynamics AX client.
o   Select Basic > Periodic > Batch > Processing.
o   A batch dialog appears.
o   Add DataUpgrade in the Group field, and click OK.
5.      In the Inventory Dimension Group Upgrade checklist Item, click on the “Map dimension groups 1:1” button (Do not click on the “Assign identical groups” button) and then click on the “Set to Ready For Upgrade” button.
6.      In the System Parameters checklist Item, select “en-us” as the default language and click on the “Set to Ready for Upgrade” button.
7.      In the Company Priority setup, click on the “Set to Ready for Upgrade” button.
8.      In the Product Upgrade Form, click on the Synchronize button and then on the Product Mapping -> Map all items 1:1. Click on the “Set to Ready for Upgrade” button after doing these steps.
9.      In the Units form, click on the “Automatically assignment” button.
a.       Set all decimals to 2
b.      Set all Unit classes to “Length”
c.       Click on the “Validate” button to make sure no errors are found
d.      Click on the “Set to Ready for Upgrade” button.
10.  In the Pre-Upgrade of Unit Conversions checklist item click on the Validate button and then on the “Set to Ready for Upgrade” button.
11.  In the Pre-Upgrade of Unit Texts click on the Validate button and then on the “Set to Ready for Upgrade” button.
12.  In the Pre-Upgrade Data checklist item you might need to configure the Batch Server and Batch Server Groups if the Live PreProcessing scripts don’t start running. In order to do so, go to Administration\Setup\Server Configuration
13.  Make sure that only the machine you are using has the Is Batch Server checkbox checked. Now go to the Batch Server Groups tab and select the DataUpdate Batch Server Group
14.  Another configuration that is required to start running these jobs is the Batch Group form. You can access this in Administration\Setup\Batch Groups
15.  Select the DataUpdate Batch Group and go to the Batch Servers tab.
16.  Make sure the machine you’re running the upgrade on is on the Selected Servers list on the left side pane.
17.  After running the Live PreUpgrade, continue with the next checklist items (Validate Pre Upgrade, check Single User Mode and Single User Mode Upgrade)
18.  Once the checklist is finished, the PreProcessing stage is done. Uninstall AX50 (don’t drop the database) and you are ready to go to the AX6 steps.

Starting an Upgrade from the Target Environment


1.      Install Dynamics AX 2012.
2.      Setup Ax 2012 pointing the AOS to a new Database . Specify a different database name for the Model Database. Make sure you select the "Register Database for Upgrade checkbox:"
3.      At this stage, you should have 3 databases in your system: Database
·         The AX50 PreProcessed database
·         The new AX6 database
·         The new AX2012 model database
4.      Start AX 2012 and run through the Upgrade checklist
5.      In the Provide License Information step, specify the license.
6.      At this point, the Target Environment upgrade process is started. Make your way through the first five checklist items.

Data Upgrade Stages


Source DB connection step:
In the Source DB connection step, specify the server name where the Source Database is located and the Source Database name. Click OK once this information is entered.
PreSynchronize step:
This step loads the Upgrade cockpit. Depending on which stage you started the Upgrade Process; you might need to configure the Batch Groups and Batch Servers. Once this configuration is set, click the Run button. PreSync scripts should start running at this stage.
Create Tables Step:
This step synchronizes the database. No special steps need to be taken here.
Generate table and field mapping:
This step generates table and field mapping between source and target systems. There should be no mapping with error.
Generate Bulk Copy and Script Prioritization Step:
Bulk Copy Priorities and Script-Table dependencies are resolved in this step. No special steps need to be taken here.
Launch Data Upgrade Step:
This step loads the Upgrade cockpit. Once the cockpit is loaded, click on the Run button and the Post Sync scripts should start running.
This is where the data is actually copied from the Source Database to the Target Database based on the Mappings found in the Generate Table and Field Mapping step.

MS Dynamics AX 2009 EP development

To start working on Dynamics AX 2009 EP, the following article will help you a lot:

Change company logo on EP home page

Here is the very useful link for displaying/changing the Dynamics AX 2009 EP home page.
Display Company Logo on Dynamics EP Site and Hide Page Title

alternatively/in dynamics ax 2012, you can change the logo from C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\ep\images\ location and change the name you your logo file to DynamicsLogo64x64.png 

Dynamics AX 2009 and Dynamics AX 2012 modules comparisons

Following are the enhancements made by Microsoft on Dynamics AX 2012:
For example, GL module in AX 2009 is now break into GL and Fixed assets in AX 2012.

AX 2009 Module
AX 2012 Module
General LedgerGeneral Ledger
 Fixed Assets (New)
BankCash and bank management
Accounts PayableAccounts Payable
 Procurement and sourcing (New)
Accounts ReceivablesAccounts Receivables
 Sales and Marketing (New)
Inventory ManagementProduct information (New)
 Inventory  and warehouse management
Expense managementTravel and expense management
ProductionProduction control
ProjectProject management and accounting
 Compliance and internal control (New)

Dynamics AX 2012 SSRS reports patterns

Here are the design pattern/changes that we need to make sure for AX 2012 SSRS report development:


Functional Area
AX2009
AX2012
Input parameters (definition)
Report
Data contract (*)
Input parameters (validation)
Report
Data contract (*)
Input dialog (simple)
Report
Data contract (*)
Input dialog (complex)
Report
UI Builder (*)
Input parameters (modification)
Report
Controller (*)
Dynamic query
Report
Query
Report data
Report
Table (temp)
Business logic
Report
RDP
Report layout
Report
SSRS Report