Rifresko vlerën e dimensionit financiar nga kodi X++ në dinamikën 365
Publikuar: 16 shkurt 2025 në 12:02:17 e pasdites, UTC
Ky artikull shpjegon se si të përditësoni një vlerë të dimensionit financiar nga kodi X++ në Dynamics 365, duke përfshirë një shembull kodi.
Update Financial Dimension Value from X++ Code in Dynamics 365
Informacioni në këtë postim bazohet në Dynamics 365. Duhet të funksionojë edhe në Dynamics AX 2012, por nuk e kam testuar në mënyrë eksplicite.
Kohët e fundit kisha për detyrë të përditësoja vlerën e një dimensioni të vetëm financiar bazuar në një logjikë forme.
Siç e dini me siguri, meqë dimensionet financiare Dynamics AX 2012 ruhen në tabela të veçanta dhe referohen nëpërmjet një RecId, zakonisht në një fushë DefaultDimension.
I gjithë kuadri për trajtimin e dimensioneve është disi kompleks dhe shpesh më duhet të rilexoj dokumentacionin mbi të, ndoshta sepse nuk është diçka me të cilën punoj kaq shpesh.
Gjithsesi, përditësimi i një fushe në një set dimensioni ekzistues është diçka që vjen shpesh, kështu që mendova të bëj një shkrim të recetës sime të preferuar ;-)
Një metodë statike utilitare mund të duket kështu:
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;
}
Metoda kthen një RecId të ri (ose të njëjtë) DimensionDefault, kështu që nëse përditësoni një vlerë dimensioni për një rekord - që është ndoshta skenari më i zakonshëm - duhet të siguroheni që të përditësoni fushën e dimensionit në atë rekord me vlerën e re.