BO报表技术入门.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- BO 报表 技术 入门
- 资源描述:
-
BO报表技术入门 第一章 BO报表介绍: 1.什么是报表? 简朴的说:报表就是用表格、图表等格式来动态显示数据。报表软件,它们需要有专门的报表结构来动态的加载数据,同时也可以实现报表格式的多样化。BO就是这样一种报表软件。 2.BO报表 BO报表全称是BusinessObject,Business Objects 是全球领先的商务智能(BI)软件公司的产品套,2023年10月被SAP收购。 Business Objects XI 为报表、查询和分析、绩效管理以及数据集成提供了最完善、最可靠的平台。本文中用的版本是BusinessObject XI Release 2。 3.学习内容 (1)BO 的语义层设计 提供了创建和维护语义层的所有技术,让用户能很容易地创建、访问和运营报表。 n Designer简介 n 基本操作 n 插入表和连接 n 定义类和对象 (2)BO的报表设计 让开发者掌握报表规划和制作的全面技能和进一步知识,帮助分析和解释一些重要信息,以及完整的报表创建过程。 n 制作一张简朴的报表 n 报表的解决(1):插入表和设立表格式 n 报表的解决(3):独立单元格 n 报表的解决(4):设立数字和日期格式 n 报表的解决(5):使用节、拆分和排序 n 报表的解决(6):过滤报表中显示的值 n 报表的解决(7):使用标准计算 n 报表的解决(8):使用报警器突出显示关键结果 n 报表的解决(9):Web Intelligence 函数 n 解决查询:构建基本查询 n 解决文档(1):设立文档进行钻取分析 n 解决文档(2):保存和删除 Web Intelligence 文档 4.学习方式 语义层设计的学习,侧重于理论;报表设计的学习,侧重于操作。 本学习资料采用技术案例形式,【问题描述】是我们运用BO自带的数据库,编写了一个小的需求,引入具体的问题,【分析过程】具体讲解我们用到的技术知识,【解决途径】是我们以图示的方式,实现报表。【经验总结】是我们自己在开发过程中,碰到的相似问题。希望能有些拓展。 第二章 语义层设计 第一节 Designer简介 1.1 概述 本节简要介绍了 Designer 这一用于构建 Universe 的工具。我们从Universe是什么,如何创建 Universe,以及Universe的作用分别阐述。等你理解这些基本的概念之后,就会发现,制作报表只是力气活,但是universe 的设计却是技术活。所以在学习和开发的过程中,重要精力是要花在universe的设计上的。 1.2 Designer 和 Universe 基本原理 Business Objects Designer 是一个软件工具,可创建 Universe。 1.2.1 什么是 Universe? Universe 是一个包含以下内容的文献: • 一个或多个数据库中间件的连接参数。 • 称为对象的 SQL 结构,映射到数据库中的实际 SQL 结构,如列、表和数据库函数。对象按类分组。Web Intelligence 用户既可以看到对象,也可以看到类。 • 在数据库中使用的表和连接的模式。对象是通过您涉及在模式中的数据库结构来构建的。 简朴的来说,先了解下Universe是我们做报表的第一步要创建的文献,它重要是和底层数据库相相应,最直观的就是它是用来构建SQL查询的文献。 1.2.2 Universe 有何作用? Universe 的作用是为 Web Intelligence 的用户提供一个易于使用和理解的接口,使他们能依据数据库运营查询,以创建报表和执行数据分析。由于Universe中的类和对象,让SQL的查询结果,以直观的方式显示给Web Intelligence 的用户。Web Intelligence是什么将在第三章报表设计里面解释。在 Universe 中创建的对象必须与最终用户的业务环境和词汇相关。这些对象的作用是将以业务为焦点的前端呈现为数据库中的 SQL 结构。 下图显示了对象的作用,它用作数据库模式和 Web Intelligence 中的“查询”工作区之间的映射层,而用户使用该工作区创建依据数据库表运营的查询。 1.2.3 Universe 包含什么? 等你创建一个新的 Universe 文献后,你看到的窗口如下: 你在两个白色区域分别右击,就会发现它们的功能区别,右面是引入表或者编辑派生表(非物理表),左面是对象资源管理器视图,用以创建对象和类的。 (1)类 类是 Universe 中的对象的逻辑分组。它表达对象的类别。类的名称应指明类包含的对象的类别。可以按层次将类划分为子类。 (2)对象 对象是映射到数据库中的数据或数据派生的命名 Universe 单元。应根据目的用户组的业务词汇命名对象的名称。例如,在产品经理所用的Universe 中使用的对象可以是“Product(产品)”、“Life Cycle(生命周期) ”或“Release Date (发布日期) ” 。财务分析员使用的 Universe 可以包含诸如“Profit Margin (利润) ”和“Return on Investment (投资回报)”等对象。 (3)对象类型 在 Designer 中,对象被限定为三种类型之一:维、明细或度量。 对象类型说明 维用于分析的参数。维通常与诸如地理、产品或时间的层次相关。例如, “City”,“Yr(年)”,“Qtr(季度)”等。 明细提供维的说明,但并不是分析的焦点。例如“Month Name” 度量传递用于拟定维对象数量的数值信息。例如“Sales Revenue (销售收入)” 设立方法 右击对象à对象属性,如图: 第二节 基本操作 2.1 概述 本章描述您在 Designer 中执行以创建、修改和更新 Universe 的基 本操作。涵盖了以下主题: • 启动 Designer • 创建 Universe • 保存 Universe • 导出 Universe • 导入 Universe • 设立 Universe 参数 • 使用 Designer 用户界面 • 使用“查找并替换” • 组织表显示 • 选择模式显示选项 2.2 启动 Designer 系统 CMS 服务器的名称。 用户名 您的资料库用户名。 密码 您的资料库密码。 身份验证 您的安全级别 登录成功后 2.3 创建 Universe 名称 向 Web Intelligence 用户标记Universe。 描述 说明Universe 用途和内容的说明。可选字段。 连接 连接参数的命名集合,用于定义 Web Intelligence 如何访问数据库文献中的数据。所有可用的连接均显示在“连接”下拉列表框中。也可以创建新的连接。 接下来按拟定即可。 2.4 保存 Universe 保存 Universe • 从菜单栏中选择“文献”> “保存” • 单击“保存”图标 • 在键盘上按 Ctrl+S 2.5 导出 Universe 将Universe保存到CMS(中央管理系统:统一管理Universe) 点击浏览,可新建文献夹 2.6 导入 Universe 导入:从CMS上获得Universe。 第三节 插入表和连接 3.1 概述 本章说明可以如何创建一个模式,该模式包含构建对象所需的所有SQL 结构(Web Intelligence 用户使用这些对象来构建报表)。这些 SQL结构涉及表、列、连接和数据库函数。构建对的的模式是构建满足所有其最终用户报告需求的 Universe 的基础。直观的说,就是Designer工具中右边画布中编辑的内容。 3.2 什么是模式? 模式是数据库结构的图形表达方式。在 Designer 中,您为 Universe表达的数据库部分创建模式。 模式包含表和连接。表包含列,而您最终会将这些列映射到最终用户用于创建报表的对象。连接链接表,以便为在多个表上运营的查询返回对的的数据。 您通过使用表浏览器从目的数据库中选择表,在“结构”窗格中设计模式。创建连接以链接表。当您为 Universe 设计了模式时,可以使用自动完整性检查功能验证模式。 以下显示了 Beach 这一示例 Universe 的模式: 下图指明了模式设计阶段出现在一个典型 Universe 开发周期的哪个位置: 3.3 插入表 表浏览器是一个独立的窗口,它显示了目的数据库中的表和列的树形视图。使用表浏览器可查看和选择想插入模式的数据库中的表。 3.4 使用派生表 派生表是您在 Universe 模式中定义的表。您在这些表上创建对象,就像在任何其他表上创建同样。派生表由 SQL 查询在 Universe 级别定义,可用作 Designer 中的逻辑表。 派生表具有以下优点: • 减少了返回到文档供分析用的数据量。可以在派生表中包含复杂的计算和函数。这些操作在将结果集返回到文档之前执行,从而节省了时间和减少了在报表级别对大量数据进行 复杂分析的需求。 • 减少了对数据库汇总表的维护。有时,派生表可以取代保存复杂计算的结果的登记表(通过使用聚合感知将这些结果合并到 Universe 中)。经常维护和刷新这些聚合表要付出很高的代价。派生表可以返回相同的数据并提供实时数据分析。派生表与数据库视图类似,并具有以下优势:派生表的 SQL 可以涉及提醒。 SQL表达式就是我们编辑的区域。 3.5 定义连接 在模式中插入了多个表后,必须在相关的表之间创建连接。在模式中,连接和表同样重要,由于它们允许您通过一种故意义的方式组合多个表中的数据。这里的连接和数据库中的SQL连接有相同的含义。 创建连接: 1.可以通过图形方式在表之间创建各个连接,方法是使用鼠标从一个表中的列向另一个表中的匹配列画一条线。 2. 通过在“编辑连接”对话框中直接定义连接属性来创建连接。 第四节 定义类和对象 4.1概述 前面各节已经描述了如何规划 Universe、创建包含 Universe 数据库结构(表、列和连接)的表模式。 Web Intelligence 用户(报表设计者)看不到您创建的模式。完毕此数据库结构之后,您即可以建立类和对象,用户将在“Universe”窗格中看到这些类和对象,并且将使用它们依据数据库结构运营查询,以便生成文档和报表。 4.2什么是对象? (1)什么是对象? 在 Business Objects 产品中,对象是 Universe 中一种命名的元素,它代表数据库中的一个列或函数。 对象以图标的形式显示在“Universe”窗格中。每个对象都代表最终用户业务环境中使用的一个故意义的实体、事实或计算。您在 Designer的“Universe”窗格中创建的对象就是最终用户在报告工具中看到和使用的对象。也可以创建仅供 Designer 中使用的对象,您可以在 Web Intelligence 用户看到的“Universe”窗格中隐藏这些对象。 Web Intelligence 用户将对象从“Universe”窗格拖到“查询”窗格即可运营查询,并使用返回的数据创建报表。 每个对象都映射到目的数据库中的一个列或函数,并且,当在“查询”窗格中使用时,每个对象都会推导出一个 Select 语句。当组合了多个对象时,Select 语句依据涉及 SQL(由每个对象推导出)并应用缺省Where 子句的数据库运营。 下图显示了“Universe”窗格中的对象,以及 Designer“Universe”窗格中的相同对象。Designer “Universe”窗格中的每个对象都映射为Universe 模式中的一个列,并推导出一个 Select 语句(在查询中使用时)。 作为 Universe 设计员,您可以使用 Designer 来创建对象,WebIntelligence 用户将这些对象涉及在“查询”窗格中,以便运营查询。 (2)对象类型 给你的对象分派角色,即对象类型。 (3)什么是类? 类是对象的容器。类相称于 Windows 环境中的文献夹。可以创建类来 容纳在 Universe 中具有共同用途的对象。 4.3 使用@函数 对象是可以编辑的,它对于列或者函数。 开发过程中,常见的就是使用这种@函数,示例中 case @Prompt('WD','A',,,) when '1' then "TKMX".TKXZ_DM when '2' then "TKMX".ZSXM_DM end 含义是名为WD的变量值为‘1’,这个对象返回退库类型代码,‘2’则返回征收项目代码,当你编辑完毕的时候,点击“分析”,分析通过则此对象符合规则。 第三章 报表设计 案例1:制作一张简朴的报表 一、【问题描述】 使用BusinessObject XI Release 2(简称BO)制作一张简朴的报表。 二、【分析过程】 第一步,根据业务逻辑进行语义层设计(工具Designer); 第二步,根据业务展现需求进行报表设计(登录到InfoView); 第三步,展现在jsp页面前台 三、【解决途径】 (1)SQL语句分析通过后,保存Universe并导出 (2)新建Web Intelligence文档, (3)保存文档 (5)文档具体编辑 (6)获得文档的SI_CUID 四、【经验总结】 无 案例2:插入表 一、【问题描述】 当您创建新文档时,Web Intelligence 会生成一个带有垂直表和标准格式的新报表。这个初始表中包含文档后面查询中的所有数据。(自动生成) 您可以编辑表内容、个性化其格式或将该表转换为不同的表类型或记录图。您还可以将多个表插入到同一报表中或同一文档内的新报表中。(自定义) 二、【分析过程】 Web Intelligence 报表中显示信息的不同表模板: • 垂直表(数据展示方向是纵向的) • 水平表(数据展示方向是横向的) • 交叉表(联想到x,y轴) • 表单(还没有接触) 三、【解决途径】 可以在交叉表中涉及多个维。例如,此交叉表显示两个维。[销售收入] 度量的值是每一行按季度列出的每个省/州的值。 注意,这种页眉中数据相同的不能合并单元格 四、【经验总结】 无 案例3:设立表格式 一、【问题描述】 当您创建新文档时,Web Intelligence 会生成一个带有垂直表和标准格式的新报表。这个初始表中包含文档后面查询中的所有数据。(自动生成) 您可以编辑表内容、个性化其格式或将该表转换为不同的表类型或记录图。您还可以将多个表插入到同一报表中或同一文档内的新报表中。(自定义) 二、【分析过程】 Web Intelligence 报表中显示信息的不同表模板: • 垂直表(数据展示方向是纵向的) • 水平表(数据展示方向是横向的) • 交叉表(联想到x,y轴) • 表单(还没有接触) 三、【解决途径】 (1)可以在交叉表中涉及多个维。例如,此交叉表显示两个维。[销售收入] 度量的值是每一行按季度列出的每个省/州的值。 注意,这种页眉中数据相同的不能合并单元格 (2)给现有表应用不同的模板 四、【经验总结】 (1)拖放操作将行或列添加到表 (2)替换表列和表行 (3)通过移动表列或表行创建交叉表 (4)运用单元格之间的边框,背景颜色,宽度隐藏一列单元格 案例4:独立单元格 一、【问题描述】 独立单元格是在报表中独立存在的单一的单元格。您以使用独立单元格显示信息,为报表增长含义。 二、【分析过程】 三、【解决途径】 四、【经验总结】 无 案例5:设立数字和日期格式 一、【问题描述】 可以从预定义的格式范围中选择格式或创建自己的定制格式。 二、【分析过程】 三、【解决途径】 四、【经验总结】 无 案例6:使用节、拆分和排序 一、【问题描述】 如何对报表中显示的信息进行组织,使报表易于读取和导航。 二、【分析过程】 BO提供了有关以下各项的信息: • 使用节对报表上的数据进行分组 • 使用拆分对表中的数据进行分组 • 使用排序来组织表上的节和数据 三、【解决途径】 (1)创建节点 (2)可以在表或交叉表上插入一个或多个拆分。您可以在显示维或明细的任意列或行上插入拆分。 注意: 您不能在显示度量的列或行上插入拆分。 四、【经验总结】 (1)下面显示了拆分和节的不同之处 (2)拆分是对维度或者明细拆分,不能对度量进行拆分: • 假如选定表是垂直表,则所有拆分将应用于列。这样的拆分称为“垂直拆分”。 • 假如选定表是水平表,则所有拆分将应用于行。这样的拆分称为“水平拆分”。 • 假如选定表是交叉表,则拆分可以应用于行或列。可以选择水平拆分和垂直拆分的优先级。 案例7:过滤报表中显示的值 一、【问题描述】 如何过滤 Web Intelligence 报表中显示的数据,以便集中提供您因某种特定业务目的而关的信息。可以通过应用报表过滤器来完毕此操作。 二、【分析过程】 创建报表过滤器,需要指定三个元素: • 过滤的对象 • 运算符 • 值 三、【解决途径】 (1) 给报表应用多个过滤器 (2) 查看给报表应用的过滤器 四、【经验总结】 无 案例8:使用标准计算 一、【问题描述】 如何插入标准业务计算 二、【分析过程】 使用标准计算 三、【解决途径】 四、【经验总结】 无 案例9:使用报警器突出显示关键结果 一、【问题描述】 报警器使您可以采用能让结果在报表上突出显示出来的格式来突出显示特定的结果范围。 二、【分析过程】 需要指定五个元素: • 名称 • 对象或单元格内容 • 运算符 • 操作数(值或其他对象) • 条件格式设立 三、【解决途径】 第 1 步:启动“报警器编辑器”并为新报警器命名 第 2 步:定义条件 第 3 步:使用报警器个性化单元格的格式设立 第 4 步:添加子报警器(可选) 第 5 步:保存报警器 第 6 步:为整个文档更改报警器的优先级(可选) 四、【经验总结】 (1)您可以将报警器应用于表体单元格(按列或行)、节单元格、页眉单元格和自由单元格。但是,不能将报警器应用于整个表或表单,或应用于记录图。 (2)区分报警器与报警器,报警器与子报警器之间的关系 (3)使用公式创建高级报警器 案例10 :Web Intelligence 函数 一、【问题描述】 介绍 Web Intelligence 中提供的函数 二、【分析过程】 ü 所有 此表下面列出的所有类别的所有函数。 ü 聚合 聚合数据(例如,通过对一组值求和或求平均值) ü 字符 解决字符串 ü 日期和时间 返回日期或时间数据 ü 文档 返回有关文档的数据 ü 数据提供者 返回有关文档数据提供者的数据 ü 逻辑 返回 TRUE 或 FALSE ü 数字 返回数字数据 ü 其它 不属上述任何类别的函数 三、【解决途径】 四、【经验总结】 (1)date FormatDate(date date_to_format; stringdate_format) 示例:FormatDate([税费所属期起];"yyyy-MM-dd") (2)string SubStr (string input_string, integer start,integer length) 示例:"支付时间段:"+Substr([支付时间起];1;4)+"年"+Substr([支付时间起];6;2)+"月"+Substr([支付时间起];9;2)+"日-"+Substr([支付时间止];1;4)+"年"+Substr([支付时间止];6;2)+"月"+Substr([支付时间止];9;2)+"日"+" 单位:元" (3)If (boolean_expr; value_if_true; value_if_false) 示例:If([区分标记]="1";"城区小计";"县区小计") (4)string Left(string input_string; integer number_of_characters) 示例:If(Left([行业代码];1)="1";1;0) 案例11:报表的钻取 一、【问题描述】 比如说现在有一组数据如下: 区县 所 组 户数 玄武 玄武一所 玄武一组 100 玄武 玄武一所 玄武二组 200 玄武 玄武二所 玄武一组 200 玄武 玄武二所 玄武二组 300 玄武 玄武二所 玄武三组 100 白下 白下一所 白下一组 150 白下 白下一所 白下二组 100 白下 白下二所 白下一组 100 白下 白下三所 白下一组 200 需求规定,第一层展示区县机关的数据,第二层展示管理所的数据,第三层展示管理组的数据。 玄武 900 白下 550 点击【玄武】,下钻到所: 玄武一所 300 玄武二所 600 点击【玄武一所】,下钻到组: 玄武一组 100 玄武二组 200 这就需要何使 Web Intelligence 文档中的报表变得可钻取,了解每一步数据的汇总后的具体信息。 二、【分析过程】 一方面介绍钻取的本质。 报表技术自身是对SQL的封装。他的钻取功能类似于SQL中的GROUP BY。 第一层,相称于“select 区县,sum(户数)from table group by 区县”; 第二层,相称于“select 所,sum(户数)from table where 区县=玄武 group by 所”; 第三层,相称于“select 组,sum(户数)from table where 区县=玄武 and 所=玄武一所group by 组”。 另一方面,钻取顺序的问题。 钻取的顺序按上面的需求中设定的,并不是报表有默认的顺序。此外,钻取的顺序是可以反过来,甚至可以没有特定的含义。这么说,是由于之前我们在开发中,觉得只有数据有必然的上下级关系才干实现钻取。事实和我们理解的完全相反,BO能在任何维度之间钻取。比如说我数据中加一列 年份 区县 所 组 户数 2023 玄武 玄武一所 玄武一组 100 2023 玄武 玄武一所 玄武二组 200 2023 玄武 玄武二所 玄武一组 200 2023 玄武 玄武二所 玄武二组 300 2023 玄武 玄武二所 玄武三组 100 2023 白下 白下一所 白下一组 150 2023 白下 白下一所 白下二组 100 2023 白下 白下二所 白下一组 100 2023 白下 白下三所 白下一组 200 钻取顺序:年份-所-区县-组,区县-年份-所-组…,所有也许的排列顺序。 所以实现钻取的时候,第一步,准备要钻取的维度,比如说年份-区县-所-组; 第二步,设定钻取维度的顺序; 第三步,启动钻取功能。 三、【解决途径】 (1)设定顺序 第一种,Universe中,使用层次编辑器。 第二种,钻取的所有维度放在一个类中,会自动按照从上到下的顺序实现钻取 (2)启动钻取。 切换到钻取模式: 1 当文档在 Web Intelligence Java 报表面板中处在打开状态时,验证您是否处在报表视图中。 当您在报表视图中进行操作时,“编辑报表”按钮处在按下状态。 2 选择要钻取的报表。 “钻取”按钮将出现在 Web Intelligence 工具栏上。 3 单击“钻取”按钮。 四、【经验总结】 (1)某个维度,使用了标准计算后,就不能实现钻取了。 (2)想要了解钻取途径,不妨试试DrillFilter这个函数。展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




BO报表技术入门.doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/3910993.html