历史版本2 :FineReport接收并使用数据服务发布的数据 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
目录:
1. 概述编辑
1.1 应用场景
用户为保证数据安全,不希望直接将数据仓库账号开发给第三方使用,且拥有 FineDataLink 作为数据中台,想使用「数据服务」功能,统一分发数据给第三方使用,同时想要使用 FineReport 直接接收数据制作看板。
1.2 实现思路
方案一:使用JSON 数据集插件,在报表设计器或决策平台安装插件并接收数据服务 API 数据。
方案二:使用数据工厂数据集插件,在报表设计器或决策平台安装插件并接收数据服务 API 数据。
2. 数据服务发布数据编辑
2.1 新建API
订单明细全表-
FDL数据服务模块,api列表,点击新建,输入API名称、描述、请求方式、api地址等信息
选择数据源和编写sql语句,本场景的要求为:可根据货主地区、货主省份动态返回对应数据,两个参数都为空则返回全部,任意一个参数可为空。
对应sql如下:
SELECT * FROM `xiangmu1`.`Arri_DWD_OrderDetailsAll`
WHERE 1=1 AND
CASE
WHEN "${area}" != "" AND "${province}" != "" THEN 货主地区 IN ('${area}') AND 货主省份 IN ('${province}')
WHEN "${area}" = "" AND "${province}" != "" THEN 货主省份 IN ('${province}')
WHEN "${area}" != "" AND "${province}" = "" THEN 货主地区 IN ('${area}')
ELSE 1=1
END;
请求参数配置将参数设置为允许为空,且默认值为空。
配置完成后可通过查询预览功能,动态输入不同情况下的参数传递情况,验证是否可正常返回数据。