Posodobite vrednost finančne razsežnosti iz kode X++ v Dynamics 365
Objavljeno: 16. februar 2025 ob 12:01:35 pop. UTC
Nazadnje posodobljeno: 13. november 2025 ob 1:37:47 pop. UTC
V tem članku je pojasnjeno, kako posodobiti vrednost finančne dimenzije iz kode X++ v storitvi Dynamics 365, vključno s primerom kode.
Update Financial Dimension Value from X++ Code in Dynamics 365
Informacije v tej objavi temeljijo na programu Dynamics 365. Delovati bi moralo tudi v programu Dynamics AX 2012, vendar tega še nisem posebej preizkusil.
Pred kratkim sem dobil nalogo, da posodobim vrednost ene finančne dimenzije na podlagi neke logike obrazca.
Kot verjetno veste, so finančne dimenzije v programu Dynamics AX 2012 shranjene v ločenih tabelah in se nanje sklicuje prek RecId, običajno v polju DefaultDimension.
Celoten okvir za upravljanje dimenzij je nekoliko zapleten in pogosto se znajdem v situaciji, ko moram ponovno prebrati dokumentacijo o njem, morda zato, ker s tem ne delam tako pogosto.
Kakorkoli že, posodabljanje polja v obstoječem naboru dimenzij se pogosto pojavlja, zato sem se odločil, da napišem seznam svojega najljubšega recepta ;-)
Statična uporabna metoda bi lahko izgledala takole:
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 vrne nov (ali enak) DimensionDefault RecId, zato morate pri posodabljanju vrednosti dimenzije za zapis – kar je verjetno najpogostejši scenarij – zagotoviti, da posodobite polje dimenzije v tem zapisu z novo vrednostjo.
Nadaljnje branje
Če vam je bila ta objava všeč, vam bodo morda všeč tudi ti predlogi:
- Visual Studio se obesi ob zagonu med nalaganjem nedavnih projektov
- Dodajte način prikaza ali urejanja prek razširitve v Dynamics 365
- Prestavite Dynamics 365 FO Virtual Machine Dev ali Test v način vzdrževanja
