解析内部导航与外部导航
学习目标
解释 SAP Fiori elements 应用中内部导航与外部导航的概念。
SAP Fiori Launchpad
SAP Fiori launchpad 环境是一个运行时外壳(shell),用于承载 SAP Fiori 应用,并为这些应用提供导航、个性化、嵌入式支持以及应用配置等服务。
根据 Fiori Web 设计指南,所有 SAP Fiori 应用都必须使用 SAP Fiori launchpad 主页。它是移动设备和桌面设备上访问 SAP Fiori 应用的主要入口点。
SAP Fiori launchpad 主页显示用于启动应用的磁贴和链接。它还可以显示附加信息。它基于角色,会根据用户的角色显示相应的磁贴。
有关 SAP Fiori launchpad 主页的更多信息,请参见 https://experience.sap.com/fiori-design-web/home-page/
本地沙盒环境
在 SAP Business Application Studio 或 Visual Studio Code 中开发应用时,您可能需要测试应用间的导航。由于其中没有 SAP Fiori launchpad,我们需要一个模拟 SAP Fiori launchpad 的本地沙盒环境。这样您就可以检查是否已完成必要步骤,使导航能从应用侧正常工作。
在本教程中,我们实现了一个模拟 SAP Fiori launchpad 的小型本地沙盒环境。它用于本单元练习中的应用间导航,不应用于生产环境。该环境使用 CAP 的内部服务器模块,允许通过自定义的 *server.js* 文件扩展标准 CAP 引导(bootstrapping)序列。在该文件中,我们加载构建沙盒 SAP Fiori launchpad 所需的更多 HTML 和 JSON 文件。此外,我们使用应用清单文件(*webapp/manifest.json*)中 */sap.app/crossNavigation/inbounds/…* 处的语义对象条目。
在应用生成过程中,有一个选项可用于维护语义对象和操作(即 Fiori Launchpad Configuration 步骤)。
随后,模板向导会将这些条目插入到 *manifest.json* 文件中。
要了解有关本地沙盒环境的更多信息,请参见:
生产环境
在生产环境中,管理员必须设置 SAP Fiori launchpad 并配置导航目标,如 配置导航 和 设置导航 中所述。
在本单元中,您将探索配置应用之间导航的各种不同选项。
应用内部的导航(内部导航)
在之前的练习中,您已经了解了内部导航,即在一个应用内部的导航。示例包括从列表报表导航到其对象页面,或从对象页面导航到子对象页面。您可以使用 Page Map 配置内部导航,并添加新页面或移除现有页面。您还可以添加自定义页面。更多信息,请参见 定义应用结构。
其他配置选项包括执行操作后的导航、应用实体之间的导航以及页面内导航。更多信息,请参见 配置内部导航。
应用之间的导航(外部导航)
除了应用内部的导航之外,您还可以构建连接不同应用的导航流。这称为外部导航。
外部导航有多种配置选项:
使用链接导航。这用于打开其他对象或列表。链接既可用于列表报表,也可用于对象页面(在表单或表格中)。
使用表格中的行项目导航。这用于显示项目的附加详细信息。这将用指向另一个应用的外部导航替换标准的内部导航。更多信息,请参见 将导航更改为对象页面。
使用按钮操作导航。
有关外部导航的更多信息,请查看 SAP Fiori Web 设计指南。
注意
要使用外部导航,您需要 SAP Fiori launchpad。
意图(Intent)
SAP Fiori launchpad 环境中的导航基于称为意图(intent)的抽象表示。它们在运行时被解析为特定的导航目标。
每个意图由一个语义对象和一个操作组成。它还可能具有语义对象参数。语义对象表示业务实体,例如产品、差旅或客户。操作是用户可以对语义对象执行的操作,例如显示或管理。这使您可以构建对同一业务实体执行不同操作的应用组,例如显示差旅或管理差旅。
同一个意图可以根据触发导航的用户的角色而以不同方式解析。
更多信息,请参见 配置导航。
管理员将应用配置为导航目标。更多信息,请参见 设置导航。