Created by 蓝色布鲁斯,QQ32876341,blog http://www.cnblogs.com/zzyan/
iDempiere官方中文wiki主页 http://wiki.idempiere.org/zh
iDempiere 中文社区www.idempiere.org.cn
iDempiere 中文社区QQ群 65713012

本文研究怎么使用SpagoBI来对开源ERP的功能进行扩展。

本文主要介绍SpagoBI5的新功能cockpit,进行抛砖引玉,希望能够引发SpagoBI社区和开源ERP社区的注意,将开源ERP和开源BI进行整合,看看是否能够碰撞出新的火花出来。

Cockpit这个新功能个人感觉更像是一个优化了的界面库,和后台数据本身关系并不特别大,但是我觉得cockpit直接降低了BI作为工具的使用难度以及开发难度,而且提供了一个非常友好的交互界面,这个是ERP本身、报表或者jpivot界面无法提供的。

更夸张一点说,个人觉得cockpit能够极大的推动项目的销售,从而使得iDempiere及SpagoBI的应用更为广泛。因为BI主要面向的客户就是高层管理人员以及老板,在推销的时候,提供一个漂亮的界面和直观的图表,以及同时支持PC和手持设备(尤其是ipad)的点击交互的方式,比漂亮的ppt更能吸引人,更有说服力。

本文中没有使用数据仓库,也没有ETL将数据从iDempiere拉到数据仓库的过程,实际使用中如果有需要的话,可以另外建立数据仓库作为SpagoBI的后台数据库。ETL过程可以参考下面链接的中间部分ETL的使用视频。ETL可以使用talend作为客户端开发工具,开发出来的ETL过程可以直接导入到SpagoBI中,由SpagoBI管理和运行。
http://erp-academy.chuckboecking.com/?page_id=1228

个人感觉,如果只是以iDempiere作为基础,BI作为补充展现的话,直接用iDempiere的数据库就好了,如果需要做OLAP分析,也可以直接在postgres上面另建一个库的方式代替,这样可以降低管理难度。

如果和开源ERP进行集成的话,还需要考虑整合统一验证的部分,需要额外处理。

本文使用spagobi 5.0 all in one,进行测试。启用时候需要配置一下java home, classpath, catalina_home等变量,具体请参考spagobi的配置文档。然后通过bin文件夹下面的SpagoBIStartup.bat进行启动。这个bat会同时启动一个HSQL的内存数据库作为DEMO的数据源。

访问localhost:8080/SpagoBI,系统登录界面如下,登录密码为biadmin/biadmin

进入系统以后,选择报表中的cockpits报表

我们随意进入下面的3个界面,看一下cockpits报表大概是个什么样子
注意,cockpit是支持点击筛选的,如下图的New Sales,我们在点击Food以后,系统自动将界面进行了全部刷新,同时给出了以Food作为条件的筛选结果的图表。
a. New Sales

直接在New Sales中点击饼图中 Food以后,界面自动全部刷新,同时给出了Food作为条件的筛选结果。

b. CD Sales

c. CD Customer Analysis

d. CD Product family trend

可以看到,cockpit报表无论是从界面还是友好程度,都比普通的BI增强了不少。

下面我们以一个实际的例子,来说明怎样将SpagoBI和iDempiere进行整合。

我们先启动iDempiere的DB,我们使用里面的product数据,进行操作。
启动iDempiere的DB后,我们在SpagoBI中配置数据源

我们配置iDempiere的数据源

设置好了数据源以后,我们新增一个dataset

简单起见,我们直接抓取订单表的信息,作为一个dataset
注意其中的category栏位,后面我们的报表会以此栏位作为组合的依据

Sql粘贴完成以后,点击右上角的Fields metadata,进行设置,将后面的3个值设置为measure
measure和attribute各自代表的含义,请参照OLAP的定义及说明

保存了以后,我们就可以根据该dataset,新建一张cockpit报表了。

点击左侧的文件夹选项,然后随意选择一个文件夹,开始创建我们的报表。
在创建报表时候,我们选择cockpit报表。

