SAP Business Warehouse 消息服务器
注意
SAP Business Warehouse (BW) 消息服务器连接器现已于 2020 年 6 月获得 SAP BW/4HANA 认证。
总结
项目 | 说明 |
---|---|
发布状态 | 正式版 |
产品 | Power BI(语义模型) Power BI(数据流) Fabric(数据流 Gen2) Power Apps(数据流) |
支持的身份验证类型 | Windows(桌面) 数据库(桌面) 基本(联机) |
函数参考文档 | SapBusinessWarehouse.Cubes Sapbusinesswarehouseexecutionmode.DataStream SapBusinessWarehouseExecutionMode.BasXml SapBusinessWarehouseExecutionMode.BasXmlGzip |
注意
由于部署计划和特定于主机的功能,某些功能可能只存在于一个产品中。
先决条件
重要
SAP BW 消息服务器连接器版本 1.0 已弃用。 新连接将使用 SAP BW 消息服务器连接器的实现 2.0。 在不久的将来,对 1.0 版的所有支持都将从连接器中删除。
需要 SAP 帐户才能登录到网站并下载驱动程序。 如果不确定,请与贵组织的 SAP 管理员联系。
要在 Power BI Desktop 或 Power Query Online 中使用 SAP BW 消息服务器连接器,必须安装 SAP .NET 连接器 3.0 或 3.1。 只有有效的 S 用户才能访问下载。 请与 SAP Basis 团队联系,以获取 SAP .NET 连接器 3.0 或 3.1。 可以从 SAP 下载 SAP .NET 连接器 3.0 或 3.1。 该连接器提供 32 位和 64 位版本。 选择与 Power BI Desktop 安装匹配的版本。 对于 Power Query Online,选择 64 位版本。
安装时,在“可选安装步骤” 中,确保选择“将程序集安装到 GAC” 。
注意
从 2023 年底开始,SAP BW 应用程序服务器连接器将包含对 SAP .NET 连接器 3.1 的支持。
支持的功能
- 导入
- Direct Query(Power BI 语义模型)
- 高级
- 语言代码
- 执行模式
- 批次大小
- MDX 语句
- 启用特性结构
从 Power Query Desktop 连接到 SAP BW 消息服务器
要连接到 SAP BW 消息服务器:
从 Power BI Desktop 的主页选项卡中,选择获取数据 > SAP Business Warehouse 消息服务器。
输入要连接到的 SAP BW 消息服务器的服务器、系统号、客户端 ID 和登录组。 此示例使用
SAPBWTestServer
作为服务器名称,并使用系统号100
、客户端 ID837
和登录组PURCHASING
。注意
还可以使用路由器字符串连接到数据。 详细信息:使用路由器字符串进行连接
此示例的其余部分介绍如何将数据导入到 Power Query Desktop 中,这是数据连接模式的默认设置。 如果要使用 DirectQuery 加载数据,请参阅在 Power BI 中使用 DirectQuery 连接到 SAP Business Warehouse。
如果要使用此连接器的任何高级选项来微调查询,请转到使用高级选项。
填写完相关信息后,选择确定。
首次访问数据库时,SAP BW 消息服务器需要数据库用户凭据。 Power Query Desktop 为 SAP BW 连接提供两种身份验证模式,即用户名/密码身份验证(数据库)和 Windows 身份验证(单一登录)。 SAML 身份验证目前不受支持。 选择 Windows 或数据库。 如果选择数据库身份验证,请输入用户名和密码。 如果选择 Windows 身份验证,请转到 Windows 身份验证和单一登录 ,了解有关 Windows 身份验证要求的详细信息。
然后选择“连接”。
有关身份验证的详细信息,请转到使用数据源进行身份验证。
从导航器对话框中,选择要使用的项。 从服务器中选择一项或多项时,导航器对话框将创建输出表的预览。 有关在 Power Query 中导航 SAP BW 消息服务器查询对象的详细信息,请转到导航查询对象。
从导航器对话框中,可以选择转换数据以在 Power Query 编辑器中转换数据,也可以选择加载以加载数据。
从 Power Query Online 连接到 SAP BW 消息服务器
要从 Power Query Online 连接到 SAP BW 消息服务器:
从数据源页面中,选择 SAP BW 消息服务器。
输入要连接到的 SAP BW 消息服务器的服务器、系统号、客户端 ID 和登录组。 此示例使用
SAPBWTestServer
作为服务器名称,并使用系统号100
、客户端 ID837
和登录组PURCHASING
。选择要用于连接到数据的本地数据网关。
将“身份验证类型”设置为“基本”。 输入用户名和密码。
还可以从一组高级选项中进行选择,以微调查询。
选择下一步以连接。
从导航器对话框中,选择要使用的项。 从服务器中选择一项或多项时,导航器对话框将创建输出表的预览。 有关在 Power Query 中导航 SAP BW 消息服务器查询对象的详细信息,请转到导航查询对象。
从导航器对话框中,可以选择转换数据以在 Power Query 编辑器中转换数据。
使用路由器字符串进行连接
SAP 路由器是一个 SAP 程序,在 SAP 系统之间或者 SAP 系统和外部网络之间的网络连接中充当中间工作站(代理)。 SAP 路由器控制网络访问,因此是对现有防火墙系统(端口筛选器)的有益增强。 形象一点说,防火墙在网络周围形成无法穿透的“墙”。 但是,由于某些连接需要穿透此墙,因此必须在防火墙中设置一个“门”。 SAP 路由器将控制此门。 简言之,SAP 路由器提供控制 SAP 系统访问的方法。
Power Query 中的路由器字符串
要通过 SAP 路由器与 SAP BW 系统建立连接,可以在 Power Query 连接设置中使用路由器字符串来代替服务器名称。
用于路由器字符串的语法为:
<SAP router 1><SAP router 2>.....<SAP router n><destination : message server>
其中:
<SAP router>
=/H/<sap router host name>/S/<sap router port>
<destination> = /M/<message server host name>/S/<message server port or service name>/G/<logon group>
注意
如果端口是默认端口 (3299),则可以省略 /S/<port>
。
下表包含一些路由器字符串的示例。
目标 | 示例 | 路由器字符串 |
---|---|---|
Message Server | 使用消息服务器端口的 SAP 路由器 | /H/saprouter-maq/S/3299/M/bwmpms.mycompany.com/S/3214 |
Message Server | 使用登录组的 SAP 路由器 | /H/saprouter-maq/S/3299/M/bwmpms.mycompany.com/S/3214/G/space |
注意事项
路由器字符串可以包括密码,前缀为
/P/
或/W/
。 Power Query 路由器字符串不支持使用密码,因为这可能会不安全。 使用密码将导致出现错误。路由器字符串还允许使用前缀为
/R/
的符号 SAP 系统名称。 Power Query 中不支持这种类型的字符串。在 Power Query 中,可以使用“路由器字符串”语法指定自定义端口,因此允许使用含单个工作站的路由器字符串。 接着,可以将路由器字符串标识为以
/H/
或/M/
开头。 任何其他输入都将被假定为服务器名称/IP 地址。为了允许使用其他工具中使用的相同路由器字符串,路由器字符串中的
/G/
选项受支持。 提供时,它应与“登录组”参数中指定的值匹配。如果指定了消息服务器端口,则会发送该端口。 在这些情况下,连接字符串中将省略
SystemId
,因为不再需要。 但是,即使不用于建立连接,仍必须提供SystemId
的值。