Changing value in Ledger Dimension combination
Sun Aug 17 2025 06:06:20 GMT+0000 (Coordinated Universal Time)
Saved by @MinaTimo
public LedgerDimensionAccount getLedgerDimensionModified(
LedgerDimensionAccount _ledgerDimension,
DimensionValue _toDimTaxDeductionVal)
{
LedgerDimensionAccount ledgerDimension;
DimensionDefault defaultDimension;
LedgerDimensionDefaultAccount defaultAccount;
DimensionAttribute dimAttr;
DimensionAttributeValue dimAttrValue;
DimensionAttributeValueSetStorage dimAttrValDimStorage;
DimensionStorage dimAttrStorage;
int i;
// Name of dimension attribute to change, example: TaxDeduction
#define.DimAttrTaxDeductionName('TaxDeduction')
;
dimAttr = DimensionAttribute::findByName(#DimAttrTaxDeductionName);
if (_toDimTaxDeductionVal != '')
{
// convert to Default dimensions
defaultDimension = DimensionStorage::getDefaultDimensionFromLedgerDimension(_ledgerDimension);
dimAttrValDimStorage = DimensionAttributeValueSetStorage::find(defaultDimension);
// find DimensionAttributeValue for specified display value of TaxDeduction dimension
dimAttrValue = DimensionAttributeValue::findByDimensionAttributeAndValue(dimAttr, _toDimTaxDeductionVal);
// add dimension value to Default dimension
dimAttrValDimStorage.addItemValues(dimAttr.RecId, dimAttrValue.RecId, dimAttrValue.HashKey);
defaultDimension = dimAttrValDimStorage.save();
// combine default dimension with ledger dimension representing main account
defaultAccount = DimensionStorage::getLedgerDefaultAccountFromLedgerDim(_ledgerDimension);
ledgerDimension = DimensionDefaultingService::serviceCreateLedgerDimension(defaultAccount, defaultDimension);
}
// remove dimension from combination
else
{
dimAttrStorage = DimensionStorage::findById(_ledgerDimension);
for (i = 1; i <= dimAttrStorage.segmentCount(); i++)
{
if (dimAttrStorage.getAttributeIdForSegment(i) == dimAttr.RecId)
dimAttrStorage.clearSegment(i);
}
ledgerDimension = dimAttrStorage.save();
}
return ledgerDimension;
}
// https://daxtarkowski.wordpress.com/2014/04/16/changing-value-in-ledger-dimension-combination/



Comments