InfoProvider 是在 BEx 中创建 query 和执行 Query 。是用于制作相关报表 的物理对象或者逻辑对象。这就说明了 infoprovider 既可以是实际存储数据的对象也可以是虚拟的用逻辑关系收集数据的对象。
InfoCube 是用来支持 BI query 的首选对象。用来存储 summarized 和 aggregated 数据,这些数据跨越的时间一般较长。设计仓库时就要考虑到大部分 query 要访问的都是这种对象。在行业标准里 InfoCube 对应的是 Star Schema 。 DataStore Objects 是 BI 中另外一个重要的对象,用来存储更加明细的数据。但其不属于数据仓库行业标准的范畴。 DSO 和 INFOCUBE 是数据库 物理存储的对象。这些对象的正确使用与否直接关系到整个 BI 项目的成败。可以在 RSA1 中维护,创建和显示 Infoproviders 。 InfoArea 作为 Inprovider 或 InfoObject Catalog 的 folder ,同一个 InfoProvider 只能位于一个 InfoArea 中。
InfoObjects :
InfoObjects 是 BI 中最小的信息单元。同过技术名称来唯一标识。 Business Evaluation Objects 在 BI 中就是 InfoObjects ,它分为: characteristics , key figures , Units , time characteristics 和 technical characteristics 。作为 Metadata Repository 的一部分, InfoObjects 包括了主数据和业务数据的技术和业务分析信息。 InfoObjects 在整个系统中用于创建存储数据的 structures 和 tables 。将数据建模成 structure 的形式。他们还可以用来定义报表和评估事务数据和主数据。
SAP 在 BI content 中发布了许多 InfoObjects ,它们的技术名称以 0 开始。也可以定义自己的 InfoObjects ,跟其他的 SAP 系统不一样,其技术名称只要不以数字或者特殊字符开始就行,可以是三个到 9 个字符长。没有要求想其他 SAP 系统那样必须以 Z 开始。
InfoObjects 从大类上分为 Characteristics 和 key Figures , characteristic 又分为 time characteristics , technical characteristics 和 Units 。 Key Figure 用来存储数值型的数据比如: 0Quantity , 0Amount 。 Characteristic 用来存储业务数据,用来分析 Key Figure ,比如 0COSTCENTER , 0MATERIAL 。 Time Characteristics 用来存储与时间相关的数据,比如 0CALDAY , 0CALYEAR 。 Unit Characteristics 是与 key figure 结合在一起使用的。比如 0Currency , 0Unit 。 Technical characteristic 在 BI 中具有组织功能。比如 Request ID , 0REQUID , change ID , 0CHNGID 。
Characteristics Info Objects
Characteristics info objects 用来分析 key figures ,比如客户 (characteristics) 销售额 (key figures) 。
Characteristic 的维护屏幕包括以下几个 tab pages :
Master Data Bearing Characteristics
如果一个 characteristic 有 attributes , texts , hierarchies 等额外的信息,那么它就 master data bearing 的。要根据业务流程和 characteristics 本身的特点来决定其是否为 master data bearing 的。在很多情况下它们为你的 reports 提供了很多重要的信息。
在维护屏幕中只要你选中了适当的 text , master data 或者 hierarchies 的 checkbox 那么就 enable 了 data bearing characteristics 。
General Tab Page
用来维护 characteristics 的一些 basic properties 。比如 description , data type , length 和 conversion routine 。 Description , data type , length 是 obligatory 的,其他的是 optional 的。
Business Explorer Tab Page
用来设置其在 Business Explorer 中的 display default values 。它决定了 characteristics 是以 textual description 还是 key 的方式在 Business Explorer 中显示。 Business Explorer tab 还包括 currency conversion , unit of measure conversion 和 remote access 。
Compounding Page
决定这个 characteristic 是否 compound 到了另外一个 Infoobject 。通过 compound characteristic value 来保证 characteristic 的唯一性。大多数情况下可能不需要,但是如果在需要的时候没有想起来可能会导致产生大量的垃圾数据。
Compounding 还可以用来定义 objects 之间的 dependencies 。它简化了对报表的 navigation 。不过要注意的是大量 compounding characteristics 可能会导致性能的下降。
Master Data/Texts Tab Page
来决定 characteristic 是否有 attributes 或 texts 。如果 characteristic 有自己的 text ,你必须选择至少一种 text ,比如 short , medium-length 或者 long text ,它们长度分别为 20 , 40 或 60 个 characters 。 Attributes 是通过 attribute tab page 维护的。选择其中的任何一个 textbox ,都会使 characteristic 变成 master data bearing 的。
Attributes Tab Page
Attributes 是用来更加详细的描述 characteristic 的 Info Objects 。一旦你在 master data/text tab page 选择了 with master data indication ,那么你就可以在 attributes tab page 指定 attributes 和维护它们的属性了。值得注意的是 attributes 本身也是 info objects ,利用这个 InfoObject 的 field information 来在 primary characteristic master data table 上建立一个 column 。
Display attributes 在报表中只能作为 characteristic 的额外信息,换句话说,在报表中,你不能通过这样的 attribute 来 navigate infoProvider 中的 dataset 。
Navigation attributes 可以用来在 report 中 navigate 。在 query 执行, InfoProvider 中的 characteristic 和 navigation attribute 都是一样对待的。换句话说所有的 navigation function , navigation attribute 都可以实现。
如果在 report 中想使 attributes 其作为 navigation attribute ,你需要在 InfoProvider 中 enable 它们,否则的话它还会作为 display attributes 使用。
如果 attribute 的 value 需要有效期,可以将 display 或者 navigation attribute 设为 time dependent 。这可以让你制作存在于不同时间节点上主数据的报表。
如果一个 characteristic 被定义成 attributes only ,那么这个 info object 只能作为其它 characteristic 的 display attribute 。它永远都不会 bear master data ,如 phone number 。
过量的使用 navigation attributes 会导致大量的 tables 和 joins ,从而降低 performance 。有自己的 attributes 的 characteristic 可以作为其它 characteristic 的 attribute 。如果报表用户想得到 attributes 的 attribute (即 transitive attributes ),需要通过其他的 data modeling 方式来实现,比如 InfoSet , the Analysis Designer ,或者其他的 technique 。
Hierarchy tab page
Hierarchy 用于在分析时提供数据的不同 view 。它像 SAP 的其它产品比如 ECC 一样提供了一种 grouping function 。一个 hierarchy 包括多个 nodes 和 leaves ,组成一个 parent-child 关系。 Nodes 代表 group ,比如西部地区。 Leaves 代表 characteristic values 比如 salesperson 。在 hierarchy tab page 你可以决定 characteristic 是否带 hierarchy 。如果带,还可以设置 hierarchy 所具备的属性。如果设置了 with hierarchy indicator , characteristic 的 hierarchy 就可以通过 RSH1 手工创建。它还可以从 SAP 系统或者其它源系统中加载。
在 SAP BI 中, external hierarchies 是 presentation hierarchies ,作为 characteristic values 的 structure 存储在 hierarchy table 中。
Characteristic hierarchies 可以使用不同的 hierarchy versions 。另外, relationships 也可以使时间相关的。在源系统中的与时间或版本相关的 hierarchy 都可以在 BI 中建模。
Version-Dependent Hierarchy
Characteristic hierarchy 可以使用不同的 hierarchy versions 。你还可以为在源系统中的同一个 hierarchy 创建不同的版本。这样不同的版本在同一个 query 中就可以进行比较。例如如果销售大区的销售区域需要重新组织,可以创建多个 hierarchy versions 。这样在一个 query 中它们就可以相互比较。
Time dependent Entire Hierarchy
在 Infoobject hierarchy tab ,你可以定义整个 hierarchy 与时间相关。换句话说,在不同的时间段有不同版本的 hierarchy 。按照 query 中的 settings ,系统会自动地选择正确的 hierarchy 。
Time dependent Hierarchy structure
你还可以定义 hierarchy structure 是与时间相关的, hierarchy 的 structure 就会按照 key date 或在 query 中指定的 key date 进行组织。
Hierarchy intervals
在一个 hierarchy node 可以输入 intervals 。你也可以输入不存在 master data 的 characteristic values 作为 intervals 。这样就避免了出现新的 master data ,你还要扩展 hierarchy 。 Internal option 的一个局限是在许多 area 中,要求 characteristic value 的 technical key 必须有实际意义。这一般在跟财务相关的 objects 能符合要求,比如 general ledger account numbers 。
Characteristic 使用 hierarchy 的前提条件
Results of Characteristics infoobject Maintenance
当激活 infoobjects 时,系统会自动创建相应的 underlying table 。它们分别是 SID tables , Text Tables 和 hierarchy tables 。
属于 characteristic 的 objects 有 data element , domain 和 master data tables 包括 attributes , texts 和 hierarchies 。如果 attributes , texts 和 hierarchies 分配给了 characteristic ,这个 characteristic 就被称为 master data carrying characteristic 。 Characteristic 还可以作为 InfoProvider 。
Note: 事务 RSD1 和 RSD5 允许你创建 InfoObject 而不用分配到 InfoCatalog 。这些 InfoObjects 被称为 Free InfoObjects 。它们会被自动分配到 InfoArea NODESNOTCONNECTED 。不过这些 InfoObject 可以在任何时候被分配给 InfoCatalog 。如果删除了一个 InfoCatalog ,分配给它的 InfoObjects 不会随同它一起被删除,没有分配的 characteristic 或 key figures 会被分给适当的 non-assigned infoobject catalog 。