Oracle Essbase入门系列(二)

 2023-09-15 阅读 22 评论 0

摘要:本篇开始会一个三口之家的家庭财务数据库为例,讲述Essbase的功能和开发。为了说明EPM应用程序的管理和开发过程,会绕一些弯路,不使用EAS,而尽量用EPMA。 创建应用程序 首先登陆到Workspace,在左上角菜单中选择【导航】>【管理】>【

本篇开始会一个三口之家的家庭财务数据库为例,讲述Essbase的功能和开发。为了说明EPM应用程序的管理和开发过程,会绕一些弯路,不使用EAS,而尽量用EPMA。

创建应用程序

首先登陆到Workspace,在左上角菜单中选择【导航】>【管理】>【应用程序库】。

 

应用程序库是EPMA的一部分,通过它可以管理EPM和Essbase应用程序。打开应用程序库后,在Workspace菜单中选【文件】>【新建】>【应用程序】,接着会出现应用程序创建向导。

 

ES数据库、在应用程序创建向导的第一步,选择应用程序类型为【Essbase (BSO)】,选中【Unicode】以支持中文,然后给应用程序和数据库命名。

创建一个名为“HomeFinancial”的应用程序,每年的家庭财务数据作为一个数据库,2013年的数据库命名为y2013。

 

第二步需要选择数据库中包含的维度类型,按下表创建4个维度,维度名称同时也是1代成员名称,在Essbase中,Time和Account是两个比较特殊的维度。Time维度可使用时间相关的函数和动态时间序列;Account可使用时间平衡和开支报告属性。每个数据库中仅能有一个Time和一个Account维度。

 

从入门到?下一步是定义元数据,包括维度结构、计算方法、成员属性等。在部署后,EPMA中定义的元数据会成为Essbase的大纲。此步骤的界面分成三个部分,左面列出的是树型的维度结构,右面显示维度成员的属性,下面显示的是系统消息。

 

在树型维度结构部分,最顶级的节点代表数据库;其下一级是各维度的1代成员,同时也代表整个维度;1代成员下是维度的成员。选择树型结构中的节点,右方会显示相关属性,修改属性后别忘了点击上方的保存键。

在树型结构中,选择各维度的1代成员,如下表修改维度的Dimension Storage Type和Dimension Sort Order两个属性。Dimension Storage Type定义为存储类型是稀疏(Sparse)还是密集(Dense);Dimension Sort Order定义部署后维度在大纲中排序顺序。这两个属性会决定数据库的物理结构和计算顺序,后面会讨论到。

魂系列游戏入门?然后在树型结构中,右击维度成员显示菜单,菜单中可以进行删除、重命名、添加成员、排序等操作。

 

鼠标拖动某个成员可改变其在维度中的位置。

在维度模型结构中添加成员,创建如下图的维度结构。


G1. AccountG2. 支出G3. 日用品G3. 交通G3. 电器G3. 教育G3. 饮食G3. 公共事业费G4. 电单价G4. 电用量G4. 水单价G4. 水用量G3. 医疗G2. 收入G3. 工资G3. 其他收入G2. 现金流G3. 期初现金G3. 净收入G3. 调整G3. 期末现金
G1. HomeG2. 张大明G2. 王翠花G2. 张小明
G1. ScenarioG2. 预算G2. 实际G2. 差异
G1. YearG2. Q1G3. 1月G4. 1月1号G4. 1月2号

在完成数据模型编辑后,点击【验证】,下方的消息框内会显示验证信息。若没有出现任何错误或警告信息,点击【完成】结束应用程序编辑。

oracle数据库入门, 

然后在应用程序库中就可看到多出一个名为“HomeFinancial”的应用程序图标。

 

至此,已经介绍了EPMA应用程序库和维度库的使用。EPMA是从EPM 9.3版开始引入的模块,它包括应用程序库、维库、数据同步、库控制作业台等多个工具,以实现对EPM各产品应用程序进行集中式的管理。通过EPMA创建的应用程序称为EPMA应用程序,而使用传统方法创建的应用程序称为标准应用程序。EPMA中提供了将标准应用程序转换为EPMA应用程序的工具,在Workspace菜单中可找到,转换的过程是不可逆的。EPMA应用程序的部署过程中用的的工具如下图。

加载元数据

