static void XXXX(Args _args)
{
DimensionAttribute dimAttr;
DimensionAttributeValue dimAttrValue;
Name dimName;
Name dimValue;
Common common;
DictTable dictTable;
Map dimSpec;
dimName = "Department";
dimValue = "025";
dimSpec =
DimensionDefaultingEngine::createEmptyDimensionSpecifiers();
dimAttr = DimensionAttribute::findByName(dimName);
dictTable = new DictTable(dimAttr.BackingEntityType);
common = dictTable.makeRecord();
select firstonly common where common.(dimAttr.ValueAttribute) == dimValue;
if (common)
{
dimAttrValue = DimensionAttributeValue::findByDimensionAttributeAndEntityInst(
dimAttr.RecId, common.(dimAttr.KeyAttribute),
false, false);
info(strFmt("%1", common.(dimAttr.ValueAttribute)));
}
}
Find or Create Attribute Value
select firstonly
dimensionAttributeValue
where
dimensionAttributeValue.DimensionAttribute == _dimensionAttribute
&& dimensionAttributeValue.EntityInstance == _entityInstance
&& dimensionAttributeValue.IsDeleted == false;
// Create value if specified and not currently existing
if (!dimensionAttributeValue && _createIfNecessary)
{
ttsbegin;
dimensionAttributeValue.DimensionAttribute = _dimensionAttribute;
dimensionAttributeValue.EntityInstance = _entityInstance;
dimensionAttributeValue.insert();
dimensionAttributeValue.selectForUpdate(_forUpdate);
ttscommit;
}
{
DimensionAttribute dimAttr;
DimensionAttributeValue dimAttrValue;
Name dimName;
Name dimValue;
Common common;
DictTable dictTable;
Map dimSpec;
dimName = "Department";
dimValue = "025";
dimSpec =
DimensionDefaultingEngine::createEmptyDimensionSpecifiers();
dimAttr = DimensionAttribute::findByName(dimName);
dictTable = new DictTable(dimAttr.BackingEntityType);
common = dictTable.makeRecord();
select firstonly common where common.(dimAttr.ValueAttribute) == dimValue;
if (common)
{
dimAttrValue = DimensionAttributeValue::findByDimensionAttributeAndEntityInst(
dimAttr.RecId, common.(dimAttr.KeyAttribute),
false, false);
info(strFmt("%1", common.(dimAttr.ValueAttribute)));
}
}
Find or Create Attribute Value
select firstonly
dimensionAttributeValue
where
dimensionAttributeValue.DimensionAttribute == _dimensionAttribute
&& dimensionAttributeValue.EntityInstance == _entityInstance
&& dimensionAttributeValue.IsDeleted == false;
// Create value if specified and not currently existing
if (!dimensionAttributeValue && _createIfNecessary)
{
ttsbegin;
dimensionAttributeValue.DimensionAttribute = _dimensionAttribute;
dimensionAttributeValue.EntityInstance = _entityInstance;
dimensionAttributeValue.insert();
dimensionAttributeValue.selectForUpdate(_forUpdate);
ttscommit;
}
This comment has been removed by the author.
ReplyDelete