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. docker记录

    # docker run 运行程序 # docker stop (docker kill) 终止容器. (首先应该执行 docker stop!!) #停止所有容器 docker stop $(doc ...

  2. C++_类和动态内存分配2-改进后的String类

    添加前面介绍过的复制构造函数和赋值运算符,使类能够正确管理类对象使用的内存. 知道对象何时被创建和释放. =================================== 修订后的默认构造函数 ...

  3. 网络寻路(思维+vector的应用)-----------蓝桥备战系列

    标题:网络寻路 X 国的一个网络使用若干条线路连接若干个节点.节点间的通信是双向的.某重要数据包,为了安全起见,必须恰好被转发两次到达目的地.该包可能在任意一个节点产生,我们需要知道该网络中一共有多少 ...

  4. P4219 [BJOI2014]大融合

    传送门 动态维护森林 显然考虑 $LCT$ 但是发现询问求的是子树大小,比较不好搞 维护 $sum[x]$ 表示节点 $x$ 的子树大小,$si[x]$ 表示 $x$ 的子树中虚儿子的子树大小和 那么 ...

  5. 二分查找-数组实现(小trick)

    template<typename T> int binarySearch(T arr[], int n, T target){ , r = n-; //在[l...r]范围内寻找targ ...

  6. codeforces 1072D Minimum path bfs+剪枝 好题

    题目传送门 题目大意: 给出一幅n*n的字符,从1,1位置走到n,n,会得到一个字符串,你有k次机会改变某一个字符(变成a),求字典序最小的路径. 题解: (先吐槽一句,cf 标签是dfs题????) ...

  7. 网络安全通信https工作原理

    HTTPS其实是有两部分组成:HTTP + SSL / TLS, 也就是在HTTP上又加了一层处理加密信息的模块.服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据 1. ...

  8. springboot(五)-使用Redis

    Redis服务器 springboot要使用redis,首先当然要确保redis服务器能够正常跑起来. pom.xml 这里添加redis的依赖,当然也是springboot集成好的. <!-- ...

  9. [转] DOS命令for用法详解

    [From] http://www.jb51.net/article/31284.htm for帮助文档 对一组文件中的每一个文件执行某个特定命令. FOR %variable IN (set) DO ...

  10. JENKINS安装及新建用户,权限配置

    JENKINS安装及新建用户,权限配置 1. 下载安装 jenkins 官网地址https://jenkins.io/index.html 下载地址https://jenkins.io/downloa ...