现在,我们已经通过EPMA的应用程序库创建了一个Essbase应用程序。不同于EAS Console直接在Essbase Server中创建标准应用程序,EPMA应用程序仅仅是保存在EPMA中的元数据而已,它还没有部署到Essbase Server中。下面会通过完善并部署此应用程序,来介绍EPMA的几个重要工具。

es hbase、回顾上一节创建的HomeFinancial数据模型,Time维度并没有包含所有的日期项,一年365天都需要手工添加会是很大的工作量,我们需要通过关系型数据库中批量的导入维度成员。现实应用中从外部系统导入维度和数据是常有的情况,例如从会计系统导入会计科目。为此,EPMA提供了接口表,配合ETL工具可方便的将外部数据导入。

接口表是由EPMA在关系型数据库中自动创建的一组数据表,支持Oracle Database、Microsoft SQL Server、IBM DB2等主流数据库。首先,连接到安装EPM是用到的Oracle数据库,执行下面语句创建一个新帐户,用于存储接口表。

CREATE USER EPMA_INTFC IDENTIFIED BY password;
GRANT "RESOURCE" TO EPMA_INTFC;
GRANT "CONNECT" TO EPMA_INTFC;
GRANT UNLIMITED TABLESPACE TO EPMA_INTFC;

然后在Workspace菜单中选择【导航】>【管理】>【配置接口数据源】。打开接口数据源后,在菜单中选【文件】>【新建】>【接口数据源】,在接口数据源创建对话框中,输入接口表帐户连接信息。

java es查询、 

在下一步中,给接口数据源命名,并选中【Create Tables】,点击【完成】。EPMA会在给定的数据库帐户中建立接口表。

连接到数据库,会发现EPMA_INTFC账户下创建了若干的数据表。仔细观察这些表的命名规则,以HS开头的表分为4类,这些数据表都是需要写入维度信息,然后导入到EPMA维库里;而以IM开头的数据表是系统表。数据表的用途如下表,具体表结构和每个字段的定义,参考EPMA文档。

 

表名用途
HS_Dimension_Member维度成员和成员属性
HS_Dimension_Hierarchy维度父子层次结构
HS_Dimension_PropertyArray维度成员属性
HS_Dimension_Property维度属性
IM_Dimension登记接口表,自建的接口表需在此表中登记
IM_Load_Info通过Load ID可筛选导入的数据批次
IM_Dimension_Association定义维度表间的关联关系

 

essbase是什么意思, 

接口表中,并非每个表和每个字段都是必须,例如可用HS_Dimension_Hierarchy和HS_Dimension_PropertyArray取代HS_Dimension_Member定义维度成员和属性。而大部分使用默认值的属性,对应字段可为空值。所以,在HomeFinancial应用中,要导入Time维度成员,只需将成员写入到HS_TIME_HIERARCHY表中即可。

在数据库中执行以下SQL语句,将维度成员数据写入到接口表HS_TIME_HIERARCHY中。

declarev_date date := to_date('130101','RRMMDD');v_order number := 0;v_month_str varchar(3 char);v_date_str varchar(6 char);
begindelete from EPMA_INTFC.HS_TIME_HIERARCHY;for indx in 1..4 loopv_order := v_order + 1;insert into EPMA_INTFC.HS_TIME_HIERARCHY(parent,child,isprimary,sortorder)values('Year','Q' || to_char(indx),1,v_order);end loop;for indx in 1..12 loopv_order := v_order + 1;insert into EPMA_INTFC.HS_TIME_HIERARCHY(parent,child,isprimary,sortorder)values('Q' || to_char(ceil(indx / 3)),to_char(indx) || '月',1,v_order);end loop;for indx in 1..365 loopv_order := v_order + 1;v_month_str := ltrim(to_char(v_date,'MM'),'0') || '月';v_date_str := v_month_str || ltrim(to_char(v_date,'DD'),'0') || '日';insert into EPMA_INTFC.HS_TIME_HIERARCHY(parent,child,isprimary,sortorder)values(v_month_str, v_date_str, 1,v_order);v_date := v_date + 1;end loop;commit;
end;

执行PL/SQL后,HS_TIME_HIERARCHY表里应该有如下数据。

接口表数据准备好后,打开EPMA维库。打开的方法有两种,一种是在应用程序库中双击应用程序图标;另一种方法是通过Workspace菜单【导航】>【管理】>【维库】,然后在菜单【文件】>【编辑应用程序】中选择应用程序。维库从左到右分成三栏,最左边是共享维度库,中间是应用程序维度结构,右边是所选成员的属性。

 

