1. 项目概述:为什么需要共享筛选视图?
在SAP Fiori的日常使用中,业务用户经常遇到这样的场景:某个特定筛选条件下的数据视图对团队协作至关重要。比如财务部门需要监控"本季度逾期超过30天的应收账款",采购团队关注"供应商评级低于B且交货延迟的订单"。传统做法是每次手动重复筛选,或通过邮件/IM分享筛选参数——这两种方式都效率低下且容易出错。
Fiori launchpad的"分享应用"功能正是为此而生。它允许用户将当前应用的特定筛选状态保存为书签Tile,生成可直接访问的短链接,或通过邮件分享给同事。这个功能的核心价值在于:
- 将个人工作成果转化为团队资产
- 确保关键业务视图的一致性
- 减少重复操作带来的时间浪费
- 降低新成员上手门槛
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 功能实现详解
2.1 基础分享功能配置
在Fiori应用的运行时环境中,分享功能依赖于以下技术组件:
- URL参数持久化:所有筛选条件会被序列化为URL参数,例如:
code复制?supplierRating=LT_B&delayDays=GT_7 - OData服务适配:后端服务需要支持
$filter参数的解析,这是通过CDS视图的注解实现的:xml复制<Annotation Term="Common.FilterDefaultValue" Path="DelayDays" String="GT_7"/>
典型分享操作流程:
- 在应用界面设置好筛选条件
- 点击右上角分享图标(需有
UI.Share权限) - 选择"创建链接"或"添加为Tile"
- 系统生成含哈希值的唯一URL,如:
code复制https://fiori.example.com/sap/fiori/app?hash=ABC123
注意:分享链接的有效性取决于后端查询的稳定性。如果底层CDS视图结构变更,旧链接可能失效。
2.2 书签Tile的高级配置
通过manifest.json文件可以控制Tile的显示属性:
json复制{
"sap.app": {
"crossNavigation": {
