在运行时调整 SAP Fiori UI
学习目标
使用 SAP Fiori 运行时创作(runtime authoring)
运行时调整
观看视频,了解如何在运行时调整 SAP Fiori UI。
视频:本节含 SAP 官方视频(视频 ID
1_o9igwhrr),需在 learning.sap.com 在线观看。
关键用户可扩展性

自 SAP S/4HANA 2023 起,要以关键用户身份创建应用的调整,必须执行以下步骤。前提是原始应用和 RTA 插件已分配到关键用户的用户主记录,并且该关键用户具有创建调整的权限:
在 FLP 中,启动原始应用并进入调整模式。然后创建原始应用的应用变式,并保存应用变式 ID。
在 FLPAM 中,为应用变式定义应用描述符。您可以将原始应用的应用描述符复制到标准目录,并将 SAPUI5 组件 ID 替换为应用变式 ID。
注意
保留原始应用的目标(intent)会为所有已分配的用户用变式替换原始应用。如果您仍希望在 FLP 中访问原始应用,请将目标改为一个唯一值。
在 FLPCM 中,将应用变式的目标映射分配到角色。建议先在业务目录中引用该目标映射,再将业务目录分配到角色。
在 FLP 中,启动应用变式并进入调整模式。然后按您的需要调整应用变式并保存。
在 FLP 中,将调整激活为新版本。之后,您可以发布应用变式版本,并将其分配到一个传输请求。
应用变式的版本是随 SAP S/4HANA 2023 引入的。在此版本之前,关键用户直接调整原始应用,然后将其保存为应用变式。与上面的列表相比,顺序是 1.→4.→2.→3.。在没有版本的情况下,应用变式被直接分配到一个传输请求。

通过选择 More Actions→App Variants→Save As,可以创建应用变式。您可以为同一个应用保存多个变式,也可以为其他变式保存变式。每个变式都有一个应用变式 ID,可在 FLPAM(较早版本中为 FLPD)中使用该 ID 创建以该变式启动应用的目标映射。可以复制应用的原始目标映射并将 SAPUI5 组件 ID 替换为应用变式 ID,从而创建目标映射。