维库界面类似于在应用程序创建向导中维度编辑界面,唯一不同的是多出了共享维度库。共享维度顾名思义是可以由多个应用程序共享使用的,企业中一些常用维度,如组织架构、会计科目等会被多个应用程序使用,使用共享维首先避免了重复创建维度的工作量,其次避免应用程序间出现的数据不一致问题。这一概念与主数据管理系统相似,事实上Hyperion在2005年通过收购Razza获得了一套主数据管理系统Hyperion Data Relationship Management(简称DRM),现在已成为Oracle主数据管理解决方案的一部分。EPMA也支持从DRM导入维度。

oracle数据库菜鸟教程。与共享为对应的是本地维,本地维是只属于某个应用程序的维度。应用程序的本地维可以复制到共享维度库,也可以将共享维复制到应用程序。共享维度库是EPMA应用程序相对标准应用程序的主要优势之一。

在维库中,点击Workspace菜单【文件】>【导入】>【创建配置文件】,选择由本地接口库导入到HomeFinancial应用程序,并给配置文件命名。从导入类型选项可知,除了接口表外,还支持从平面文件和DRM导入。EPMA还提供了生成平面文件的桌面客户端工具File Generator,安装EPM后可以在开始菜单中找到。

 

在维度映射配置中,选择只导入Time维度,处理类型选择【合并为主要成员】,重新排列类型选择【合并至底层】,选上重新排列现有成员选择框。

将导入配置文件保存后,在菜单中选【文件】>【导入】>【导入维】,选中刚创建的导入配置文件。此处,若在IM_Load_Info接口表中定义了Load ID,可选择若干接口加载ID,以筛选导入的维度成员,不选择Load ID则导入接口表中所有的成员。

essbase、

点击【导入】按键后,EPMA会创建作业在后台执行导入工作,界面上会显示对话框提示作业已提交。

 

对话框上给出了作业链接,点击可打开作业控制台显示作业执行状态。作业控制台是EPMA的工具之一,使用它可查看EPMA各种作业的历史记录。作业控制台可通过Workspace菜单【导航】>【管理】>【作业控制台】打开。

 

作业执行成功后,在维库中刷新应用程序结构,查看Time维度成员是否正确导入。顺便说一句,除了通过EPMA接口表,Oracle Data Integrator、Essbase Studio、Essbase SQL Interface都可以直接向Essbase加载数据。

部署应用程序

java基础入门第二版。在部署HomeFinancial应用程序前,打开Essbase Administration Services Console(EAS Console),确认Essbase Sever是否开启对Unicode的支持。EAS Console可通过链接http://<epm_server>:9000/easconsole打开,或从下载的EPM客户端压缩包中安装。打开EAS Console首先显示登陆信息,输入EAS地址和账号后登陆。

 

登陆后在左侧的企业视图中,右击【Essbase服务器】,在菜单中选【添加Essbase服务器】。在对话框中,添加EAS本地Essbase Server加入。

在企业视图中,展开添加的Essbase Server节点,可以看到其中已有几个安装时自带的样例应用程序。每个应用程序下都含有一个或多个多维数据库,数据库下是大纲、规则文件、分区、报表脚本等。在EAS Console中可以进行应用程序管理、大纲编辑、维度和数据导入、计算脚本编写等操作,可以说EAS Console是功能最全、最经典的Essbase管理和开发工具。使用EPMA创建的数据库部署到Essbase Server后,也可以用EAS Console编辑。但EAS Console是直接修改Essbase Server中的数据库,所有的修改都不会同步到EPMA中,所以EAS Console适用于编辑标准应用程序,最好不要修改EPMA应用程序。

java查询es数据,

鼠标右键点击Essbase Server,菜单中选择【编辑】>【属性】,在安全性属性里,确保【创建Unicode模式的应用程序所需的权限】被选中,然后点击【应用】。

回到EPMA中,打开应用程序库。右击HomeFinancial应用程序图标,菜单中选【验证】,然后在作业控制台中查看验证作业执行状态。若验证无问题,右击应用程序选择【部署】。部署过程同样可通过作业控制台监控。

部署结束后,在EAS Console中可看到HomeFinancial已加入到Essbase Server中。

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://808629.com/70917.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 86后生记录生活 Inc. 保留所有权利。

底部版权信息