找回密码
 立即注册
搜索
查看: 701|回复: 0

单据列表首行增加过滤的几种办法(简单粗暴!)

[复制链接]

8

主题

3

回帖

72

积分

注册会员

积分
72
发表于 2023-7-6 15:36:12 | 显示全部楼层 |阅读模式
1、在列表上需要显示过滤行——BOS设计器-其他出库单,列表插件-注册Python脚本(这种办法是最简单实现,针对基础资料、报表等单据都可使用,成功率最高)

实现效果:


2、在打开单据内,单据头需要显示首行过滤的——BOS设计器-其他出库单,构建表单插件-注册Python脚本(这种办法是最简单实现,针对基础资料、报表等单据都可使用,成功率最高)


实现效果:

以上两种通过注册Python脚本得以实现,是比较简单粗暴,接下来还有另外两种办法实现,但成功率没有注册Python脚本成功率高,感兴趣的同学也可以学习一下
3、列表显示过滤行(具体看图标记过程)


4、单据内明细列表(单据体)首行过滤


(3、4两种方法不一定成功,设置后最好去客户端查看是否实现单据首行过滤)


技巧点:以上几种办法只能对某一个单据进行实现首行过滤,那有没有办法设置一次,对全部的业务单据都生效?答案是有的!
打开BOS——BOS模块——基对象模版


在基对象模版注册插件后,将对所有业务单据都可生效,方便,快速!

列表首行过滤Python脚本如下:



#[code]
#实现单据体首行过滤
#by wanghl 2015-11-6
clr.AddReference('System')
clr.AddReference('Kingdee.BOS.Core')
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
from Kingdee.BOS.Core.Metadata.EntityElement import *
from System import *

#方法覆写
def OnInitialize(e):
    e.Paramter.SetCustomParameter("showFilterRow", True);
#列表过滤

#方法覆写
#def CreateControl(e):
#        if isinstance(e.ControlAppearance, EntryEntityAppearance):
#                e.Control.Put("showFilterRow", True);
#单据过滤
#[code]


(单据内,单据体,明细信息)首行过滤Python脚本如下:


#实现单据体首行过滤

#by wanghl 2015-11-6

clr.AddReference('System')

clr.AddReference('Kingdee.BOS.Core')

from Kingdee.BOS.Core.DynamicForm.PlugIn import *

from Kingdee.BOS.Core.Metadata.EntityElement import *

from System import *



#方法覆写

def CreateControl(e):

        if isinstance(e.ControlAppearance, EntryEntityAppearance):

                e.Control.Put("showFilterRow", True);











本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|LinkEasy

GMT+8, 2024-11-1 10:22 , Processed in 0.017658 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表