1. 概述
1.1 版本
报表服务器版本 | JAR 包版本 | 插件版本 |
---|---|---|
10.0 | 2020-04-27 | V3.3.11 |
9.0 | 2018-10-10 | V3.2.9 |
8.0 | 2018-10-10 | V3.2.9 |
1.2 插件介绍
多维数据库(Multi Dimensional Database,MDD),就是指将数据存储在多个维度中。
简单来说,就是将数据存放在一个 n 维数组中,而不是像关系数据库那样以记录的形式存放。因此它存在大量稀疏矩阵,可以通过多维视图来观察数据。
多维数据库增加了一个时间维度,与关系数据库相比,它的优势在于可以提高数据处理速度,加快反应时间,提高查询效率。
2. 操作步骤
FineReport 提供了
的方式来与多维数据库进行连接,将多维数据库中的数据转换为二维表用以进行模板制作和数据分析。2.1 安装插件
点击下载插件:多维数据集插件
设计器插件安装方法参照:设计器插件管理
服务器安装插件方法参照:服务器插件管理
安装插件后点击「服务器>定义数据连接」,定义数据连接的界面里就会出现 XMLA 数据连接,如下图所示:
2.2 数据连接参数配置
添加一个 数据连接。FineReport 多维数据库 XMLA 数据连接支持市场上主流的 SQLServer Analysis Services、Oracle Essbase、SAP HANA 数据库类型。如下图所示:
下文介绍数据库的配置方式。
2.2.1 SQLServer Analysis Services
SQLServer Analysis Services,依次输入「URL、用户名、密码、数据库」的信息,最后测试连接,如下图所示:
选择注:XMLA URL 填写的是通过 IIS 直接发布的站点
2.3.2 Oracle Essbase
选择 Oracle Essbase,在 XMLA URL 输入此数据库所在站点地址,输入用户密码并选择数据库。如下图所示:
点击「测试连接」测试是否连接成功。
2.4 添加数据集
XMLA 数据连接建立好之后,可以添加多维数据库 XMLA 数据集,详情参见:多维数据库 。其中,XMLA 数据集查询取数方式包括 简单通用查询 和 自定义MDX查询 。
注1:简单通用查询 在选择的维度上过滤,不支持“包含”“不包含”“开头是”,在非选择的维度上做过滤,只支持“等于”。
注2:涉及到复杂的过滤形式可以使用 自定义MDX查询 。
3. 注意事项
3.1 报错:http-503
3.1.1 问题描述
创建 SSAS 服务的时候,使用到的一个配置项文件是 msmdpump.ini。
这个配置项文件在默认的时候,通过IIS代理连接到 SSAS 时每个客户端的最大连接数默认是 4 个,服务器限制了多并发的访问,所以连接数超过 4 个会产生 HTTP 503 的报错。
3.1.2 解决方案
修改 msmdpump.ini 配置文件。
修改前:
<ConfigurationSettings>
<ServerName>localhost</ServerName>
<SessionTimeout>3600</SessionTimeout>
<ConnectionPoolSize>100</ConnectionPoolSize>
<MinThreadPoolSize>0</MinThreadPoolSize><!--这一行可能没有-->
<MaxThreadPoolSize>0</MaxThreadPoolSize><!--这一行可能没有-->
<MaxThreadsPerClient>4</MaxThreadsPerClient><!--这一行可能没有-->
</ConfigurationSettings>
修改后:
<ConfigurationSettings>
<ServerName>localhost</ServerName>
<SessionTimeout>3600</SessionTimeout>
<ConnectionPoolSize>100</ConnectionPoolSize>
<MinThreadPoolSize>200</MinThreadPoolSize><!--这一行添加上,200是推荐值-->
<MaxThreadPoolSize>500</MaxThreadPoolSize><!--这一行添加上,500是推荐值-->
<MaxThreadsPerClient>100</MaxThreadsPerClient><!--这一行添加上,100是推荐值-->
</ConfigurationSettings>
数据根据需要修改,遵循的规则是:
MaxThreadsPerClient < MinThreadPoolSize < MaxThreadPoolSize
修改后假如访问此服务,仍旧没有解决多线程下的数据问题,就关闭再开启一下服务,刷新,问题解决,如下图所示:
3.2 报错:catalog不能为空
3.2.1 问题描述
SSAS 连接失败,产生报错信息:catalog不能为空,如下图所示:
3.2.2 解决方案
SSAS 里有空的 cube,把空 cube 删除即可。