martedì 11 giugno 2019

AX 2012 - Job dimensioni finanziarie

In questo post vediamo due job per manipolare le dimensione finanziarie ed assegnare il risultato ad una riga di general journal

Il primo job, data una ledger dimension cambia l'account e valida la nuova dimensione:

 static void LIL_ChangeAccountNum(Args _args)  
 {  
   LedgerJournalTrans           ledgerJournalTrans;  
   DimensionDefault            dimensiondefault;  
   LedgerDimensionAccount         LedgerDimensionAccount, ret;  
   DimensionValidationStatus        status;  
   MainAccountNum             newMainAccountnum = "10505005";  
   
   ledgerJournalTrans = ledgerJournalTrans::findRecId(5644985326, false);  
   
   dimensiondefault = DimensionDefaultingEngine::getDefaultDimension(DimensionDefaultingEngine::getDimensionSourcesForLedgerDimension(ledgerJournalTrans.ledgerdimension));  
   
   LedgerDimensionAccount = AxdDimensionUtil::getLedgerAccountId([newMainAccountnum,newMainAccountnum]);  
     
   ret = DimensionDefaultingService::serviceCreateLedgerDimension(LedgerDimensionAccount,dimensiondefault);  
   
   status = DimensionValidation::validateByTree(ret,today(),true);  
     
   if(status == DimensionValidationStatus::Valid)  
   {  
     ledgerJournalTrans.LedgerDimension = ret;  
   }  
 }  

il secondo crea una ledger dimension contente solamente il bank account num:

 static void LIL_LedgerDimensionWhitAccountOnly(Args _args)  
 {  
   LedgerJournalTrans     ledgerJournalTrans;  
   DimensionDynamicAccount   DimensionDynamicAccount;  
     
   DimensionDynamicAccount = DimensionStorage::getDynamicAccount("BANK001", LedgerJournalACType::Bank);  
     
   ledgerJournalTrans.LedgerDimension = DimensionDynamicAccount;  
 }  


Nessun commento:

Posta un commento