点击右上角的add widget图标,添加一个界面控件

在控件界面,仍然选择右上角的配置界面

系统会将所有的dataset全部显示出来,这时候,我们选择我们的dataset

我们先拖拉一个表格到右边

然后选择下面的selected fields,将所有栏位都拉入到visible fields里面去,如下图

点击confirm以后,我们可以看到控件自动显示出来,同时数据为iDempiere中的数据

我们再重复前面的操作,增加第二个控件,这次我们拖拉一个barchart进来
同时配置栏位如下

confirm以后,可以看到图表的结果,由于我们sql没有将category的name显示出来,这里直接显示了id作为演示,实际需呀的话可以进行更改。

我们再拖拉一个控件,这次拖拉一个饼图

确定了以后,在总界面上面调整一下各个控件的位置,然后点击右上角的保存按钮。

给报表起一个名字并保存

暂时不去管权限分配的事情,在document browser中双击我们的报表进行查看

可以看到,报表正常运行,显示了图表和表格

这时候,我们随便点击饼图里面的一个category,可以看到,系统自动按照该category进行了筛选,同时将所有的界面进行了刷新,如下面的图示,可以看到,表格中的数据已经全部筛选为该category的订单行。

如上所示,即使在不了解或者不使用OLAP的情况下,我们仍然能够使用简单的sql,来为用户生成BI界面,而且由于spagobi默认就支持移动设备尤其是ipad,我们基本上可以通过零成本,获取一个高效、美观的BI应用,从而为用户提供更好的操作体验。

由于SpagoBI同时支持OLAP、数据挖掘,我们可以整合iDempiere,深度挖掘用户的数据,提供更为深入的功能和解决方案。

展望一下,我们可以使用SpagoBI的图表功能,来对比2013年和2014年的订单趋势以及产品信息,从而做出更合理的预测;或者通过BI来挖掘产品的销售潜力,等等。具体的应用场景,需要各位根据需要研究了。

SpagoBI 和 开源ERP(iDempiere)整合入门的更多相关文章

  1. odoo:开源 ERP/CRM 入门与实践 -- 上海嘉冰信息技术公司提供咨询服务

    odoo:开源 ERP/CRM 入门与实践 看了这张图,或许你对odoo有了一些兴趣. 这次Chat就是和大家一起交流开源ERP/CRM系统:odoo 对以下读者有帮助:研发.产品.项目.市场.服务. ...

  2. odoo:开源 ERP/CRM 入门与实践

    看了这张图,或许你对odoo有了一些兴趣. 这次就是和大家一起交流开源ERP/CRM系统:odoo 对以下读者有帮助:研发.产品.项目.市场.服务.运营.管理等. 一.背景趋势 社交网络.电商O2O: ...

  3. odoo:免费开源ERP入门与实践

    Odoo下载安装 Odoo社区版下载链接:http://nightly.odoo.com/ ,下载11.0社区版Windows安装包:http://nightly.odoo.com/11.0/nigh ...

  4. 全球第一免费开源ERP Odoo Ubuntu最佳开发环境独家首发分享

    起源 近年来随着国内的互联网经济的快速腾飞,诞生了很多开源软件创造的市场价值以及企业价值神话,特别是对于企业ERP领域,一直以来都是高昂的国内外产品充实,国内的中小成长型企业越来越需要一套好看又能打, ...

  5. 全球第一免费开源ERP Odoo PM OKR项目管理操作指南

    概览 ​ Odoo项目允许你和整个项目团队一起管理项目, 与项目和任务成员中的任何一个人沟通. 它与包含可定制阶段的任务的项目一起工作.项目可以是内部的或客户导向的.任务是项目执行的一部分.你可以给这 ...

  6. 首发福利!全球第一开源ERP Odoo系统架构部署指南 电子书分享

    引言 Odoo,以前叫OpenERP,是比利时Odoo S.A.公司开发的一个企业应用软件套件,开源套件包括一个企业应用快速开发平台,以及几千个Odoo及第三方开发的企业应用模块.Odoo适用于各种规 ...

  7. 供应链管理为什么要上企业自主可控的免费开源ERP Odoo

    引言 今天的很多企业,无论是制造业,还是商贸行业,如果说没有针对供应链管理的信息系统,那可能是真的冤枉他们了:采购.仓存.销售.存货核算这些模块,早早的买来,早早的用上了,但也早早的被下了结论:食之无 ...

  8. 免费开源ERP Odoo实施指南 连载一:Odoo概述

    Odoo是什么 Odoo,以前叫OpenERP,是比利时Odoo S.A.公司开发的一个企业应用软件套件,开源套件包括一个企业应用快速开发平台,以及几千个Odoo及第三方开发的企业应用模块.Odoo适 ...

  9. 全球排名第一的开源ERP Odoo v12 最新一键安装体验版正式发布

    引言 Odoo 12.0是目前全球Odoo社区最新推出的产品版本代号,该产品具有划时代的意义,增加了如互联网级的知识库网盘功能.工业互联网的IOT设备矩阵管控功能,全新的Python Sass前端引擎 ...

