Pentaho常见问题小结

 

 

Pentaho Q&A List

 

下面链接为此文档的PDF格式:

http://dl.iteye.com/topics/download/80c28022-bbf0-3b3a-9bb3-6dcc066b7135

 

 

作者:http://flyfoxs.iteye.com

目录

 

 

 

1.柱状图(Bar Chart),和折线图(Line Chart)的区别 

2.折线图(Line Chart) 和 xy折线图(XY Line Chart)区别

3.Pentaho 泡泡图(buddle chart)

4.Jpivot 出图时,隐藏All

5.数据太多时,如何将X轴稀疏显示

6.Pentaho Report Designer开发时,如何在一个Report中显示2个图形(Chart)

7.inline subreport与banded subreport的区别

8.如何在Pentaho Report Designer中使用变量/参数

9.Pentaho User Console 多语言

10.Pentaho(OLAP) Jpivot图片乱码, Pentaho Report(Chart)乱码

11.Session 超期

12.发布元数据(metadata)后,Server日志出现乱码,即时报表无法显示多语言

13.Jpivot工具栏的解说

14.设置发布密码(发布report, metadata)

15.修改Log级别(可以打印出详细的错误,比如MDX对应的SQL)

 

 

 

 

1.柱状图(Bar Chart),和折线图(Line Chart)的区别

通过下图,可以很明显的看到柱状图和折线图的区别,就是当数据不连续的时候,折线图会默认的隐藏数据.导致报表失去精确性.当然这个也是可以弥补的,也就是这个只是默认行为.如何弥补,可以参考折线图与XY折线图的区别.


Pentaho常见问题小结_第1张图片

 

2.折线图(Line Chart) xy折线图(XY Line Chart)区别

当数据不连续时,折线图可以选择通过标记显示出不连续的点来标明数据的存在,XY Line Chart上面我没有找到这样的选项. 下面就是相关选项及对应的显示结果


Pentaho常见问题小结_第2张图片

 


Pentaho常见问题小结_第3张图片

 

l  当坐标密度比较大的时候,XY 折线图可以控制显示间隔,但是折线图做不到. XY折线图如何做到的,可以参考官方例子.prd-ce-3.9.0-GA/report-designer/samples/Charts/XY Line Chart.prpt. 请注意高亮的参数

 

 

 


Pentaho常见问题小结_第4张图片

 

 

3. Pentaho 泡泡图(buddle chart)

个人觉得官方示例里面的泡泡图是不对的(也许是我不太理解),查看其参数后发现,series-by-field这个参数很多余,如果这个参数选择了Productname,那么一个Productname只能在图表上有一个泡泡,并且是选择最后一个出现的数据.

 


Pentaho常见问题小结_第5张图片

 

 

这样就会导致下面的数据,无法在Pentaho通过泡泡图来展现.针对同一产品,我们做了这样一组数据(这组数据只是为了说明问题虚构的,不一定合理).那么在Pentaho的泡泡图上面就只会有一个泡泡.但是通过Excel可以很容易的得到4个泡泡.

cost

budget

revenue

product

1

2

3

food1

2

3

4

food1

3

4

6

food1

4

5

4

food1

有一种折中的办法,就是把product这一列用一个肯定不会重复的数来替代,这样Pentaho,就可以显示出正确的泡泡图了.

4.Jpivot 出图时,隐藏All

Jpivot提供了很强的OLAP分析,有一个很实用的功能就是显示图表.但是如果不留意,就会在图表中引入了汇总数据,也就是下图的高亮部分.这个时候,我们其实想要的是通过图表同一个级别的信息,但是查看生成的图,你就会发现汇总部分被带入进图表了,这个图表就很容易让人误解了(红色的总是占了刚好一半).

 


Pentaho常见问题小结_第6张图片

解决办法:点击上图高亮的Drill Replace按钮,得到下面的结果,然后点击高亮的向下的箭头.再看看图片,你就会得到很直观的图片了.

 

 

 

 


