AX 2009中现有量画面修改
前端时间开发一个东西,需要在现有量画面增加一个字段
但是发现这个display方法写在任何数据源下面都不行,数据取的不对。
因为InventSum这个表只有所有维度都出来时才会有对应关联的inventDim表,不然InventSum表里的InventDimId查不到
终于最后知道一个好方法,不管你显示什么维度都可以查到对应的InventDim
在InventSum数据源下写一个display方法
例子:
display transDate CEC_shipDate(InventSum _inventSum)
{
InventDim inventDimCur; ;
inventDimCur = InventSum.joinChild(); //此处,很关键,也很实用, InventSum.joinChild()这个方法的意思,就是找数据源InventSum的儿子,就算没有InventDimId,也可以找到关系,但是这个方法必须建立在数据源之间有关系
return InventBatch::find(inventDimCur.inventBatchId, _inventSum.ItemId).CEC_InventShipDate;
}
扩展应用:
这样方法还可以用在传数据中,假如从一个form传一个数据源到另外一个from,到时也可以根据这个方法查相关联的数据源的数据,很实用哦。