Yesterday I came across the following issue and thought I’d share my findings and solution.
Customer asked me to import opening balances from their existing legacy system.Data Migration is the key point for any implementation and Data Import/Export tool is most powerful tool with in Dynamics AX 2012 for data migration.
There are so many blogs written corresponding to this topic”How to import Opening balance through DIXF”.But everyone explained the feature of Dynamics AX Data Import/Export Framework and gave example importing of financial dimensions into a ledger journal for ledger accounts only But my customer requirement is different he wants to import financial dimensions into a ledger journal for customer,Vendor,Project account as well.
Unfortunately, I could not find any article which helps me to import financial dimensions into a ledger journal for Project,Bank & customer/vendor accounts.
Here I would not explain from the scratch how to import opening balance by using Dynamics AX 2012 data import/export framework.
You can refer Hai Nguyen’s Blog, How to start with Opening balances through DIXF
I have been trying to import data from an CSV file using Data Import Export Framework and generated a sample file.
To demonstrate this,I am using AX 2012 R3 CU8 INMF Company.I am taking Bank Account “IND OPER”and Default dimension 024-003 where 024 is Deparment and 003 is Bussines unit.On other side Offset Account is ledger account 110125-024-005.Here 110125 is Main Account,024 Department and 005 is Business unit because my account structure is configured like below
Important note:If you want to import financial default dimension corresponding to then you have to choose extra field Default dimension for Account and for offset account choose field OffsetDefaultDimension while generating sample file(screenshot above).
So here question can arise why i am taking DefaultDimension field for bank only and why not for ledger account.Because framework is capable to import financial dimensions without any issue for ledgers.
So lets take forward with the issue and solution,Even though the mapping and staging data is validated successfully but when I try to import the data into target table – I get the below error:
Results. Record (‘INMF-00392-VN00000002-1.00’) . Unable to return DimensionAttributeValue record for 024
Data written to target ‘Opening balance’ (‘0’ records created, ‘0’ records updated)
When I tried to debug GenerateDefaultDimension methods in DMFLedgerBalanceEntityClass then I found cause.
As I mentioned above chart of account structure is with sequence Main Account-Department-Business Unit So Ledger accounts(offset account) should be according to account structure only.
But why its not working for Bank,even we have used same sequence for Default Dimension as well?? Big question ??
After debugging multiple time i got to know the reason that system not able to generate default dimension rec id then I found DIXF framework is taking in alphabatical order of Source Data format Dimension code which is different from account structure. 🙂
So I changed the DefaultDimension value with Business Unit-Department(003-024) instead of Department-Business Unit(024-003).
Now system won’t give you any error this time and opening balance is imported successfully. 🙂
Happy Daxing. 🙂