Pentaho常见问题小结_第7张图片

 

 


Pentaho常见问题小结_第8张图片

 

5. 数据太多时,如何将X轴稀疏显示

可以参考下面的Blog,由于我找到了其他的方案,所以没有验证了.我的解决方案就是使用XY-Line Chart就可以很容易的指定坐标间隔.如果指定,可以参考[折线图(Line Chart) xy折线图(XY Line Chart)区别]

 http://www.itisbi.com/thread-72-1-1.html

 

 

6. Pentaho Report Designer开发时,如何在一个Report中显示2个图形(Chart)

Pentaho不像Cognos,Cognos一个报表里面可以很容易的显示多个List或者图标.Pentaho只能使用 sub report的形式来实现,因为一个Report里面只能有一个激活的结果集. 开发过程总发现Report没有数据,就有一个可能是没有Active的结果集.

PentahoSub Report2:inline subreport,banded subreport2Report的区别,在下一问题中进行详细解说.

 

7.inline subreportbanded subreport的区别

说简单点就是2Report的大小不一样,inline是固定的,精确根据你指定的大小来. banded则是根据里面内容多少来确定Report的大小.

 

但你不知道你的数据有多少的时候,你就需要考虑使用banded.反之则可以选择banded.

 

参考文档:

http://wiki.bizcubed.com.au/xwiki/bin/view/Pentaho+Tutorial/+inline+vs+banded

8.  如何在Pentaho Report Designer中使用变量/参数

下面这个文档里面详细的讲述了,如何在PRD中使用各种查询时,如何使用SQL.有需要可以直接去看.

 

http://diethardsteiner.blogspot.com/2009/11/using-parameters-in-pentaho-report.html(网址被,需要使用代理访问)

  

9.  Pentaho User Console 多语言

Pentaho对于多语言的支持,大部分可以很容易的根据感觉找到.比如即时报表(ad hoc report),在定义Metadata,就可以对各个字段设置对应的多语言.但是Pentaho User Console的多语言,却不是很好找.下面截图是官方示例的效果.

 

要实现这个多语言,主要是看2个文件,一个是index.xml,一个是index_jp.properties. 文件内容可以参考官方示例.关键是修改name对应的值,其他的可以不用修改. Name对应的指,你要转换为ascii才可以,你可以使用在线工具:

http://www.00bug.com/native2ascii.html

http://tool.chinaz.com/Tools/native_ascii.aspx

 


Pentaho常见问题小结_第9张图片

   

 

10.  Pentaho(OLAP) Jpivot图片乱码, Pentaho Report(Chart)乱码

我在使用Pentaho,遇到的不多,主要是2,metadata,另一就是Pentaho生成的.

 

PentahoReport使用jfreechart生成图片(比如在PRD中引入Chart图表,或者在OLAP,使用Jpivot生成图表),如果你只是生成图片有乱码,报表能正常显示文字,那么恭喜你,我能帮你解决这个问题.(你也可以手工输入一个汉字到Report,如果能够正常显示那么问题就能更确定了)

其实问题的根本原因,就是缺少字体,你如果想了解的更细致,可以参考如下链接.Centos系统中,可以直接使用下面命令安装字体,然后重启bi-server即可.


yum list | grep -i font | grep japanese
yum install fonts-japanese


http://space.baidu.com.cn/yanghlcn/blog/item/8e29afa48dfa23fc9152ee2d.html
http://zhanghaoeye.iteye.com/blog/708211

 

11.    Session 超期

在开发时,经常走开会再回来,BI-Server就会让你重新输入密码,这个很讨厌,可以修改如下配置,防止Session超期:

 

vi ./webapps/pentaho/WEB-INF/web.xml

<!-- insert additional servlet mappings -->
<session-config>
<session-timeout>30</session-timeout>
</session-config>

 

