报表过滤框快捷过滤条件设置模糊查询过滤掉禁用基础资料二开方案原创
金蝶云社区-fengyj
fengyj
9人赞赏了该文章 690次浏览 未经作者许可,禁止转载编辑于2022年03月16日 15:40:21

关键词:物料收发明细;物料收发汇总;过滤框;快捷过滤;模糊查询;禁用;


因业务需要,需要在物料收发明细、物料收发汇总等报表输入物料、仓库等基础资料数据时,模糊查询不能把已经禁用的数据查询出来,如果需要查禁用的数据,需要打开F8弹出对应基础资料的列表,自己设置过滤条件查询。如下图:

1)已禁用的物料数据

禁用物料.png


2)模糊查询查不到禁用物料

模糊查询查不到已禁用物料.png


3)F8列表能查询禁用物料

模糊查询禁用数据效果.png



二开配置方案如下:

       扩展物料收发明细过滤框,在表单插件中注册python脚本,如下图:

模糊查询过滤掉禁用物料.png



    **附python脚本如下:(复制出来后注意空格)

import clr
clr.AddReference('Kingdee.BOS')
clr.AddReference('Kingdee.BOS.Core')
from Kingdee.BOS import *
from Kingdee.BOS.Core import *
from Kingdee.BOS.Core.CommonFilter.PlugIn import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
from System import DateTime

def BeforeF7Select(e):
  if (e.FieldKey.ToUpperInvariant()=="FBEGINMATERIALID" or e.FieldKey.ToUpperInvariant()=="FENDMATERIALID") and e.IsButtonClick==False:
    if len(e.ListFilterParameter.Filter)==0:
        e.ListFilterParameter.Filter=" FFORBIDSTATUS='A'"
    else:
        e.ListFilterParameter.Filter=" AND FFORBIDSTATUS='A'"


赞 9