182 2056 1552
新闻banner图
新闻资讯
tellhow news

Dazdata BI(Redash中文商业版)深度应用技术详解

发布日期:2021-11-25 发布人: 

微信图片_20211125111418.jpg

Dazdata BI(Redash中文商业版)自推出以来,受到众多小伙伴的关注,很多都是从初次了解到逐步熟悉,再到深度使用,一路陪伴着我们,给我们提了很多好的建议和改进需求,逐步完善了我们的产品,我们非常感谢这些一路陪伴的小伙伴们。

近期,有很多对Dazdata BI已经比较熟悉的小伙伴都在咨询我们关于Dazdata BI的深度应用问题,在此,我们特意整理了一些关于Dazdata BI中被提及最多的部件联动、视图深入应用、取数函数使用、自定义代码这4个深度使用问题进行一一详解。由于内容较多,所以分两期来讲解,本期内容为:部件联动、视图深入应用、取数函数使用;下期内容为:自定义代码。

一、 部件联动

部件联动,顾名思义就是报表中各部件之间能相互关联,点某个部件中的数据,其他部件中的数据能同步联动。以下图为例:①为年度总数据;②为月度数据;③为每日数据。当点击①部件中的任意数据,在②③部件中会根据①中点击的内容同步变化;点②部件中的数据时,③会根据②中点击内容同步变化;如果是在表头中录入相关数据,各部件也会根据输入内容同步变化。这样,在同一报表中更直观的展示了不同维度的报表数据。

2.jpg

1. 新建一个查询,这个查询会作为主查询,会在上面配置点击事件,以及点击返回的参数名和值。

3.jpg

2. 点击编辑视图—>表格设置,勾选支持行点击,然后选择要返回的列名,返回列名的值会作为返回参数的值。以及要返回的参数的参数名(其他查询视图参数名参数名相同可以接受返回的参数),这里我们选择返回”shop”列,返回的参数名叫做“shop_name”。

4.jpg

3. 新建一个报表,将第2步的视图添加到报表中。

5.jpg

4. 配置内容点击响应动作。点击上面表格部件的部件属性-->弹窗报表-->内容弹窗,内容弹窗类型选择刷新当前报表。

6.jpg

5第四步配置完成点击表格的每一项,我们可以从url中看到已经可以把参数传递出来。

7.jpg

6. 添加第二个查询。查询sql中添加参数,参数名需要与第二步中传出的一致,我这里是”shop_name”

8.jpg


7. 基于第五步查询的数据,制作一个柱状图

9.jpg

8. 将柱状图添加到报表。完成demo制作。

10.jpg

9.(可选)部件的名称支持从url参数取值,这样可以将每次传回的参数组合到参数名上,让视图更直观。

11.jpg

二、 视图深入应用

视图深入应用,主要是在一个显示区域里显示不同维度的数据内容,充分利用屏幕位置,视图深入应用分为多视图切换和组合视图两种。

(一)多视图切换

下图展示的就是多视图切换,红色方框中就是多视图切换模式,同一区域显示不同数据,通过点击菜单,达到视图切换,这样保证了屏幕利用率大大提高。12.jpg13.jpg

1、在部件编辑界面中选择多视图选项,部件默认对应一个视图,可以配置多视图功能最多可设置六张视图(一张主视图+五张可添加视图),但这六张视图不能同时显示,需要配置切换视图样式的导航模式。

2、设置多视图菜单切换风格;

3、在视图中配置对应的查询即可实现多视图切换。

(二)组合视图

当要在一个视图的富余空间指定位置组合叠加其它视图时,可以充分利用显示区域。视图组合考虑到参数等因素只支持统一查询的不同视图进行组合设置。例如,下图在视频视图上不同位置组合了三个视图:

14.jpg

在视图编辑界面点“组合视图”按钮,即可配置组合视图以及位置:

15.jpg

三、 取数函数使用

取数函数用于Markdown部件、视图和自定义代码视图,实现获取后台指定查询结果。以下图为例,红色方框标注的即为通过取数函数获取的数据,查询结果发生变化后,该数据也会根据查询结果实时变化。

16.jpg

取数函数写法,如:

{{"query":1,"colName":"value","rowNumber":2,"stringDecimal":0,"stringDecChar":".","stringThouSep": ",","countRow": true}}

1、取数函数取结果集参数说明:

  • query或querys 查询id,数字,属于必填参数。当用querys时会立即加载,适用于非界面显示元素。

  • parameters 查询参数,json,可选参数;参数值若为多选可以是数组;若为日期范围可以是json;若要取url参数,则parameter::url参数名的形式;另外currentUser::参数名,可以取当前用户信息。

  • countRow 显示统计行数模式,布尔,可选参数,默认false;为true时后续参数皆不需要。

  • colName 取数列名,字符串支持逗号多列,多列时返回数组[],不填为全部列。

  • rowNumber 取数行号,可选参数。

    • 该参数为数字时:取指定行的值(从0开始);

    • 该参数不存在时:返回指定列全部行值数组[];后续参数皆不需要。

    • 该参数为字符串时:支持如"0-5"形式返回指定列从起始至结束行的单元值数组[];后续参数皆不需要。

    • 该参数为字符串时:支持如"0,3,5,7-9"形式返回指定列表达式特定行的单元值数组[];后续参数皆不需要。

  • stringDecimal 小数点后位数,数字;可选参数,默认0不显示小数点和小数位。

  • stringDecChar 小数点符号,字符;可选参数,默认为"."。

  • stringThouSep 千分位符号,字符;可选参数,默认为空,不显示千分位。

  • numberArray 数字数组,bool;可选参数,默认为false字符数组,会为数组元素加上‘’。

  • tableData 表格数据类型,bool;可选参数,为true时,会将数组转化为等html元素返回。

2、取数函数取url参数说明:

  • parameter url参数名,字符串,必填参数。

  • 例如:,取出url参数p_parameter1或parameter1值。

3、取数函数取cookie值说明:

  • cookie cookie参数名,字符串,必填参数。可选内容包括:

    • colorstyle_bg:画布背景颜色值;

    • colorstyle_back:视图背景颜色值;

    • colorstyle_color:视图前景颜色值;

  • 例如Markdown中table背景:style="background-color:"

4、取数函数取session值说明:

  • session session参数名,字符串,必填参数。可选内容包括:

    • currentUser_参数名(id/name/email/mobile):可以取当前用户信息;

    • scaleX/scaleY/scaleMin/scaleMax:获取当前缩放比例(水平或垂直方向,两者中小者或大者)用于markdown自行控制大小;

5、取数函数取随机数random说明:

random '',默认返回一个4位整数的随机数,主要用于a标签链接的报表。