在将应用的调整保存到变式中之后,可以将它们激活为新版本。这会将此变式设置为系统中所有用户的活动版本,从而替换原始应用或任何先前处于活动状态的版本。您可以通过将某个较早版本激活为新版本,来切换到该版本。
在选中活动版本后,可以使用 Publish 按钮将其分配到一个传输请求。可以选择定制请求或工作台请求,以决定这些调整在后续系统中是按客户端可用还是跨客户端可用。
注意
有关本主题的更多信息,请参见:
Extensibility for SAP S/4HANA(课堂培训) https://training.sap.com/course/s4d425
Getting Started with In-App Extensibility in SAP S/4HANA(在线课程) https://learning.sap.com/courses/getting-started-with-in-app-extensibility-in-sap-s-4hana
Adapting the UI of List Report Apps with SAP Fiori for SAP S/4HANA(学习视频) https://learning.sap.com/videos/adapting-the-ui-of-list-report-apps-with-sap-fiori-for-sap-s-4hana
如何在 FLPD 中为应用变式定义目标映射
业务示例
您想要使用用于定制的 SAP Fiori launchpad 为应用变式定义目标映射。
前提条件
业务目录已在练习 Reference Tiles and Target Mappings 中创建,应用变式已在练习 Adapt SAP Fiori at Runtime 中创建。
如果您的系统中没有 SAP Fiori application manager (FLPAM),请观看视频,了解如何在 SAP Fiori launchpad designer (FLPD) 中创建业务目录并将应用变式分配到目标映射。
视频:本节含 SAP 官方视频(视频 ID
1_afdl0qqc),需在 learning.sap.com 在线观看。
在运行时调整 SAP Fiori
业务示例
您想要在运行时于 SAP Fiori launchpad 中调整一个 SAP Fiori 应用,并将更改保存为应用变式。
注意
本练习需要 SAP 学习系统。登录信息由您的系统设置指南提供。
注意
只要本练习中的值或对象名包含 ##,就将 ## 替换为您用户的编号。
前提条件
业务目录已在练习 Reference Tiles and Target Mappings 中创建。
任务 1:为用户激活运行时调整
Exercise:Start Exercise(SAP 官方交互式练习)
步骤
在 SAP S/4HANA(S4H)系统的 User Maintenance(
SU01)中,将角色SAP_UI_FLEX_KEY_USER添加到您的用户。在您 S4H 的 SAP Easy Access 菜单中,搜索 User Maintenance 或启动事务
SU01。在 User 字段中,输入您的用户。
选择 Change。
选择 Roles 标签页。
在 Role 列中,为某个空字段打开值帮助。
在 Single Role 字段中,输入
*ui_flex*并选择Enter。选择单一角色 *
SAP_UI_FLEX_KEY_USER并选择 Copy(复选标记)。选择 Save。
任务 2:通过运行时调整创建应用变式
Exercise:Start Exercise(SAP 官方交互式练习)
步骤
在您 S4H 的 SAP Fiori launchpad 中,使用您 S4H 的 SAP Fiori 搜索打开示例银行 Deutsche Bank 24 的对象页面。
在您选择的客户端中启动或重新加载您 S4H 的 SAP Fiori launchpad。
选择右上角的 Search。
在 Search 菜单中,选择 Banks。
在 Search 字段中,输入
24并选择Enter。选择 Deutsche Bank 24。
创建应用变式
Core Bank Data ##,并将应用变式 ID 复制到剪贴板。在银行的对象页面中,在右上角选择您的用户。
在 User Actions Menu 中,选择 Adapt UI。
选择 More Actions(三条线)。
选择 App Variants→Save As。
在 Save as New App Variant 弹窗中,在 Title 字段中输入
Core Bank Data ##。选择 Save。
在 Information 弹窗中,选择 Copy ID and Close。
提示
您可能想要将变式 ID 粘贴到一个文本文件中。
任务 3:在 SAP Fiori 启动板应用管理器中为应用变式定义应用描述符
Exercise:Start Exercise(SAP 官方交互式练习)
步骤
在您 S4H 的 SAP Fiori launchpad application manager 中,创建标题为
Z## - Financials Adaptation的空标准目录Z_##_TC_FIN_ADAPTED,作为本地对象。
注意
如果您看到的不是目录列表,而只是两个输入字段,请执行练习 Create Replicable Catalogs 的最后一个任务:
Allow Standard and Replicable Catalogs as Catalog Types in an ABAP System。
在 SAP Fiori launchpad application manager 中,选择 New Technical Catalog。
在 Technical Catalog ID 字段中,输入
Z_##_TC_FIN_ADAPTED。在 Technical Catalog Title 字段中,输入
Z## - Financials Adaptation。从 Technical Catalog Type 下拉列表中,选择
Standard Catalog。选择 Create empty technical catalog only。
选择 Local Object。
使用 SAP Fiori ID**
F1760** 将 Track Sales Orders 应用复制到您的 Z_##_TC_FIN_ADAPTED 目录。在 Search Term 字段中,输入
z_##并选择 Go。在 Technical Catalogs 表中,选择 Z_##_TC_FIN_ADAPTED。
选择 Copy from Other Technical Catalog。
在 Select Transport Request 弹窗中,选择 Local Object。
在 Copy from Other Technical Catalog 弹窗中,选择 Adapt Filters。
在 Adapt Filters 弹窗中,选择 SAP Fiori ID 并选择 OK。
在 SAP Fiori ID 字段中,输入
F1760并选择 Go。选择具有 Action**
displayFactSheet** 的 Semantic Object**Bank**,并选择 Copy。
结果
出现警告
Transaction code exists but has a different launchpad app descriptor item ID assigned in SE93
。这将在后续步骤中解决。
9. 关闭该警告消息。
3. 将剪贴板中的变式 ID 粘贴到 SAPUI5 Component ID 字段中。将动作改为 displayFactSheet##,并将 Target Application Title 改为 Show Bank ##。
在 SAPUI5 Component ID 字段中,粘贴剪贴板中的变式 ID。
在 Action 字段中,输入
displayFactSheet##。在 Target Application Title 字段中,输入
Show Bank ##。选择 Save。
结果
更改已保存,但会显示事务代码已存在的警告。这将在下一步中解决。
4. 为 Bank 应用创建事务代码 Z##_F1760,文本为 Show Bank ##。
选择左上角的 Edit。
在 Transaction Code 字段中,输入
Z##_F1760并选择Enter。对于 Transaction Code,选择 Click for creation。
在 Warning 弹窗中,选择 OK。
在 Create / Display Transaction 窗口中,在 Transaction Text 字段中输入
Show Bank ##。选择 Create Transaction。
关闭 Create / Display Transaction 窗口。
选择 Save。
任务 4:在业务目录中引用应用变式的目标映射
Exercise:Start Exercise(SAP 官方交互式练习)
步骤
在您 S4H 的 SAP Fiori launchpad content manager 中,在您的目录 Z_##_BC_EMPLOYEE 中为 Z_##_TC_FIN_ADAPTED 目录的 Show Bank ## 的目标映射创建引用。
重新启动或启动您 S4H 的 SAP Fiori launchpad content manager。
在 Search Catalogs 字段中,输入
z_##并选择 Go。在 Catalogs 表中,选择 Z_##_TC_FIN_ADAPTED 目录。
在 Content in Catalog Z_##_TC_FIN_ADAPTED 表中,选择 Show Bank ## 应用。
选择 Add Tiles/Target Mappings→Add Selected Tiles/TMs to Other Catalog。
在 Search Catalogs 字段中,输入
z_##并选择 Go。在 Catalogs 表中,选择 Z_##_BC_EMPLOYEE 目录。
选择 Add TM Reference。
重新加载您 S4H 的 SAP Fiori launchpad,并搜索银行 Deutsche Bank 24。在搜索结果中选择 Show Bank ##。
在您选择的客户端中重新加载您 S4H 的 SAP Fiori launchpad。
选择右上角的 Search。
在 Search 菜单中,选择 Banks。
在 Search 字段中,输入
24并选择Enter。选择 Show Bank ##。
任务 5:在 SAP Fiori 启动板中调整应用变式
Exercise:Start Exercise(SAP 官方交互式练习)
步骤
在银行对象页面的 UI Adaptation 模式中,将 Control Data 组标题改为
Core Data,将 Bank Country 和 City 字段添加到 Address 组,并移除 Bank Branch 和 Region 字段。在银行的对象页面中,在右上角选择您的用户。
在 User Actions Menu 中,选择 Adapt UI。
右键单击 Control Data 并选择 Rename。
将标题改为
Core Data并选择Enter。右键单击 Address 并选择 Add: Field。
在 Available Content: Fields 弹窗中,选择 Bank Country/Region 和 City 并选择 OK。
右键单击 Bank Branch 并选择 Remove。
右键单击 Region 并选择 Remove。
选择 Save Draft(软盘)。
使用 Navigation 和 Visualization 模式检查您的更改。
选择顶部的 Navigation。
结果
标题栏中的若干按钮消失了。 2. 选择 House Banks 标签页。 3. 选择 General Information 标签页。
结果
在 Navigation 模式中,您可以与应用交互。 4. 选择顶部的 Visualization。 5. 选择 Core Data 上方的蓝色标记。 6. 选择 Address 上方的蓝色标记。
结果
在
Visualization
模式中,您可以看到在何处进行了更改。
7. 选择顶部的 UI Adaptation。
3. 将您的更改激活为新版本 Core Bank V1。
选择 Activate New Version。
在 Activate New Version 弹窗中,在 Enter a version title 字段中输入
Core Bank V1。选择 Confirm。
选择 Exit。