Create new financial dimension

Posted: June 3, 2011 in AX

Of course there is an automatic/easy way to add new dimension by using tools > Development tools > Wizards > Financial Dimension Wizard. but this way only allows you to add dimension but can’t modify current one. 

original post: http://sumitsaxfactor.wordpress.com/2007/05/11/creation-of-new-financial-dimension/

Many a times there is requirement from many customers to create a new financial dimension in AX apart from the three standard dimensions “Department”, “Cost center” and “Purpose”. Here is a step by step description of creating a new financial dimension.
To create a new financial dimension modify following objects one by one
    • Base enum “SysDimension” : Find this base enum and right click on this base enum -> Select option “New element”. In properties window give a name to this element say “TestDim” and label as “Test dimension”. Save the base enum.
    • Extended data type “Dimension” : Find this EDT and then add a new array element in this EDT. Name this array element as “TestDim”. In properties window specify label as “Test dimension”. Now in the “Relations” tab of this new array element add a new “Normal”  relation first. To this normal relation open properties window and set property Table as “Dimensions” and Related field as “Num”. Now add another relation of type “Related field fixed”. To this related field fixed relation open properties window and set Related field as “DimensionCode” and property value as “3” (this is the value of the new enum element created in SysDimension). Save the EDT.
    • Extended data type “DimensionCriteria” : Repeat the process of modification as done for EDT “Dimension” above.
    • Extended data type “XMLMapDimension” : Find this EDT in AOT and then create a new array element for this EDT. Label this array element as “Test document value”. Save the EDT.
    • Extended data type “MandatoryDimension” : Find this EDT in AOT and then create a new array element for this EDT. Label this array element as “Validate test dimension”. Save the EDT.
    • Extended data type “DimensionLedgerJournal” : Find this EDT in AOT and then create a new array element for this EDT. Label this array element as “Test dimension”. Save the EDT.
    • Extended data type “DimensionKeepFromTransaction” : Find this EDT in AOT and then create a new array element for this EDT. Label this array element as “Keep transaction test dimension”. Save the EDT.
    • Extended data type “COSAllowDimensions” : Find this EDT in AOT and then create a new array element for this EDT. Label this array element as “Test dimension”. Save the EDT.
    • Extended data type “DimensionPriority” : Find this EDT in AOT and then create a new array element for this EDT. Label this array element as “Test dimension”. Save the EDT.
    • Extended data type “DimensionAllocation” : Find this EDT in AOT and then create a new array element for this EDT. Label this array element as “Test dimension”. Save the EDT.
    • Table “LedgerJournalTrans” : Find this table in AOT and add a new relation in the relations tab as follows. Create a new relation in relations tab and name it as say “interCoDimension3” (You can see three more similar relations with suffix 0, 1 and 2 for three standard dimensions). Now set the property table of this relations as “Dimensions”. Create a new “Normal” relation under this realtion tab and set the property “Field” = “OffsetCompany” and property “RelatedField” = “dataAreaId”. Create another “Normal” relation under this relation tab and set the property “Field” = “InterCoDimension[4]” and property “RelatedField” = “Num”. Now create a new “Related field fixed” relation under this tab and set property “Value” = 3 (this is the value of the new enum element created in SysDimension) and property “Related field” = “DimensionCode”. Save the changes.

    • Extended data type “DimensionLedgerAllocCriteria” : Find this EDT in AOT and then create a new array element for this EDT. Label this array element as “Test dimension”. Save the EDT. (missing from original post)
    • Extended data type “DimensionExtCodeId” : Find this EDT in AOT and then create a new array element for this EDT. Label this array element as “Test dimension”. Save the EDT. (missing from original post)

The new financial dimension is successfully created in AX and can be viewed in different forms through out the AX where ever dimensions are used.

Comments
  1. Remember to consider the implications to the Analysis database (OLAP) when modifying Financial dimensions. Adding, removing or reordering of Financial dimensions will potentially break your cube.

Leave a comment