我正在与dynamics ax 2012
合作,我正在寻找一个可以验证procurement category hierarchy
中是否存在产品的功能
此监听Product Information Management -> Common -> Products -> Released Product
显示已发布的产品列表
在actionpane product
中,我们有按钮验证;当我在grid control
中选择一条记录并点击按钮验证
我应该验证如果采购类别附加到此产品,则没有错误;如果此产品没有附加采购类别,则必须显示错误消息
显然,采购类别是一个类别层次结构,如果附加了此类别的产品,我会去寻找, 如何创建在类别层次结构中搜索的功能
任何人都可以帮助我吗?
答案 0 :(得分:2)
您需要两个表来进行验证:
EcoResProductCategory
告诉我们产品的类别和类别层次结构。EcoResCategoryHierarchyRole
告诉您类别层次结构具有什么角色。角色本身就是枚举EcoResCategorynamedHierarchyRole
,您可以在其中找到元素Procurement
。现在,您可以在查询中组合这两个表,以检查产品是否在具有采购角色的类别层次结构中具有类别。
答案 1 :(得分:0)
在班级EcoResProductValidatonService
中,此类通过按钮验证来调用此收听页面产品信息管理 - >常见 - >产品 - >发布产品:我正在研究这段代码,你怎么看?还有另外一个原因吗?
EcoResProductCategory resProductCateg;
if (TableParm::find().ProcRescatgProduct){
InventTable = InventTable::find( 'Item id' ); // pass the item id
resProductCateg = EcoResProductCategory::findByProductIdCategoryHierarchyRole(inventTable.Product,EcoResCategoryNamedHierarchyRole::Procurement);
if(resProductCateg){
info(strFmt(" %1 procurement category is attached to this product ",InventTable.ItemId));
}else{
info(strFmt(" %1 No procurement category is attached to this product ",InventTable.ItemId));
}
}
问题是resProductCateg的价值是0,知道我有生产类别的产品