Tuesday, October 4, 2016

Create New Financial Dimension For your customized table in AX 2012 using X++ Code





Lets quickly take a look at how the financial dimensions framework has been redesigned in AX 2012. The following picture show the table design:

Untitled
To add a new financial dimension for your custom table, perform the following steps:
1. Drag the EDT (AOT >> Data Dictionary >> Extended Data Types >> DimensionDefault) to the fields of your table
2. Create a new “Normal” relation on your table linking the newly added “DefaultDimension” field to the “RecId” field of DimensionAttributeValueSet table
Untitled
3. Now create a view for your table. Take care of the following conventions:
  • View should be named exactly DimAttributeYourTable
  • Add your table to DimAttributeYourTable >> Metadata >> Data Sources node
  • This data source should be named exactly BackingEntity
  • Add the following three fields naming them exactly as mentioned
    • Key – Use surrogate key field e.g. RecId
    • Value – Use natural key field e.g TrackingNum
    • Name – Use any descriptive field e.g. DeliveryName
Untitled
4. Create and run the following  job to clear the dimension cache:
static void clearCache(Args _args)
{
    DimensionCache::clearAllScopes();
    info("done");
}
5. Now open General Ledger >> Setup >> Financial dimensions >> Financial dimensions
6. Create a new financial dimension
7. Select your newly added dimension from the “Use values from” lookup:
Untitled

Now if you want to add this financial dimension to any of the existing chart of accounts, perform the following steps:
1. Open General Ledger >> Setup >> Chart of accounts >> Configure account structures
2. Select any of the active account structures e.g. “Account Structure P&L (Active)”
3. Click Edit button
4. Click Add segment button
5. Select the newly added dimension
6. Finally activate the dimension to let the changes take effect.
Untitled


1 comment: