Bu konuyu oluştururken bir blogda bulduğum dimension hakkında çizilmiş data modelini kullandım. Malesef blogdaki kodu anlayamadım ve bu kodu yazdım:
DimensionDefault d = 5637183219;
DimensionAttributeValueCombination dimensionAttributeValueCombination;
DimensionAttributeValueGroupCombination dimensionAttributeValueGroupCombination;
DimensionAttributeValueGroup dimensionAttributeValueGroup;
DimensionAttributeLevelValue dimensionAttributeLevelValue;
DimensionAttributeValue dimensionAttributeValue;
DimensionAttribute dimensionAttribute;
select dimensionAttributeValueCombination
where dimensionAttributeValueCombination.RecId == d
join dimensionAttributeValueGroupCombination
where dimensionAttributeValueGroupCombination.DimensionAttributeValueCombination ==
dimensionAttributeValueCombination.RecId
join dimensionAttributeValueGroup
where dimensionAttributeValueGroup.RecId == dimensionAttributeValueGroupCombination.DimensionAttributeValueGroup
join dimensionAttributeLevelValue
where dimensionAttributeLevelValue.DimensionAttributeValueGroup == dimensionAttributeValueGroup.RecId
join dimensionAttributeValue
where dimensionAttributeValue.RecId == dimensionAttributeLevelValue.DimensionAttributeValue
join dimensionAttribute
where dimensionAttribute.RecId == dimensionAttributeValue.DimensionAttribute &&
DimensionAttribute.Name == "Proje";
info(DimensionAttributeLevelValue.DisplayValue);
Güncelleme:
Yukarıdaki bağlantı PurchTable defaultDimension alanı için çalışmadı.
Aşağıdaki kodu Andesoft'un web sitesinden aldım:
DimensionDefault d = 5637169331;
DimensionAttributeValueSet dimAttrValueSet;
DimensionAttributeValueSetItem dimAttrValueSetItem;
DimensionAttributeValue dimAttrValue;
DimensionAttribute dimAttr;
Common dimensionValueEntity;
DimensionValue dimensionValue;
DimensionAliasName dimensionName;
dimAttrValueSet = DimensionAttributeValueSet::find(D);
while select dimAttrValueSetItem
where dimAttrValueSetItem.DimensionAttributeValueSet == dimAttrValueSet.RecId
{
dimAttrValue = DimensionAttributeValue::find(dimAttrValueSetItem.DimensionAttributeValue);
dimAttr = DimensionAttribute::find(DimAttrValue.DimensionAttribute);
dimensionvalueentity = DimensionDefaultingControllerBase::findBackingEntityInstance(
curext(),DimAttr,dimAttrvalue.EntityInstance);
dimensionvalue = dimattrvalue.getValue();
info(strFmt("%1 %2",Dimensionvalue, DimAttr.Name));
}
Axapta - Usable functions for queries
5 yıl önce
Hiç yorum yok:
Yorum Gönder