განაახლეთ ფინანსური განზომილების ღირებულება X++ კოდიდან Dynamics 365-ში
გამოქვეყნებულია: 16 თებერვალი, 2025, 12:03:35 UTC
ეს სტატია განმარტავს, თუ როგორ უნდა განაახლოთ ფინანსური განზომილების მნიშვნელობა X++ კოდიდან Dynamics 365-ში, კოდის მაგალითის ჩათვლით.
Update Financial Dimension Value from X++ Code in Dynamics 365
ამ პოსტში მოცემული ინფორმაცია ეფუძნება Dynamics 365-ს. ის ასევე უნდა მუშაობდეს Dynamics AX 2012-ში, მაგრამ მე ის აშკარად არ გამომიცდია.
მე ცოტა ხნის წინ დამევალა ერთი ფინანსური განზომილების ღირებულების განახლება რაიმე ფორმის ლოგიკის საფუძველზე.
როგორც მოგეხსენებათ, რადგან Dynamics AX 2012 ფინანსური ზომები ინახება ცალკეულ ცხრილებში და მითითებულია RecId-ის მეშვეობით, ჩვეულებრივ DefaultDimension ველში.
განზომილებების დამუშავების მთელი ჩარჩო გარკვეულწილად რთულია და მე ხშირად მიწევს მასზე დოკუმენტაციის ხელახლა წაკითხვა, ალბათ იმიტომ, რომ ეს არ არის ის, რასაც ხშირად ვმუშაობ.
ყოველ შემთხვევაში, არსებული განზომილების ნაკრების ველის განახლება არის ის, რაც ხშირად ჩნდება, ამიტომ ვიფიქრე, დავწერო ჩემი საყვარელი რეცეპტი ;-)
სტატიკური სასარგებლო მეთოდი შეიძლება ასე გამოიყურებოდეს:
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;
}
მეთოდი აბრუნებს ახალ (ან იგივე) DimensionDefault RecId-ს, ასე რომ, თუ ჩანაწერისთვის განზომილების მნიშვნელობის განახლება - რაც ალბათ ყველაზე გავრცელებული სცენარია - დარწმუნდით, რომ განაახლეთ ამ ჩანაწერის განზომილების ველი ახალი მნიშვნელობით.