反饋已提交
網絡繁忙
FR系统提供了强大的数据支持功能,支持多种数据库和类型,并提供了异构数据源模型,使得同一张报表的数据可以来源于同一数据库的多个不同表,或多个不同数据库。
数据JSON服务API功能插件是将报表数据集、报表结果输出为JSON格式内容,并作为WEB接口服务开放,提供给报表系统前端或者其他系统使用。
插件功能提供JSON数据接口服务功能。
主要功能:
报表模板数据集输出JSON服务API功能,提供调用接口。
报表结果输出JSON服务API功能,提供调用接口。
工具栏按钮实现报表内容导出JSON文件下载功能。
点击下载插件:数据JSON服务API插件
设计器插件安装方法参照 设计器插件管理
服务器安装插件方法参照 服务器插件管理
安装插件完成后,即可使用JSON接口服务功能。
URL地址
http://ip:port/webroot/decision/url/api/data
METHOD
POST
Content-Type
application/json
RAW
{
"report_path": "Parameter_3.cpt",
"datasource_name": "ds2",
"page_number": 1,
"page_size": 100,
"timestamp": "123456789",
"sign": "468705dc60eff5f67438f9b94ed15245",
"parameters": [{
"name": "地区",
"type": "String",
"value": "华北"
},
"name": "产品类型",
"value": "饮料"
}
]
Response响应
err_code : 0,
err_msg : "",
total_page_number : 10,
page_number : 1,
page_size : 10,
data : [{key1:v11,key2:v12,...},...]
参数说明:
l report_path:报表模板路径名称(必须项),例如 doc/Parameter_3.cpt。
l datasource_name:数据集名称(必须项);
l page_number:页码(必须项);
l page_size:每页行数(必须项);
l parameters:数据集参数(可选);参数名对应数据集中参数名;
l timestamp:当前时间的毫秒数(用于签名认证,可选);
l sign:安全签名(用于签名认证,可选);
响应说明:
l err_code:0为正常,其他参见错误码表;
l err_msg:错误信息;
l total_page_number:总页数;
l page_number:当前页码;
l data:获取到的JSON数据;数据key为数据集列名。
数据集JSON示例:
访问报表Parameter_3.cpt的数据集内容。
获取data结果:
http://ip:port/webroot/decision/url/api/report
"start_page": 1,
"end_page": 1,
"err_code": 0,
"err_msg": "",
"total_page_number": 1,
"data": [
[{
"A1": "华北销售额","A2": "地区"
}]
l start_page:报表内容起始页码(必须项);
l end_page:报表内容结束页码(必须项);
l parameters:报表面板参数(可选);参数名对应模板参数空间名称;
l start_page:报表内容起始页码;
l end_page:报表内容结束页码;
l data:获取到的JSON数据;数据key为行列码标识。
报表结果JSON示例:
参数JSON转换规则
参数类型
类型值
示例
字符串
String
{"name":"aa","type":"String","value":""}
整型
Integer
{"name":"aa","type":"Integer","value":""}
双精度型
Double
{"name":"aa","type":"Double","value":""}
日期
Date
{"name":"aa","type":"Date","value":""}
布尔型
Boolean
{"name":"aa","type":"Boolean","value":""}
公式
Formula
{"name":"aa","type":"Formula","value":""}
安全签名配置
报表平台管理页面(数据决策系统)-》管理系统-》系统管理-》点击‘常规’选项卡,配置‘JSON服务接口插件’的秘钥内容。如图
安全签名的计算规则为 MD5(秘钥code+report_path+timestamp),默认秘钥为空,不验证。 如配置了秘钥,系统会依规则计算MD5值与sign比较,相同即符合。
错误码表
err_code
err_msg
0
正常
10
report_path参数值不正确
11
datasource_name参数值不正确
12
page_number参数值不正确
13
page_size参数值不正确
14
报表模板文件不存在
15
安全签名不正确
16
start_page参数值不正确
17
end_page参数值不正确
20
报表数据集为空
在设计器打开对应报表文件,点击菜单“模板”->“模板web属性”->“分页预览属性”,会看到插件对应 JSON导出。先选择为“为该模板单独设置”项,再选择对应组件添加即可。
如图:
预览报表时,工具栏会显示导出按钮,点击即可执行。
在报表中新增按钮,并添加事件。js代码如下:
$.ajax({ url: "http://localhost:8075/webroot/decision/url/api/data", type: "POST", contentType: "application/json;charset=utf-8", dataType: "json", data: JSON.stringify({ "report_path": "GettingStarted.cpt", "datasource_name": "ds1", "page_number": 1, "page_size": 100, "parameters": [{ "name": "地区", "type": "String", "value": "华北" }] }), success: function(data) { alert("导出成功" + data.toString()); }, error: function() { alert("baocuo"); }});
示例模板:
示例模板.cpt
以上。
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