James.Lv 发表于 2021-12-17 16:39:10

JSON数据源带参数实现多值查询

本帖最后由 James.Lv 于 2021-12-17 16:40 编辑

在报表设计中,常常需要使用到JSONAPI的数据源,API的数据源基本都需要传递参数去请求,普通的参数都是单值的例如:http://127.0.0.1:4523/mock/510480/api/test/get?id=1

但有些接口在设计的时候支持接受多值参数,也就是参数是一个数组
例如:http://127.0.0.1:4523/mock/510480/api/test/get?id=


本贴就来介绍如何实现多值参数的JSONAPI数据源报表设计



重点:报表参数设置为多值参数
数据源使用表达式将参数拼接成目标格式
Join(@参数, ",")

具体实现步骤
一、WEB端设计器
1.创建报表,添加数据源
使用常量值参数,先将整个数据结果获取过来

2.添加数据集,获取要解析的数据节点

3.此时绑定表格组件,预览即可查看到请求的数据


4.添加报表参数,设置为多值参数,并绑定可用数据
可用数据可以是查询结果,也可以是手动添加


5.参数设置好之后跟数据源进行绑定关联
修改数据源,改为表达式:{Join(@id, ",")},这个表达式就是将参数多个值通过逗号分隔拼接起来
jsondoc=http://127.0.0.1:4523/mock/510480/api/test/get?id=[{Join(@id, ",")}];


6.预览即可通过参数查询数据


二、桌面端设计器
整个设计过程跟web端一致,唯一的区别是数据源的表达式不太一样
="jsondoc=http://127.0.0.1:4523/mock/510480/api/test/get?id=[" & Join(Parameters!id.Value, ",") & "];"





realgoal 发表于 2021-12-17 16:46:37

好的,谢谢您

James.Lv 发表于 2021-12-17 16:49:47

realgoal 发表于 2021-12-17 16:46
好的,谢谢您

客气:mj72:
页: [1]
查看完整版本: JSON数据源带参数实现多值查询