12.    发布元数据(metadata),Server日志出现乱码,即时报表无法显示多语言

虽然目前找到了解决办法,但是对于原因细节还是不明白.猜想是因为服务器和客户端对于Unicode的编码方式不一样,导致出现乱码.

 

解决办法就是,按照高亮部分修改客户端启动脚本

(pme-ce-4.5.0-stable\metadata-editor\metadata-editor.bat)

set OPT=-Xmx256m -cp %CLASSPATH% -Djava.library.path=%LIBSPATH% -Dfile.encoding="UTF-8"

 

 

 

 

下面是我遇到的错误异常

 

Caused by: org.xml.sax.SAXParseException; lineNumber: 5585; columnNumber: 61; Invalid byte 3 of 3-byte UTF-8 sequence.

        at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)

        at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)

        at org.pentaho.metadata.util.XmiParser.parseXmi(XmiParser.java:905)

        ... 70 more

Caused by: org.apache.xerces.impl.io.MalformedByteSequenceException: Invalid byte 3 of 3-byte UTF-8 sequence.

        at org.apache.xerces.impl.io.UTF8Reader.invalidByte(Unknown Source)

 

 

 

13.  Jpivot工具栏的解说

 

 


 

个工具的大部分按钮还是很好理解的,比如打印,生成,Excel,我只是挑出几个个人不好理解的几个比较说明一下.

 

l  OLAP Navigator


 

点击粉红色的按钮,可以决定这个维度是出现在行,还是列中显示.

点击黄色的按钮,可以决定这个按照这个信息过滤. 不过这个功能再有些版本中是有Bug,biserver-ce-4.5.0时已经fixed.

三角形的按钮,排序按钮,这个是很好理解的.

如果你有多个度量(measure),默认只显示一个,你可以点击Measures这个链接进行设定.

 

l  Suppress Empty Rows/Columns


Pentaho常见问题小结_第10张图片

 

这个按钮说通俗点就是是否显示空数据,比如在OLAP分析时经常会遇到稀疏数据,比如夏天一款棉袄的销量,这个时候就可以通过这个按钮隐藏这些数据.

 

这个按钮的效果,也可以通过MDX SQL Editor很明显的发现,这个按钮刚好对应关键字”NON EMPTY”

 

l  Drill Member/Drill Position

 


 

2个按钮要对比来解释,他们的区别就在于当你已经展开了一个维度,展开第二个维度时的区别.下面通过图片来对比:有图有真相.


Pentaho常见问题小结_第11张图片
Pentaho常见问题小结_第12张图片

 

对比2个图片发现,当选择Drill Member,你展开第二个维度(Department),所有的Department都会展开.但是如果你选择Drill Position,只会展开你选择的那部分.

 

另外一点,就是这个按钮是互斥的.

 

 

 

l  Drill Replace



 

 

这个按钮可以解决上面提到的OLAP生成Chart,总是带入汇总数据的问题.

 

 

l  Drill Through


 

这个很简单了,就是让你Drill Through,点击高亮的箭头就可以了.


Pentaho常见问题小结_第13张图片

 

 

 

l  Show Chart/Chart Config


 

 

2个按的作用很明,只是有点需要.

如果生成,生成了汇总数据部分,你可以参考: [Jpivot 出图时,隐藏All]

如果图片没有生产出来,可能是图片太大了,你需要调整图片高度和宽带

如果生成的图片有乱码,那是因为没有对应的字体,你可以参考上面关于乱码部分的说明

 

 

14.    设置发布密码(发布report, metadata)

这个密码必须设置,默认为空,是不能发布Reportmetadata

vi  biserver-ce/pentaho-solutions/system/publisher_config.xml 

 

 

15.    修改Log级别(可以打印出详细的错误,比如MDX对应的SQL)

./server/biserver-ce/tomcat/webapps/pentaho/WEB-INF/classes/log4j.xml

 

 

 

你可能感兴趣的:(pentaho)