Fusion BIP 报表开发业务顾问向入门

作者:郑德鼎 约 12 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, Data Engineering, 开发, 数据工程
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

大家好,今天主要分享的内容是,如何在Fusion中进行BIP报表的开发。

注:本文主要面向没有开发经验的业务小伙伴,技术伙伴和大佬们请略过。

**看完本文你能了解** :

① Fusion BIP报表开发前的准备

② Fusion BIP报表结构

③ Fusion BIP如何将数据模型转换成报表输出

④ 报表开发演示

⑤ 如何锻炼Fusion报表开发能力

⑥ 业务顾问了解报表开发的好处

**题外话**

:个人看法,要成为一位优秀的专业顾问,必须懂得业务、财务、技术,不要给自己加限制、画圈子。当然,要在每个方面都做得精,做得好,需要日积月累的自我打磨才能达成。

话不多说,下面开始分享:

**一、Fusion BIP报表开发前的准备**

◆ Oracle Analytics Publisher

◆ Office Word/Excel

◆ 一个Fusion环境

◆ 熟悉Fusion表结构(官方文档可查)

◆ 懂一点Sql(7天速成够用)

其中,Oracle Analytics Publisher的老版本名又叫BIP,下载地址为:

https://www.oracle.com/middleware/technologies/analytics-

publisher/downloads.html

该工具用64位还是32位,需要和Office位数匹配上,否则插件无法正常运行。

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

**二、Fusion BIP报表结构以及其如何将数据模型转换成报表输出**

既然要开发一张Fusion BIP报表,那么我们先来了解下其结构:

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

可见,Fusion BIP报表可以分为【数据模型】和【报表布局】两大块;

**数据模型:用于抓取系统中我们要的数据**

◆ 其中【数据模型】的Sql主体,负责从Fusion的表中获取数据;

◆ Lov值列表负责给参数提供选项;

◆ 参数负责给Sql主体赋参,以调用自己想要的内容;

**报表布局** :定义报表输出的样式,负责将数据模型运行的数据结果,展示成我们想要的报表最终输出。

其中报表布局支持多种布局,有RTF、Excel等。后续以Excel为例讲解,其它样式输出的操作均类似。

**三、Fusion BIP如何将数据模型转换成报表输出**

了解到Fusion的BIP报表是由【数据模型】和【报表布局】,那么Fusion是怎么将数据模型的结果,结合报表布局转换成报表的呢?

**这里要引入一个概念:XML**

XML 指可扩展标记语言(eXtensible Markup Language),它是被设计用来传输和存储数据。

如下例,是一个简单XML文件:

<note>

<title>FusionBIP报表开发</title> <from>动摇</from> <postplace>爱记不记</postplace>

<body>主体内容</body>

</note>

可以看到,其用<xxx></xxx>表示标签及其结构。然后每个标签内,存放对应的具体数据。具体的结构这里就不展开,入门用不到且度娘教得更好。

在Fusion BIP开发中,我们要知道的就是,Fusion会把数据模型转换成XML文件,并插入到定义好标签的模板中。

如我在Excel的A1单元格,定义好了这个单元格要加载标签名为<JournalName>的数据,那么数据模型输出后的数据,只要是这个标签的数据就会插入到这个单元格里。

那么,怎么定义呢?这里就引入了BIP工具,通过工具我们可以傻瓜式定义数据存放在模板中的位置。

**四、报表开发演示**

在做好准备后,开发一张Fusion BIP报表的步骤可以分为

4.1确定报表目的及输出内容

4.2创建数据模型

4.3创建值列表

4.4创建参数

4.5创建SQL Query

4.6运行数据模型确认无误后导出xml数据

4.7创建报表模板

4.8使用BIP工具加载xml文件调试输出

4.9上传没问题的模板并绑定数据模型

4.10运行测试

**4.1确定报表目的及输出内容** :

在开发前,我们要确定报表的使用目的、报表维度、字段逻辑、参数、参数值列表、是否要要做权限控制等各种信息。

说白了,就是写功能设计。

**此处以简单的序时账为例,演示报表的开发** :

◆ 报表目的:这个序时账用于导出日常做账的数据

◆ 报表维度:维度为日记账行且带对应的日记账头信息

◆ 字段逻辑:需要序时账的一些基础字段

◆ 参数:要按账套、公司段、过账日期来筛选数据

◆ 参数值列表:账套和公司段的值取系统内最新数据情况

◆ 其它:不做权限控制

**4.2创建数据模型**

首先进入BIP界面,创建一个数据模型并保存。

因为Fusion的数据模型,在前期刚开始写,还没运行过触发自动保存之前,网络不稳定的话可能会丢失。

