【套打】数据表格审批路线数据源过滤(附审批路线特殊字段标识)原创
金蝶云社区-_Tmp
_Tmp
11人赞赏了该文章 3235次浏览 未经作者许可,禁止转载编辑于2020年01月07日 17:13:04
封面

我们在套打的时候,经常会有这样的需求:“审批路线只需要打印审批同意的”,“树形单据体只打印第一级的”,只打印每一个特定数据等。

通常遇到我们这种问题,我们都会联想到数据表格的数据源过滤条件。


这里我们说一下审批路线数据源过滤条件的用法,这个问的比较多。

(备注:审批路线和单据实体数据可能的表现方式不一,单据实体数据可用SQL的用法而审批路线处理有所限制,单据实体数据不做介绍,直接加上过滤字符串拼接)

演示数据如下,使用审批路线做演示。

QQ图片20200106193225.png

针对审批路线,正常的字段标识可以通过数据源-工作流-审批路线查看,但是有几个字段需要特殊处理,无法使用源标识过滤。

映射表如下(红色部分为特殊处理):

节点名称——approve_FActivityName    节点状态——approve_FStatuDesc

开始节点——approve_FSourceActivityName    目的节点——approve_FActivityName

动作主题——approve_FTitle    处理人——approve_FReceiverName

审批项——approve_FActionResult    审批意见——approve_FDisposition

完成时间——approve_FCompletedTime    委托人——approve_FConsignNames

<1>审批路线的常规过滤

等于=,不等于<>,小于<,小于等于<=,大于>,大于等于>=,支持 与AND,或 OR,非 NOT操作符

其中文本使用''单引号,数字直接输入,

日期使用#mm/dd/yyyy hh:mm:ss#(如果是数据库过滤日期就不用了这么处理,这里针对的是审批路线)

示例1只打印审批通过的:

QQ图片20200106194545.png

示例2:演示日期的输入:

QQ图片20200106195903.png

<2>审批路线的高级过滤(语法与SQL一致)

支持数值表达式计算,加+,减-,乘* ,除/,余%。

Like操作符,支持模糊查询,通配符%,前模糊'%XXX',后模糊'XXX%',包含'%XXX%'。

当使用匹配通配符时,需要使用[],例子,匹配前缀为%的字符:'[%]*';匹配前缀为[的字符:'[[]*'

示例3,匹配节点名称前缀为开始:

QQ图片20200106201046.png

示例4,过滤节点名称前缀不是开始:

QQ图片20200106201242.png

IN操作符,包含,各元素用英文逗号,连接。

示例5,IN和NOT IN的用法

image.png

image.png





更多高级用法参考(仅针对审批路线):https://docs.microsoft.com/en-us/dotnet/api/system.data.datacolumn.expression?view=netframework-4.8


备注:当条件写错时,整个数据表格会空,如果条件实在没写错,那么就可能是不支持这个语法了。


赞 11