点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
是否可以通过DRAD表的值来过滤宏中的文档选择?
目标是过滤宏中没有排他性材料链接的文档。
这是我到目前为止得到的(它不起作用):
function filter_selected_docs(){ //获取活动选择(仅文档) KL_Selection = KEYLIST_FROM_CONTEXT(" active"," selected"," doc"); if(KL_Selection.length> 0){ set_Selection = CREATE_SET(KL_Selection); //使用材质链接过滤所有文档 p_Filter1 = PARAMETER_MAP(" doc_filter_fields"); p_Filter1.HASMATERIAL =" X"; set_Filter1 = FILTER(set_Selection," doc",p_Filter1); //检查是否还有要检查的文件 KL_WithMaterialLinks = KEYLIST_FROM_SET(set_Filter1); if(KL_WithMaterialLinks.length> 0){ //使用独家材料链接过滤所有文档 //注意:这将同时返回两个具有多个材料链接的文档 //和只有一个实质链接的文档 p_Filter2 = PARAMETER_MAP(); p_Filter2.OBJECT_TYPE =" DRAW"; p_Filter2.TABLENAME =" DRAD"; p_Filter2.FIELDNAME =" CAD_POS"; p_Filter2.SIGN =" I"; p_Filter2.OPTION =" EQ"; p_Filter2.LOW =" X"; set_Filter2 = FILTER(set_Filter1," doc",p_Filter2); //从列表中删除所有"好"文档 set_Filter3 = OPERATION_SET(" symmdiff",set_Filter1,set_Filter2); //检查结果:如果列表不为空,则有错误 KL_Result = KEYLIST_FROM_SET(set_Filter3); if(KL_Result.length> 0){ WRITE_OBJECTLIST(KL_Result,"没有排他的材料链接的文件"); alert(KL_Result.length +"所选文档没有排他的材料链接。"); }其他{ alert("成功!\ n所有选定的文档确实具有排他的材料链接。"); } }其他{ alert("所选文档中没有一个具有重要链接。"); } }其他{ alert("选择至少一个文档。"); } }
托马斯你好,
请查看此链接:
https://wiki.scn.sap.com/wiki/display/PLM/How+to+find+assembly+components+with+ambiguous+material+links
您可以找到此用例所需的过滤器参数,尽管它不是"通用" DRAD过滤器。
顺便说一句,对于您的用例,您实际上不需要任何宏。 只需将您的选择发送到对象列表,选择对象列表并在材质图标列上的ObjectBrowser中过滤表格。
您好Waldemar,
谢谢,它成功了!
一周热门 更多>