当然,推荐线下用VScode等工具写了再放上去,大差不差。

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

**4.3创建值列表**

直接创建需要的值列表,值列表的类型一般用SQL或常数,这里以SQL为例

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

**4.4创建参数**

如下图介绍,创建所需参数

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

注:参数命名规范一点的话,一般用p_xxx_xxx,这样方便后续在写代码时快速用【:p_】锁定参数

**4.5创建SQL Query**

点击加号创建一个SQL Query

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

并为数据集填充需要的信息,其中SQL Query的代码是最重要的。

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

如果是多选参数,要留意是选了NULL还是ALL:

◆ 全选传NULL的话,会跳过参数权限校验,直接取后台表所有值,效果相当于把这个参数限制去掉;

SQL例子:AND (poh.prc_bu_id IN (:p_org_id) OR greatest(:p_org_id) IS NULL)

◆ 但是全选传ALL,是将用户参数能访问的所有值给加到参数里,所以,一般需要权限控制的多选参数,用ALL比较好

SQL例子:AND (ioqd3.organization_id IN (:p_org_name) OR 'ALL' IN (:p_org_name ||

'ALL'))

**4.6运行数据模型确认无误后导出xml数据**

从上放的Diagram切换到Data后,选择你的参数,点击View,预览对应参数的结果。

预览时建议用Table View比较直观。

在确认SQL Query有按照你要求的参数抓取出正确的数据后,点击Export,导出XML文件

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

**4.7创建报表模板**

以Excel模板为例,创建2003版本的xls空白模板,然后在空白模板的基础上,点击BIP插件上的【实例XML】,加载之前导出的XML文件:

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

接着,点击第一个要赋值的单元格,点击BIP插件中的【字段】,弹窗说将创建元数据工作表,点击确定。

注:这个工作表sheet页记录了标签和Excel单元格位置的关系,默认是隐藏不显示的。

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

接下来,选择需要插入到A3单元格的字段,点击插入:

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

这样,基本的字段和单元格的关系插入成功。

但还不够,因为,这里标识的只是xml中一条数据,要存放到Excel中的特定位置。

对于序时账而言,我们导出时是有多条数据的,因此需要增加个循环组:

选中要循环的Excel区域,点击BIP插件中的【重复组】,选择对应循环的数据集编码,然后点击确定。

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

**4.8使用BIP工具加载xml文件调试输出**

好,大功告成后,点击BIP插件中的【Excel】,插件将自动创建一份完整地加载了XML文件的Excel,用于预览效果:

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

**4.9上传没问题的模板并绑定数据模型**

在之前的调试均没有问题后,回到Fusion,点击创建报表:

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

选择要关联的数据模型,勾选使用报表编辑器,然后点击完成:

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

选择报表保存的路径,并敲定报表名:

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

在系统弹出的界面中,点击上传,并输入报表布局名称,选择本地的模板文件和模板类型以及地区,然后点击上传:

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

上传成功后,一般在属性里把【自动运行】去掉

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

同时在缓存界面选成用户可以刷新缓存:

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

**4.10运行测试**

最后,可以点击查看报表,查看最终成果:

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

一张简单的报表,这样就开发完成了。

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

**五、如何锻炼Fusion报表开发能力**

上述介绍的报表开发例子,是特别简单的。当你对Sql和Fusion表结构有更近一步了解,可以开发更为复杂的报表。

可以从序时账开始,到资产负债表、利润表、现金流量表,各模块的业务数据报表逐个提升难度练习。

最后到,到跨模块分析,最后通过多数据集,多重子查询并处理想要的数据,熟悉整个Fusion报表的开发,完成进阶。

另外,BIP报表若是输出为Excel格式,还可以配合Office的公式进一步加工处理,以简化Sql的处理,提升效率。

**六、业务顾问了解报表开发的好处**

业务顾问了解开发后,对于报表的实现有更进一步了解:

◆ 提升功能设计水平:做功能设计时,会潜意识地考虑到技术实现,从而设计出更有价值的功能设计;

◆ 提升报表测试效率:报表看代码就能直接知道有没有按照功能设计写,可以快速定位到问题;

◆ 增强工作量评估能力:对于一些项目,当需要自己评估工作量时,可以经过自己的开发经验,做出评估;

其它好处太明显,不赘述。

Fusion BIP 报表开发业务顾问向入门 - 封面图
Fusion BIP 报表开发业务顾问向入门 - 封面图

作者:肖栋耀

审核:陆 觉

编辑:王 锐

郑德鼎

关于作者:郑德鼎

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「FusionBIP报表开发业务顾问向入门.md」整理生成,仅用于内部技术分享与学习交流。