Ažurirajte vrijednost financijske dimenzije iz X++ koda u sustavu Dynamics 365
Objavljeno: 16. veljače 2025. u 12:02:47 UTC
Zadnje ažuriranje: 13. studenoga 2025. u 13:38:58 UTC
Ovaj članak objašnjava kako ažurirati vrijednost financijske dimenzije iz X++ koda u sustavu Dynamics 365, uključujući primjer koda.
Update Financial Dimension Value from X++ Code in Dynamics 365
Informacije u ovom postu temelje se na sustavu Dynamics 365. Trebalo bi raditi i u sustavu Dynamics AX 2012, ali nisam to eksplicitno testirao.
Nedavno sam dobio zadatak ažuriranja vrijednosti jedne financijske dimenzije na temelju neke logike obrasca.
Kao što vjerojatno znate, budući da se financijske dimenzije u Dynamics AX 2012 pohranjuju u odvojenim tablicama i referenciraju se putem RecId-a, obično u polju DefaultDimension.
Cijeli okvir za rukovanje dimenzijama je donekle složen i često se nađem u situaciji da moram ponovno čitati dokumentaciju o njemu, možda zato što to nije nešto s čime ne radim često.
U svakom slučaju, ažuriranje polja u postojećem skupu dimenzija nešto je što se često događa, pa sam pomislio da bih mogao napisati popis svog omiljenog recepta ;-)
Statička uslužna metoda mogla bi izgledati ovako:
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 vraća novi (ili isti) DimensionDefault RecId, pa ako ažurirate vrijednost dimenzije za zapis - što je vjerojatno najčešći scenarij - trebali biste se pobrinuti da ažurirate polje dimenzije u tom zapisu s novom vrijednošću.
Dodatno čitanje
Ako vam se svidio ovaj post, možda će vam se svidjeti i ovi prijedlozi:
- Stvaranje polja pretraživanja za financijsku dimenziju u sustavu Dynamics 365
- Stavite Dynamics 365 FO Virtual Machine Dev ili Test u način rada za održavanje
- Visual Studio se zamrzava pri pokretanju tijekom učitavanja nedavnih projekata
