如何在K3 WISE BOS集成开发工具中自定义字段过滤条件

1.结论

对于输入过滤条件后BOS报“列名不正确”的过滤条件,要在列名前增加x2标识

无效的过滤

FNumber in (002,003,004,005,011,020)

正确的过滤

x2.FNumber in (002,003,004,005,011,020)

2.完全可以不看的探索过程

有客户需要我们在WISE中增加新单据,其中有个基础资料字段需要根据客户的的需求进行过滤。

我想这不是很简单的嘛,甚至WISE BOS的文档中直接都有操作方式。

4.3.2 字段属性

 

每种字段类型都有一些属性需要设置,通过设置属性满足来满足实际的业务需要。

以上引用内容来自K3V14.0BOS用户手册

用户需要的是对一个类型为部门的基础资料字段过滤,让用户只能选择总部的部门。部门本身并没有标识表明是否为单据体,和客户讨论之后得出了总部部门的列表。

实际在数据库里部门的结构如下

看上去,只要在对应字段的过滤属性填下

FNumber in (002,003,004,005,011,020)

就行。然而,报错了!

既然列名不明确,那我就明确一下列名试试,部门对应的表为t_Department,那我就改成

t_Department.FNumber in (002,003,004,005,011,020)

依然报错,这次提示信息为“无法绑定由多个部分组成的标识符”,我将t_Department改为a/b/x均无法通过

 

好吧,看下文档上的蛛丝马迹。根据上面引用的文档,我去ICClassTableInfo表查了过滤属性FFilter,发现其中有一条Filter为

x2.FItemID<>GetFldValue(FDepartmentID,0)

怀着尝试一下的心态,我将原来的过滤条件改为

x2.FNumber in (002,003,004,005,011,020)

BOS没有报错,保存,运行,OK!

 

个人认为是由于wise的数据结构是吧所有字段的过滤条件都至于同一张表单数据表中,导致过滤时选择列明不明确,所以需要在之前增加标识,但是尝试了一下x1,x3,都报“无法绑定由多个部分组成的标识符”,个人猜测是金蝶本身把当前基础资料的标识符设置为了x2,具体细节还得慢慢探索才行。

转载于:https://www.cnblogs.com/mirageJ/p/7413046.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值