随机推荐

  1. X7-2存储节点操作系统盘上的变化

    我们知道,在X7-2之前,存储节点的12块机械硬盘的前2块(LUN0和LUN1)中各划出33GB的分区来做RAID1,这个RAID1再划出小的分区来存放操作系统和存储软件等. 但从X7-2开始,这发生 ...

  2. 使用 v-model 实现 双向绑定.(子组件和父组件.)

    vue 自定义组件 v-model双向绑定. 父子组件同步通信   父子组件通信,都是单项的,很多时候需要双向通信.方法如下: 1.父组件使用:msg.sync="aa"  子组件 ...

  3. python之函数(二)

    上一篇中我们在函数体中的写的都是打印语句,用print来输出打印结果.但是在实际使用的时候,我们并不需要将结果输出在控制台上.这时候该如何解决呢? 1. return返回值. 我们可以将函数的结果通过 ...

  4. 查找表set和map 349, 350

    两类查找问题: 1)查找有无: - 某个元素是否存在,通常使用set(集合) 2)查找对应关系(键值对应) - 某个元素出现了几次,map(字典) set和map都不允许里面的键值重复. 常见操作: ...

  5. HTML5必须知道的那些事

    [转自] http://www.cnblogs.com/hamy/archive/2012/02/21/2362110.html 再普及一次HTML5基础,HTML5必须知道的那些事,HTML5扫盲. ...

  6. 51Nod - 1179

    给出N个正整数,找出N个数两两之间最大公约数的最大值.例如:N = 4,4个数为:9 15 25 16,两两之间最大公约数的最大值是15同25的最大公约数5.   Input第1行:一个数N,表示输入 ...

  7. Linux中断分层--工作队列

    1. 工作队列是一种将任务推后执行的方式,它把推后的任务交由一个内核线程去执行.这样中断的下半部会在进程上下文执行,他允许重新调度甚至睡眠.每个被推后的任务叫做“工作”,由这些工作组成的队列称为工作队 ...

  8. PIE SDK栅格数据的投影转换

    1. 功能简介 为了适应不同数据显示分析的需要,数据的投影可以进行相应的转换,目前PIE SDK支持多种数据格式的投影转换,下面对栅格数据格式的投影转换功能进行介绍. 2. 功能实现说明 2.1. 实 ...

  9. T4((Text Template Transformation Toolkit))模版引擎之基础入门 C#中文本模板(.tt)的应用

    1 关于C#中文本模板(.tt)的简单应用https://blog.csdn.net/zunguitiancheng/article/details/78011145 任何一个傻瓜都能写出计算机能理解 ...

  10. Google Authenticator(谷歌身份验证器)

    <!DOCTYPE html>Google Authenticator(谷歌身份验证器) ] Google Authenticator(谷歌身份验证器) Google Authentica ...