从 SAP S/4HANA 消费外部服务
学习目标
从 SAP S/4HANA 消费外部服务
业务场景
在本课中,你将使用一个 API 来扩展你的应用程序,该 API 允许从你的 SAP S/4HANA 后端系统获取数据。这使应用程序能够直接使用来自后端系统的数据。
在本练习中,你将执行以下任务:
熟悉 SAP Business Application Studio 中的 Service Center。
将 Business Partner API 添加到应用程序。
将 Business Partner 实体添加到你的应用程序服务。
配置一个 SAP Business Accelerator Hub 目标(Destination)。
前提条件
你已成功完成练习 Define Services。
注意
请注意,此学习之旅链接到的某些服务可能会产生费用。
如果你担心产生费用,可以选择跳过相应的练习。
任务 1:熟悉 SAP Business Application Studio 中的 Service Center
步骤
熟悉 Service Center。
导航到 SAP Business Application Studio 的 Storyboard 选项卡。
找到 External Resources 磁贴,然后选择 + 图标以添加新的外部数据模型。
Service Center 会在新选项卡中打开。在窗口左侧,选择 Service。
选择
SAP Business Accelerator Hub作为 Provider,选择SAP S/4HANA Cloud Public Edition作为 Product,并选择SAP S/4HANA Cloud Public Edition作为 Package。
注意
如果你看到登录窗口,请输入你用于登录 SAP Business Accelerator Hub 的同一用户。
注意 如果 Service Center 侧边面板未打开,请选择 SAP Business Application Studio 左侧菜单中的 Service Center 图标。
将打开一个列表,显示可用的服务。
在搜索字段中输入
Business Partner (A2X),然后选择相应的服务。
检查你能否在此处获取所选 Business Partner API 的所有信息,例如:
服务实体和属性。
OData 协议版本。
来自 SAP 系统的服务实时数据(在我们的示例中来自 API Hub 沙盒)。
任务 2:将 Business Partner API 添加到应用程序
步骤
添加数据模型。
选择屏幕中间的 Add to Project 按钮。
这会将服务信息导入到你的云应用程序中。然后,你将导航回 Storyboard。选择与你之前创建的命名空间对应的条目,例如 RiskManagementService。在打开的菜单中选择 Add Service Entity。

在 service.cds 屏幕中,选择
BusinessPartnerA2X.A_BusinessPartner作为 Projection Type。确保未选择 Enable Draft editing。
在出现菜单的 Projection 选项卡上,取消选择所有属性(使用 all properties),然后选择以下属性:
BusinessPartner
Customer
Supplier
BusinessPartnerCategory
BusinessPartnerFullName
BusinessPartnerIsBlocked
保存你的更改。

任务 3:将 Business Partner 实体添加到你的应用程序服务
步骤
添加关系。 使用以下数据:FieldValueTypeAssociationMultiplicityto-oneNamesupplierTarget EntityBusinessPartnerA2X.A_BusinessPartner
返回 Storyboard 选项卡,找到 Data Models 磁贴。
在 Data Models 磁贴中选择 Risk Management 条目,然后选择 Open in Graphical Modeler。

在 Graphical Modeler 中找到 Risks 条目。选择表的标题。
选择右侧菜单中的 Add a relationship 图标。

将该连线拖放到屏幕上的 Risks 实体上,并在屏幕右侧的菜单中配置该关系。
输入上表中的数据,然后选择 Create。

任务 4:配置 SAP Business Accelerator Hub 目标(Destination)
步骤
在 SAP BTP Cockpit 中添加一个目标(Destination)。 在 SAP Business Application Studio 中使用 Business Partner API 的数据之前,你必须先为 SAP Business Accelerator Hub 配置一个目标(Destination)。 使用以下数据: | 字段 | 值 | | --- | --- | | Name | apihub_sandbox | | Type | HTTP | | Description | SAP Business Accelerator Hub - Sandbox end point | | URL | https://sandbox.api.sap.com | | Proxy Type | Internet | | Authentication | NoAuthentication |
返回到 SAP BTP Cockpit 中的子账户。(有关详细信息,请参阅:SAP BTP Cockpit)
导航到 Connectivity → Destinations。
选择 Create Destination。

输入上表中的值。
添加属性。 使用以下数据:FieldValueHTML5.DynamicDestinationtrueURL.headers.ApiKey(your personal key – see below)WebIDEEnabledtrueWebIDEUsageodata_gen
选择右侧的 New Property 按钮。
除 URL.headers.ApiKey 条目外,输入上表中的值。 对于属性 URL.headers.ApiKey,你必须输入你在 SAP Business Accelerator Hub 中的唯一 API 密钥。你将在接下来的子步骤中获取它。
在你的浏览器中,打开一个新选项卡。
在这个新选项卡中,登录 SAP Business Accelerator Hub。
在右上角你的名字下方,你会找到设置的链接。

在 API Settings 下,选择 Show API key 按钮。复制该密钥。

返回到另一个浏览器选项卡。
将 API.key 粘贴到相应字段中。
确保选中 Use default JDK truststore。

保存你的设置。
结果
你已将来自 SAP S/4HANA 系统的外部服务 API 集成到你的应用程序中。
注意 如果 Service Center 侧边面板未打开,请选择 SAP Business Application Studio 左侧菜单中的 Service Center 图标。
将打开一个列表,显示可用的服务。