To Import Budget Register line In Ax 2012, you get Idea from below code. You need to create budget register header then you can your CSV file and apply the code to import. you also need to declare variables as used in below code.
budgetTransactionLine = new AxBudgetTransactionLine();
budgetTransactionLine.parmBudgetTransactionHeader(BudgetTransactionHeader::findByTransactionNumber(c1,Ledger::current()).RecId);
budgetTransactionLine.parmDate(str2Date(c2,123));
budgetTransactionLine.parmTransactionCurrency(c10);
budgetTransactionLine.parmBudgetType(str2enum(budgetType,c11));
budgetTransactionLine.parmTransactionCurrencyAmount(str2num(c9));
budgetTransactionLine.parmAccountingCurrencyAmount(str2num(c9));
accEntryPattern = [strFmt("%1-%2-%3-%4-%5-%6-%7",c3,c4,c5,c6,c7,c8),c3];
if(c4)
{
accEntryPattern += "LegalEntity";
accEntryPattern += c4;
dimcount++;
}
if(c5)
{
accEntryPattern += "Region";
accEntryPattern += c5;
dimcount++;
}
if(c6)
{
accEntryPattern += "BusinessUnit";
accEntryPattern += c6;
dimcount++;
}
if(c7)
{
accEntryPattern += "Activity";
accEntryPattern += c7;
dimcount++;
}
if(c8)
{
accEntryPattern += "Department";
accEntryPattern += c8;
dimcount++;
}
accEntryPattern = conIns(accEntryPattern,3,dimcount);
budgetTransactionLine.parmLedgerDimension(AxdDimensionUtil::getLedgerAccountId(accEntryPattern));
budgetTransactionLine.save();
Comments
if you want to use budget line with Dimensions only without main account, how you will fill the Container "AccEntryPattern", or i need to find another methods for the LedgerDimension ID,
thank you,
S.AD