Thursday, June 13, 2013

Data Import Export Framework - Financial Dimension 0 does not exists

EDIT: This bug is fixed in DIXF that comes with CU7
There *seems* to be a bug in Data Import Export Framework when importing financial dimensions. When importing ledger journal lines I get a "Financial Dimension 0 does not exists" error.
I have made a guess on how it was suppose to work and made some code changes below:

In the DMFDimensionHelper::generateDynamicDimension method, add a new variable for LedgerStructure Table. Then comment out the exists join to ledgerChartOfAccountsStructure and join it with ledgerStructure instead.


  exists join ledgerChartOfAccountsStructure where
    ledgerChartOfAccountsStructure.DimensionHierarchy == dimHierarchy.RecId &&
    ledgerChartOfAccountsStructure.ChartOfAccounts == LedgerChartOfAccounts::current()
  exists join ledgerStructure where
    ledgerStructure.DimensionHierarchy == dimHierarchy.RecId &&
    ledgerStructure.Ledger == Ledger::current()
    i ++;
    dimAttributeList = conIns(dimAttributeList,i,dimAttribute.Name);
Please feel free to comments on the error or this fix.

This posting is provided "AS IS" with no warranties, and confers no rights.


  1. Really amzing
    Last 3 days struggling on that
    i got oerfect soultion

  2. Thanks dude. Solved my problem as well. :)

  3. I am importing customer balances with the customer account as the ledgerdimension and the ledger account as the offsetledgerdimension. I also have the dimension values specified as the defaultdimension and offsetdefaultdimension values. I have applied your suggestion, but when I look in the journal, only the defaultdimension values are populated - not the offsetdefaultdimension? Any suggestions?

    1. Check the DMFLedgerBalanceEntityClass.GenerateOffsetDefaultDimension() method. See whether "res" is always assigned conNull() for non-ledger account type. If yes, a simple "else" should fix it. =)

  4. Thanks so much for this.

  5. Your blog post is greatly appreciated. Thanks.

  6. Super! Wish we'd found this post before we wrote a fix! Thanks!