Päivitä taloudellisen ulottuvuuden arvo X++-koodista Dynamics 365:ssä
Julkaistu: 16. helmikuuta 2025 klo 12.01.04 UTC
Viimeksi päivitetty: 13. marraskuuta 2025 klo 13.36.10 UTC
Tässä artikkelissa selitetään, miten taloushallinnon dimension arvo päivitetään X++-koodista Dynamics 365:ssä, ja annetaan myös koodiesimerkki.
Update Financial Dimension Value from X++ Code in Dynamics 365
Tämän viestin tiedot perustuvat Dynamics 365:een. Sen pitäisi toimia myös Dynamics AX 2012:ssa, mutta en ole testannut sitä erikseen.
Minulle annettiin äskettäin tehtäväksi päivittää yhden talousulottuvuuden arvo jonkin lomakelogiikan perusteella.
Kuten luultavasti tiedät, Dynamics AX 2012:n talousdimensiot tallennetaan erillisiin taulukoihin ja niihin viitataan RecId-tunnuksen kautta, yleensä DefaultDimension-kentässä.
Koko ulottuvuuksien käsittelyjärjestelmä on jonkin verran monimutkainen, ja joudun usein lukemaan siihen liittyvää dokumentaatiota uudelleen, ehkä siksi, etten työskentele sen kanssa kovin usein.
Joka tapauksessa, olemassa olevan ulottuvuusjoukon kentän päivittäminen on asia, joka tulee usein esiin, joten ajattelin tehdä kirjoituksen suosikkireseptistäni ;-)
Staattinen apuohjelmametodi voisi näyttää tältä:
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;
}
Metodi palauttaa uuden (tai saman) DimensionDefault RecId -arvon, joten jos päivität tietueen ulottuvuusarvoa – mikä on luultavasti yleisin skenaario – sinun tulee varmistaa, että päivität kyseisen tietueen ulottuvuuskentän uudella arvolla.
Lisälukemista
Jos pidit tästä postauksesta, saatat pitää myös näistä ehdotuksista:
- Aseta Dynamics 365 FO Virtual Machine Dev tai Test ylläpitotilaan
- Visual Studio roikkuu käynnistyksen yhteydessä, kun se lataa viimeaikaisia projekteja
- Hakukentän luominen taloudelliselle ulottuvuudelle Dynamics 365:ssä
