Skip to main content

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 checklist 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.

Popular posts from this blog

What does this mean: "The form datasource query object does not support changing its AllowCrossCompany property after the form has executed the query."?

I have made a form with datasources vendtable and vendtrans. Inside vendtable_ds.executequery() looks like this: QueryBuildDataSource queryBuildDatasource ,queryBDS_VendTrans_Invoice; ; queryBuildDatasource = this.query().dataSourceTable(tablenum(vendtable)); queryBDS_VendTrans_Invoice = this.query().dataSourceTable(tablenum(vendtrans)); if (curext() == "MASTERCOMP") { this.query().allowCrossCompany(true); } else { this.query().allowCrossCompany(false); } //FilterVendorName = stringedit control on form if (FilterVendorName.text()) { queryBuildDatasource.addRange(fieldNum(VendTable,Name)).value(strfmt("*%1*", FilterVendorName.text())); } else { queryBuildDatasource.clearRange(fieldNum(VendTable,Name)); } //FilterInvoiceNumber = stringedit control on form if (FilterInvoiceNumber.valueStr() == "") { queryBDS_VendTrans_Invoice.enabled(false); } else { queryBDS_VendTrans_Invoice.enabled(true); queryBDS_VendTrans_In...

Credit Note [Dynamics AX] using X++

This post will help to create credit note for a sales order based on the invent lot id. All the invoices raised for a particular sales line – Lot Id will be raised back as a credit note. Information on Credit Note: A credit note or credit memorandum (memo) is a commercial document issued by a seller to a buyer. The seller usually issues a Credit Memo for the same or lower amount than the invoice, and then repays the money to the buyer or sets it off against a balance due from other transactions Below Code will help to create credit note for all the invoices raised against the sales line -lot id. Please note: This code can be customized as per your requirements. This is just a template to help creating credit note using X++ code. Please test the code before use. static void SR_CreateCreditNote_Sales(Args _args) { // Coded by Sreenath Reddy CustInvoiceTrans custInvoiceTrans; Dialog dialog = new Dialog(“Create credit note – for sales.”); DialogField dfInv...