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

Popular posts from this blog

D365FO – AX – X++ –Refresh, Reread, Research, and ExecuteQuery

Create Inventory Journal through Code in D365FO X++

SalesLine Reservation in D365fo x++