集合搜索帮助与扩展 (★★★)

集合搜索帮助与扩展 (★★★)

#abap #abap-dictionary #abap-search-help

概览表

Type (类型) Description (描述)
Elementary Search Help 单一搜索路径
Collective Search Help 多个搜索路径的集合(显示为 Tab 页)
Append Search Help 无修改扩展标准搜索帮助

集合搜索帮助 (Collective Search Help)

实际场景中,用户可能需要多种方式搜索同一个字段:

1
2
3
4
5
6
字段: 雇员编号
→ 按姓名搜索 (Elementary Help 1)
→ 按部门搜索 (Elementary Help 2)
→ 按工号搜索 (Elementary Help 3)

集合搜索帮助将这三个组合,显示为 Tab 页

结构

1
2
3
4
5
6
7
8
Collective Search Help (集合搜索帮助)
├── Interface (IMPORT/EXPORT 参数)
├── Included Help 1 (Elementary) ← Tab 1: 按姓名
│ └── 参数映射到集合帮助的参数
├── Included Help 2 (Elementary) ← Tab 2: 按部门
│ └── 参数映射到集合帮助的参数
└── Included Help 3 (Elementary) ← Tab 3: 按工号
└── 参数映射到集合帮助的参数

关键特性

Feature (特性) Detail (详情)
接口 有自己的 IMPORT/EXPORT 参数
内部行为 不需要定义(由包含的基本帮助提供)
可重用 一个基本帮助可属于多个集合帮助
嵌套 集合帮助可包含另一个集合帮助
记忆 最近使用的 Tab 页自动激活

参数映射

1
2
3
Collective Help 的参数 ──映射──→ Elementary Help 的参数

必须为每个包含的基本帮助定义参数映射关系

Append 搜索帮助

在不修改 SAP 标准集合搜索帮助的情况下扩展:

1
2
3
4
5
6
7
SAP Standard Collective Search Help
├── SAP Elementary Help 1
├── SAP Elementary Help 2

├── Append Search Help (客户命名空间)
│ ├── Customer Elementary Help A ← 新增搜索路径
│ └── SAP Elementary Help 2 (hidden) ← 隐藏不需要的

Append 搜索帮助特性

Property (特性) Detail (详情)
命名空间 客户命名空间
接口 复用被扩展对象的接口
用途 添加搜索路径 或 隐藏不需要的路径
升级安全 不影响 SAP 升级

隐藏搜索路径

1
2
3
4
在 Append 搜索帮助中:
1. Include 不需要的 SAP 搜索帮助
2. 设置 Hidden 标志
→ 该搜索路径不再显示
💡最佳实践
客户增强应创建自己的 Append 搜索帮助,而不是修改 SAP 标准。

搜索帮助的其他选项

Option (选项) Description (描述)
Default Value 预设参数值(字面量/系统字段/GET 参数)
Hot Key 单字母快捷键(=<key>.<sel> 格式调用)
Hidden 隐藏个别搜索路径
Display Only 在限制值对话框中只读

Hot Key 使用

1
2
3
4
输入字段中输入: =A.SMITH.
→ A = Hot Key (激活对应的基本搜索帮助)
→ SMITH = 传递给限制值对话框的值(自动加 * 后缀)
→ 直接显示命中列表

考试/测试模式

Scenario/Keyword (场景/关键词) Answer (答案)
“集合搜索帮助显示为什么?” 多个 Tab 页(每个基本帮助一个)
“Append 搜索帮助的接口?” 复用被扩展对象的接口
“如何隐藏不需要的搜索路径?” 在 Append 帮助中 Include 并设 Hidden 标志
“最近使用的 Tab 会记住吗?” ,自动激活上次使用的 Tab