Finanzdimensionswert aus X++-Code in Dynamics 365 aktualisieren
Veröffentlicht: 16. Februar 2025 um 12:00:59 UTC
Zuletzt aktualisiert: 13. November 2025 um 13:35:59 UTC
Dieser Artikel erklärt, wie man einen Finanzdimensionswert aus X++-Code in Dynamics 365 aktualisiert, einschließlich eines Codebeispiels.
Update Financial Dimension Value from X++ Code in Dynamics 365
Die Informationen in diesem Beitrag basieren auf Dynamics 365. Sie sollten auch in Dynamics AX 2012 funktionieren, ich habe dies jedoch nicht explizit getestet.
Kürzlich wurde ich beauftragt, den Wert einer einzelnen Finanzdimension anhand einer bestimmten Logik zu aktualisieren.
Wie Sie wahrscheinlich wissen, werden in Dynamics AX 2012 die Finanzdimensionen in separaten Tabellen gespeichert und über eine RecId referenziert, üblicherweise im Feld DefaultDimension.
Das gesamte Framework zur Dimensionsverwaltung ist etwas komplex, und ich muss die Dokumentation dazu oft erneut lesen, vielleicht weil ich nicht allzu oft damit arbeite.
Jedenfalls kommt das Aktualisieren eines Feldes in einem bestehenden Dimensionssatz häufig vor, deshalb dachte ich, ich schreibe mal meine Lieblingsmethode auf ;-)
Eine statische Hilfsmethode könnte folgendermaßen aussehen:
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;
}
Die Methode gibt eine neue (oder dieselbe) DimensionDefault RecId zurück. Wenn Sie also einen Dimensionswert für einen Datensatz aktualisieren – was wahrscheinlich der häufigste Fall ist –, sollten Sie sicherstellen, dass Sie das Dimensionsfeld in diesem Datensatz mit dem neuen Wert aktualisieren.
Weitere Informationen
Wenn Ihnen dieser Beitrag gefallen hat, könnten Ihnen auch diese Vorschläge gefallen:
- Erstellen eines Nachschlagefelds für eine finanzielle Dimension in Dynamics 365
- Anzeige- oder Bearbeitungsmethode über Erweiterung in Dynamics 365 hinzufügen
- Dynamics 365 FO Virtual Machine Dev oder Test in den Wartungsmodus versetzen
