Atnaujinkite finansinės dimensijos vertę iš X++ kodo sistemoje „Dynamics 365“.
Paskelbta: 2025 m. vasario 16 d. 12:01:19 UTC
Paskutinį kartą atnaujinta: 2025 m. lapkričio 13 d. 13:37:20 UTC
Šiame straipsnyje paaiškinama, kaip atnaujinti finansinės dimensijos reikšmę iš X++ kodo programoje „Dynamics 365“, įskaitant kodo pavyzdį.
Update Financial Dimension Value from X++ Code in Dynamics 365
Šiame įraše pateikta informacija pagrįsta „Dynamics 365“. Ji taip pat turėtų veikti „Dynamics AX 2012“, bet aš to konkrečiai neišbandžiau.
Neseniai man buvo pavesta atnaujinti vienos finansinės dimensijos reikšmę remiantis tam tikra formos logika.
Kaip tikriausiai žinote, kadangi „Dynamics AX 2012“ finansinės dimensijos saugomos atskirose lentelėse ir į jas nurodoma per „RecId“, paprastai lauke „DefaultDimension“.
Visa dimensijų tvarkymo sistema yra gana sudėtinga ir man dažnai tenka iš naujo perskaityti jos dokumentaciją, galbūt todėl, kad su šia tema dirbu retai.
Šiaip ar taip, lauko atnaujinimas esamame dimensijų rinkinyje yra dažnas uždavinys, todėl pamaniau, kad parašysiu savo mėgstamą receptą ;-)
Statinis naudingumo metodas galėtų atrodyti taip:
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;
}
Metodas grąžina naują (arba tą patį) „DimensionDefault RecId“, todėl atnaujinant įrašo dimensijos reikšmę (o tai tikriausiai yra dažniausiai pasitaikantis scenarijus) reikėtų atnaujinti to įrašo dimensijos lauką nauja reikšme.
Papildoma literatūra
Jei jums patiko šis įrašas, jums taip pat gali patikti šie pasiūlymai:
- Pridėkite rodymo arba redagavimo metodą naudodami plėtinį sistemoje „Dynamics 365“.
- Įjunkite „Dynamics 365 FO Virtual Machine Dev“ arba „Test“ į priežiūros režimą
- "Visual Studio" pakimba paleidimo metu, kai įkeliami naujausi projektai
