Uppfærðu gildi fjárhagsvíddar úr X++ kóða í Dynamics 365
Birt: 19. mars 2025 kl. 21:36:03 UTC
Þessi grein útskýrir hvernig á að uppfæra fjárhagsvíddargildi úr X++ kóða í Dynamics 365, þar á meðal kóðadæmi.
Update Financial Dimension Value from X++ Code in Dynamics 365
Upplýsingarnar í þessari færslu eru byggðar á Dynamics 365. Það ætti líka að virka í Dynamics AX 2012, en ég hef ekki prófað það beinlínis.
Mér var nýlega falið að uppfæra gildi einnar fjárhagslegrar víddar út frá einhverri formrökfræði.
Eins og þú veist líklega, þar sem Dynamics AX 2012 fjárhagsvíddir eru geymdar í aðskildum töflum og vísað í gegnum RecId, venjulega í reitnum DefaultDimension.
Allur ramminn til að meðhöndla víddir er nokkuð flókinn og ég lendi oft í því að þurfa að lesa skjöl um það aftur, kannski vegna þess að það er ekki eitthvað sem ég vinn með svo oft.
Allavega, að uppfæra reit í núverandi víddasett er eitthvað sem kemur oft upp, svo mér datt í hug að skrifa upp uppáhalds uppskriftina mína ;-)
Kyrrstæð nytjaaðferð gæti litið svona út:
Name _dimensionName,
DimensionValue _dimensionValue)
{
DimensionAttribute dimAttribute;
DimensionAttributeValue dimAttributeValue;
DimensionAttributeValueSetStorage dimStorage;
DimensionDefault ret;
;
ret = _defaultDimension;
ttsbegin;
dimStorage = DimensionAttributeValueSetStorage::find(_defaultDimension);
dimAttribute = DimensionAttribute::findByName(_dimensionName);
if (_dimensionValue)
{
dimAttributeValue = DimensionAttributeValue::findByDimensionAttributeAndValue( dimAttribute,
_dimensionValue,
true,
true);
dimStorage.addItem(dimAttributeValue);
}
else
{
dimStorage.removeDimensionAttribute(dimAttribute.RecId);
}
ret = dimStorage.save();
ttscommit;
return ret;
}
Aðferðin skilar nýju (eða sama) DimensionDefault RecId, þannig að ef þú uppfærir víddargildi fyrir færslu - sem er líklega algengasta atburðarásin - ættir þú að gæta þess að uppfæra víddareitinn í þeirri færslu með nýja gildinu.