Oppdater økonomisk dimensjonsverdi fra X++-kode i Dynamics 365
Publisert: 16. februar 2025 kl. 12:01:22 UTC
Sist oppdatert: 13. september 2025 kl. 22:52:55 UTC
Denne artikkelen forklarer hvordan du oppdaterer en finansdimensjonsverdi fra X++-kode i Dynamics 365, inkludert et kodeeksempel.
Update Financial Dimension Value from X++ Code in Dynamics 365
Informasjonen i dette innlegget er basert på Dynamics 365. Det skal også fungere i Dynamics AX 2012, men jeg har ikke eksplisitt testet det.
Jeg fikk nylig i oppgave å oppdatere verdien av en enkelt økonomisk dimensjon basert på en eller annen formlogikk.
Som du sikkert vet, siden Dynamics AX 2012-finansdimensjoner lagres i separate tabeller og refereres til via en RecId, vanligvis i et DefaultDimension-felt.
Hele rammeverket for håndtering av dimensjoner er noe komplekst, og jeg må ofte lese dokumentasjon på det på nytt, kanskje fordi det ikke er noe jeg jobber med så ofte.
Uansett, oppdatering av et felt i et eksisterende dimensjonssett er noe som dukker opp ofte, så jeg tenkte jeg skulle skrive opp favorittoppskriften min ;-)
En statisk verktøymetode kan se slik ut:
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 returnerer en ny (eller den samme) DimensionDefault RecId, så hvis du oppdaterer en dimensjonsverdi for en post – som sannsynligvis er det vanligste scenariet – bør du sørge for å oppdatere dimensjonsfeltet for denne posten med den nye verdien.
Videre lesing
Hvis du likte dette innlegget, kan du også like disse forslagene:
- Opprette et oppslagsfelt for en økonomisk dimensjon i Dynamics 365
- Legg til visnings- eller redigeringsmetode via utvidelse i Dynamics 365
- Visual Studio henger ved oppstart mens du laster inn nylige prosjekter