Uppdatera Financial Dimension Value från X++ Code i Dynamics 365
Publicerad: 16 februari 2025 kl. 12:01:37 UTC
Senast uppdaterad: 13 november 2025 kl. 13:37:50 UTC
Den här artikeln förklarar hur man uppdaterar ett finansiellt dimensionsvärde från X++-kod i Dynamics 365, inklusive ett kodexempel.
Update Financial Dimension Value from X++ Code in Dynamics 365
Informationen i det här inlägget är baserad på Dynamics 365. Det borde även fungera i Dynamics AX 2012, men jag har inte testat det explicit.
Jag fick nyligen i uppdrag att uppdatera värdet för en enda finansiell dimension baserat på någon form av formulärlogik.
Som du säkert vet, eftersom ekonomiska dimensioner i Dynamics AX 2012 lagras i separata tabeller och refereras till via ett RecId, vanligtvis i ett DefaultDimension-fält.
Hela ramverket för att hantera dimensioner är något komplext och jag märker ofta att jag måste läsa om dokumentationen om det, kanske för att det inte är något jag arbetar med så ofta.
Hur som helst, att uppdatera ett fält i en befintlig dimensionsuppsättning är något som dyker upp ofta, så jag tänkte att jag skulle skriva en sammanfattning av mitt favoritrecept ;-)
En statisk verktygsmetod kan se ut så här:
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;
}
Metoden returnerar ett nytt (eller samma) DimensionDefault RecId, så om du uppdaterar ett dimensionsvärde för en post – vilket förmodligen är det vanligaste scenariot – bör du se till att uppdatera dimensionsfältet för den posten med det nya värdet.
Vidare läsning
Om du gillade det här inlägget kanske du också gillar dessa förslag:
- Lägg till visnings- eller redigeringsmetod via tillägg i Dynamics 365
- Visual Studio hänger sig vid start under laddning av senaste projekt
- Skapa ett uppslagsfält för en finansiell dimension i Dynamics 365
