online报表-动态参数

最后更新于:2022-04-02 07:20:41

online报表 动态参数 === > 概述:Online报表支持在sql中配置参数,然后访问报表的时候,通过URL传递参数值。 [TOC] 示例配置步骤: ## 1.创建带参报表 定义一个带参数的online报表,如下图 >[info] 提醒:SQL解析成功则会自动在`动态报表配置明细`中生成字段信息、在`报表参数`中生成参数信息。 * 报表配置字段如下: ![输入图片说明](https://static.oschina.net/uploads/img/201905/18175558_1095.png "在这里输入图片标题") * 报表参数如下:也可给参数设置默认值 ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/0f/9b/0f9b2e800292973966ec41cbd38fe3e8_1778x568.png) * SQL如下: `select name,age,birthday,sex from demo where sex='${sex}'` ## 2.获取带参数访问地址 进入online报表列表页面,找到上述新增的报表,点击更多项中`配置地址`,在弹出框中点击复制,即可拿到访问该报表的地址 ![输入图片说明](https://static.oschina.net/uploads/img/201905/18175704_LXNg.png "在这里输入图片标题") ![输入图片说明](https://static.oschina.net/uploads/img/201905/18175950_p71m.png "在这里输入图片标题") ## 3.将参数替换成真实值 拿到参数地址为:/online/cgreport/aa48a426ed5b46dd9224e68acf4a90d8?sex=${sex} ,只需要将${sex}替换成需要传入的值即可,如下例 ![输入图片说明](https://static.oschina.net/uploads/img/201905/18180435_VvIX.png "在这里输入图片标题") ## 附录:常见问题 ### 遇到Sql解析失败怎么办? >[info] 若sql解析失败,请检查SQL语句是否使用了复杂函数 或 在函数中定义了动态参数等 如 `name like concat('%','${username}','%') ` 目前Sql解析功能较弱,如果sql遇到这种情况怎么办?方案如下 > 1.将该条件去掉,解析sql > 2.待sql解析完成再拼上去 > 3.在报表参数tab下,手工新增一个参数名为username 对应${username}
';