Remove Financial Dimension in D365fo x++
Remove Financial Dimension in D365fo x++
public static DimensionDefault removeDimension(Common _common, str _fieldname = 'DefaultDimension', boolean _update = true, str Sector = 'Sector')
{
FieldId _FieldId = fieldName2Id(_common.TableId, _fieldname);
DimensionDefault _defaultDimension = _common.(_FieldId);
if(_defaultDimension)
{
DimensionAttributeValueSetStorage dimStorage = new DimensionAttributeValueSetStorage();
dimStorage = DimensionAttributeValueSetStorage::find(_defaultDimension);
DimensionValue displayValue = dimStorage.getDisplayValueByDimensionAttribute(DimensionAttribute::findByName(Sector).RecId);
if(displayValue)
{
DimensionAttributeValue dimAttributeValue = DimensionAttributeValue::findByDimensionAttributeAndValue(DimensionAttribute::findByName(Sector), displayValue, false, false);
dimStorage.removeDimensionAttributeValue(dimAttributeValue.RecId);
_defaultDimension = dimStorage.save();
}
if(_update)
{
ttsbegin;
_common.selectForUpdate(true);
_common.(_FieldId) = _defaultDimension;
_common.doUpdate();
ttscommit;
}
}
return _defaultDimension;
}
Comments
Post a Comment