Quick BI中设置参数跳转,查询控件接收通过全局参数跳转的值,数据展示正常;但是切换查询控件的值,点击查询,发现数据返回为空
更新时间:
复制为 MD 格式
问题描述
Quick BI中设置参数跳转,查询控件接收通过全局参数跳转的值,数据展示正常;但是再切换查询控件的值,点击查询,发现数据返回为空。具体问题描述如下:
- 跳转目标仪表板的全局参数如下设置:

- 仪表板跳转设置如下:

- 跳转后数据展示正常:

- 跳转之后,切换查询控件值之后再点击查询,数据返回为空:

确认上述跳转目标仪表板中“产品包箱”实际是包含“大型箱子”类数据的:
问题原因
跳转的目标仪表板中,全局参数和查询控件及对应的图表(本例中为交叉表“跳转到的交叉表”)都有关联。导致跳转的时候参数值同时传递给图表和查询控件,实际跳转后,目标仪表板查询数据的SQL语句中Where子句中有两个产品箱包的条件:

对应的SQL语句如下:
SELECT ADR_T_1_.`shipping_type` AS T_AEC_2_, ADR_T_1_.`order_level` AS T_A93_3_,
ADR_T_1_.`product_box` AS T_A1B_4_, SUM(ADR_T_1_.`order_number`) AS T_AF2_5_,
SUM(ADR_T_1_.`profit_amt`) AS T_AB5_6_
FROM `luyao_online_proj`.`company_sales_record` ADR_T_1_
WHERE ADR_T_1_.`product_box` ='中型箱子'AND ADR_T_1_.`product_box` ='中型箱子'
GROUP BY ADR_T_1_.`shipping_type`, ADR_T_1_.`order_level`, ADR_T_1_.`product_box`
ORDER BY T_AEC_2_ ASC, T_A93_3_ ASC, T_A1B_4_ ASC LIMIT 200
基于上述原因,跳转之后再切换查询条件选项为“大型箱子”之后,只修改了传递给查询控件的值,图表直接接受的参数值还是跳转的时候携带的。这个时候具体的SQL如下,返回结果中“箱包类型”既要是“中型箱子”又要是“大型箱子”,因此返回结果为空:

SELECT ADR_T_1_.`shipping_type` AS T_AEC_2_, ADR_T_1_.`order_level` AS T_A93_3_,
ADR_T_1_.`product_box` AS T_A1B_4_, SUM(ADR_T_1_.`order_number`) AS T_AF2_5_,
SUM(ADR_T_1_.`profit_amt`) AS T_AB5_6_
FROM `luyao_online_proj`.`company_sales_record` ADR_T_1_
WHERE ADR_T_1_.`product_box` ='大型箱子'AND ADR_T_1_.`product_box` ='中型箱子'
GROUP BY ADR_T_1_.`shipping_type`, ADR_T_1_.`order_level`, ADR_T_1_.`product_box`
ORDER BY T_AEC_2_ ASC, T_A93_3_ ASC, T_A1B_4_ ASC LIMIT 200
解决方案
修改跳转目标仪表板的全局参数只和查询控件关联即可:

效果如下:

适用于
- Quick BI
该文章对您有帮助吗?