Hi Folks,
In
my previous post I shared information about new classed that introduced in D365 for
Dimension actions. In this post, I am sharing a sample code to merge two
different ledger dimension and get a new LedgerDimension id.
This
is rough code, please feel free to copy and update it according to your
requirement.
public
static void main(Args _args)
{
LedgerJournalTrans ledgerJournalTrans1, ledgerJournalTrans2 ;
RefRecId
dim1, dim2, mergerDim;
select firstonly TrvExpTrans where TrvExpTrans.ExpNumber ==
"USMF-000565";
select firstonly AccountingDistribution where
AccountingDistribution.SourceDocumentLine == SourceDocumentLine::find(TrvExpTrans.SourceDocumentLine).RecId;
//AccountingDistribution::
dim1 = TrvCostType::find("mycategory").LedgerDimension; //First
dimension
dim2 = 5637236123;//AccountingDistribution.LedgerDimension; //Second dimension
mergerDim = LedgerDimensionFacade::serviceMergeLedgerDimensions(dim1, dim2);
info(strFmt("Dim1: %1" ,
DimensionAttributeValueCombination::find(dim1).DisplayValue));
info(strFmt("Dim2: %1" ,
DimensionAttributeValueCombination::find(dim2).DisplayValue));
info(strFmt("merge dim: %1",
DimensionAttributeValueCombination::find(mergerDim).DisplayValue));
}
Please
share your queries/feedback in comment box, I will be happy to help you.
-Harry