Pentaho CDE 教程(三)走进CDE 之 联动

2023-11-02 04:30
文章标签 教程 联动 走进 cde pentaho

本文主要是介绍Pentaho CDE 教程(三)走进CDE 之 联动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

软件版本 Pentaho BIServer 5.0.1-ce

Pentaho CDE 14.03.07 (Stable)

上一篇介绍了一下Pentaho CDE使用文件的组织和结构这一篇来介绍一下图形之间的联动即点击一个图形的一部分另一个图形显示点击部分的下一级或更详细的内容。

(上一篇说要介绍一下CDE的目录结构,如果只是用CDE的话是不用了解目录结构的,这一话题放在后面再讲这里先让大家用起来再说)

先来看一看最终做出来的效果是什么样的如图:

 
 

下面就详细的说一下具体怎么实现

一、思路

在第一篇中已经讲了如何生成一个饼形图和一个和一个柱形图(如果不清楚请看这里),这里只需要做的是在点击饼形图中的一部分时改变柱形图数据源的查询参数并重绘图形。思路清楚了之后找出这里实现的关键点如下:

1、点击饼形图时获取点击部分的对应值

2、响应点击事件并把获取的值传递给柱形图数据源

3、重绘图形

二、具体实现

这里基于第一篇的继续,这里我们已经有了一个饼形图和一个柱形图,打开CDE编辑页面选中组件面板(Components panel),在组件下面选中PieChar 右边就会显示出其对应的属性如图:



 将这里的clickable设置为true,编辑clickAction 定义事件响应方法

 

click=function(s){var category=s.atoms.category;var series=s.atoms.seriesvar value=s.atoms.valueDashboards.fireChange("simplepara",category.toString())
}

 

这里的参数s为scene的一个实例,里面包含饼形图被点击部分的数据

s.atoms.category //获取类别 就是以这个字段分类的字段值

s.atoms.series    //获取系 就是 取值字段名

s.atoms.value   //获取值  这个值越大图形中占的比例越多

Dashboards.fireChange(parameterName,parameterValue)

parameterName:参数名

parameterValue:参数值

这个函数做两件事

第一、更新CDF管理的参数的值(CDE是基于CDF的图形的生成和参数管理都是基于CDF的Dashboards是CDF管理的核心类)

第二、重绘所有图形

这里Dashboards.fireChange要改变的参数名为parameterName但是我们的组件里还没有这个参数

向组件中加入Simple parameter (Generic->Simple parameter)将其Name设置成simplepara将Property value设置成参数的默认值我这里设置成我的机构代码2200001

下面设置柱形图

选中组件中的BarChar将Listeners设置成侦听参数parameterName侦听其值的改变,将Parameters设置映射成其内部参数orgname如图:


 

 修改BarChar的数据源为bar_data 在数据源中新建sql over sqlJdbc 设置相应数据库连接参数,并设置Parameters为BarChar内部参数orgname并设置类型为string,将参数设置到SQL语句中



 SQL语句设置成如下:

SELECT depcode ,sum(fee) as total FROM `registerrecords` r 
left join department o on r.depcode=o.depcode
where r.depcode=${orgname}
group by r.depcode

 这里用${orgname}将参数orgname的值引入到SQL中

注:设置类型很重要这样SQL数据查询处理的时候增加对应的转换如string会加单引号(')

 OK 保存文件点击预览并点击饼形图的一部分看看效果吧!酷

 

本人接触Pentaho时间不长如果文中有错误望高手指出谢谢!

如果对文中有疑问请联系我

我的Email:zhaizhisheng@sian.com

我的博客:http://alenzhai.iteye.com/

下期预告:Pentaho CDE 组件使用说明

 


另外也欢迎大家加入 下面的群来聊一聊 开源BI那些事!

开源BI交流

这篇关于Pentaho CDE 教程(三)走进CDE 之 联动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/328138

相关文章

MySQL zip安装包配置教程

《MySQLzip安装包配置教程》这篇文章详细介绍了如何使用zip安装包在Windows11上安装MySQL8.0,包括下载、解压、配置环境变量、初始化数据库、安装服务以及更改密码等步骤,感兴趣的朋... 目录mysql zip安装包配置教程1、下载zip安装包:2、安装2.1 解压zip包到安装目录2.2

Java使用Tesseract-OCR实战教程

《Java使用Tesseract-OCR实战教程》本文介绍了如何在Java中使用Tesseract-OCR进行文本提取,包括Tesseract-OCR的安装、中文训练库的配置、依赖库的引入以及具体的代... 目录Java使用Tesseract-OCRTesseract-OCR安装配置中文训练库引入依赖代码实

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

PyCharm 接入 DeepSeek最新完整教程

《PyCharm接入DeepSeek最新完整教程》文章介绍了DeepSeek-V3模型的性能提升以及如何在PyCharm中接入和使用DeepSeek进行代码开发,本文通过图文并茂的形式给大家介绍的... 目录DeepSeek-V3效果演示创建API Key在PyCharm中下载Continue插件配置Con

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

MySQL8.2.0安装教程分享

《MySQL8.2.0安装教程分享》这篇文章详细介绍了如何在Windows系统上安装MySQL数据库软件,包括下载、安装、配置和设置环境变量的步骤... 目录mysql的安装图文1.python访问网址2javascript.点击3.进入Downloads向下滑动4.选择Community Server5.

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

本地私有化部署DeepSeek模型的详细教程

《本地私有化部署DeepSeek模型的详细教程》DeepSeek模型是一种强大的语言模型,本地私有化部署可以让用户在自己的环境中安全、高效地使用该模型,避免数据传输到外部带来的安全风险,同时也能根据自... 目录一、引言二、环境准备(一)硬件要求(二)软件要求(三)创建虚拟环境三、安装依赖库四、获取 Dee