Translate

Tuesday, September 29, 2015

AX2012- Update/Change FinancialDimension value in X++ code

static void PSV_UpdateOpDivDimension_Items(Args _args)
{
InventTable inventTable;
DimensionAttributeValueSetStorage dimStorage;
DimensionAttribute dimAttrOpDiv;
DimensionAttributeValue dimAttributeValue;
changeCompany('DAT')
{
while select forUpdate inventTable
{
ttsBegin;
dimStorage = DimensionAttributeValueSetStorage::find(inventTable.DefaultDimension);
dimAttrOpDiv = DimensionAttribute::findByName("Operating_Division");

dimAttributeValue = DimensionAttributeValue::findByDimensionAttributeAndValue(dimAttrOpDiv, 'NewValue', true, true);

dimStorage.addItem(dimAttributeValue);
inventTable.DefaultDimension = dimStorage.save();
inventTable.doUpdate();
ttsCommit;
}
}
}


This code updates the items financial dimensions to new values.


hope this helps,
Thanks
Prasan

Monday, September 22, 2014

Updating the value of existing dimesnions - Default dimension

Here is a code to update the value of particular dimensions for items

InventTable inventTable;

DimensionAttributeValueSetStorage dimStorage;

DimensionAttribute dimAttrOpDiv;

DimensionAttributeValue dimAttributeValue;

while select forUpdate inventTable

{

ttsBegin;

dimStorage = DimensionAttributeValueSetStorage::find(inventTable.DefaultDimension);

dimAttrOpDiv = DimensionAttribute::findByName("DIMENSION NAME);

dimAttributeValue = DimensionAttributeValue::findByDimensionAttributeAndValue(dimAttrOpDiv, 'VALUE', true, true);


dimStorage.addItem(dimAttributeValue);

inventTable.DefaultDimension = dimStorage.save();

inventTable.doUpdate();


ttsCommit;






}

}