连接到 SAP Business Warehouse (BW) 实例后, 导航器 对话框会显示所选服务器中可用目录的列表。
将显示一个名称为$INFOCUBE的目录文件夹。 此文件夹包含 SAP BW 系统中的所有 InfoProviders。
在 SAP BW 中,其他目录文件夹表示存在至少一个查询的 InfoProviders。
导航器对话框显示连接的 SAP BW 系统中的数据对象的分层树。 下表描述了对象的类型。
| 符号 | Description |
|---|---|
|
您的 SAP BW 服务器 |
|
目录 - $INFOCUBE 或 InfoProvider |
|
InfoCube 或 BEx 查询 |
|
关键人物 |
|
特征 |
|
特征级别 |
|
属性(特性) |
|
Hierarchy |
注释
导航器显示 InfoCubes 和 BEx 查询。 对于 BEx 查询,可能需要进入 Business Explorer,打开所需的查询,并选中允许外部访问此查询:通过 OLE DB for OLAP,以便在导航器中使查询可用。
注释
在 Power BI Desktop 中,InfoCube 或 BEx 查询节点下方的对象(如关键数字、特征和属性)仅显示在导入连接模式下,而不是在 DirectQuery 模式下显示。 在 DirectQuery 模式下,所有可用的对象都映射到 Power BI 模型,并可用于任何视觉对象。
在导航器中,可以从不同的显示选项中进行选择,以查看 SAP BW 中的可用查询对象:
仅选定项:此选项将列表中显示的对象限制为仅选定项。 默认情况下,将显示所有查询对象。 此选项可用于查看查询中包含的对象。 查看所选项的另一种方法是在预览区域中选择列名称。
启用数据预览:此值为默认值。 使用此选项可以控制是否应在 导航器 对话框中右侧显示数据的预览。 禁用数据预览可减少服务器交互和响应时间。 在 Power BI Desktop 中,数据预览仅在导入连接模式下可用。
技术名称:SAP BW 支持查询对象 的技术名称 的概念,而不是默认显示的描述性名称。 技术名称唯一标识 SAP BW 中的对象。 选中该选项后,技术名称将显示在对象的描述性名称旁边。
特征层次结构
即使没有对特征定义层次结构,特征也始终至少有一个特征级别(级别 01)。 特性级别 01 对象包含特性的所有成员作为平面化的值列表。
SAP BW 中的特征可以定义多个层次结构。 对于这些特征,只能选择一个层次结构或 Level 01 对象。
对于层次结构的特征,为该特征选择的属性包含在层次结构的每个选定级别。
度量值属性
选择度量值时,可以选择单位/货币、格式化值和格式字符串。 在以下屏幕截图中,获取已格式化的 COGS 值是有用的。 这有助于在所有报表中遵循相同的格式设置标准。
注释
度量值属性在 DirectQuery 模式下的 Power BI Desktop 中不可用。
多维数据的平展
Power Query 基于导航器中的选定对象和属性,构造一个 MDX 语句,该语句将发送到 SAP BW。 MDX 语句返回一个平展数据集,可以使用 Power Query 编辑器进一步操作。
Power Query 使用 SAP BW 7.01 或更高版本中提供的较新的接口。 该接口可减少内存消耗,并且单元格数不会限制结果集。
在所选特征和属性级别,平展数据集在 SAP BW 中进行聚合。
即使有了这些改进,生成的数据集也可能会变得非常大且耗时。
性能建议
仅包含最终需要的特征和属性。 旨在提高聚合级别。 例如,您在报告中需要材料级详细信息,还是材料组(MaterialGroup)级别的信息就足够了? Power BI 中需要哪些层次结构级别? 尝试创建较小的数据集,其中包含更高级别的聚合或多个较小的数据集,这些数据集稍后可以联接在一起。
查询参数
SAP BW 中的查询可以定义动态筛选器,以便限制查询返回的数据集。 在 BEx 查询设计器中,可以使用所谓的 特征限制 和向该限制分配 变量 来定义这种类型的动态筛选器。 查询上的变量可以是必需或可选的,并且可供导航器中的用户使用。
在 Power Query 导航器中选择具有特征限制的 SAP BW 查询时,变量显示为数据预览区域上方的参数。
使用 显示 选择器,可以显示查询上定义的所有参数,也可以仅显示所需的参数。
上图中显示的查询具有多个可选参数,包括一个用于 材料组的参数。 可以选择一个或多个物料组,以仅返回所选值的采购信息,即机壳、主板和处理器。 还可以直接在值字段中键入值。 对于具有多个条目的变量,应使用逗号分隔的值,在此示例中,它将如下所示 [0D_MTLGROUP].[201], [0D_MTLGROUP].[202], [0D_MTLGROUP].[208]。
值 # 表示未分配;在此示例中,任何没有分配材料组值的数据记录。
性能建议
基于参数值的筛选器在 SAP BW 数据源中得到处理,而不是在 Power BI 中处理。 在将 SAP BW 数据加载或刷新到 Power BI 时,这种类型的处理可能会对较大的数据集具有性能优势。 将数据从 SAP BW 加载到 Power BI 所需的时间随数据集的大小而增加,例如,平展结果集中的列数和行数。 若要减少列数,请仅选择指导航器中最终希望看到的关键数据、特征和属性。
同样,若要减少行数,请使用查询上的可用参数缩小数据集的范围,或将较大的数据集拆分为多个较小的数据集,这些数据集可以联接到 Power BI Desktop 数据模型中。
在许多情况下,还可以与 SAP BW 中的 BEx 查询的作者合作,克隆和修改现有查询,并通过添加额外的特征限制或删除不必要的特征来优化其性能。
将 SAP 数据加载到 Power Query 中
在导航器中选择所需的 SAP 数据集后,可以将数据导入 Power Query 编辑器。 选择 “转换数据 ”以启动 Power Query 编辑器,可在其中执行其他数据转换和筛选步骤。
在前面的示例中,参数用于仅返回<材料组>为外壳、主板和处理器的记录。
在 Power Query Desktop 中,还可以选择 “加载 ”,将 SAP BW 中的整个数据集引入 Power BI Desktop。 Power BI Desktop 将转到 报表 视图,你可以在其中开始可视化数据或使用 “数据 ”或 “关系 ”视图进行进一步修改。