概要
输入帮助是在画面上为用户提供查询输入值的SAP标准功能。创建及查询输入字段的方法有三种
1、利用ABAP数据字典的输入帮助
在T-CODE:SE11中创建检索帮助后分配给表字段。另外,画面字段可以参照表字段生成,即可以继承输入帮助的功能。若表字段中不存在检索帮助,则Check Table的数据与域的固定值会连接到输入帮助里。另外,DATS与TIMS类型称做静态输入帮助,其分别使用的是以日历与实践结构定义的输入帮助。
2、利用画面的输入帮助
在屏幕制作器中,给个别字段直接分配输入帮助的值,或者在画面的PAI事件上限制可输入的值。下面的语句限制了empno字段中只允许输入“00001”,“00002”。
代码语言:javascript复制FIELD empno VALUES('00001','00002').
下面语句利用了表数据限制可输入的值
代码语言:javascript复制FIELD <f> SELECT * FROM <dbtab>
3、Dialog程序中的输入帮助
用户在画面字段中按键时,在POV事件中调用Dialog模块将输入帮助显示到画面上。定义程序的PARAMETERS变量时也使用MATCHCODE命令来追加检索帮助。一般用下列语句将检索帮助连接到PARAMETERS上。
代码语言:javascript复制PARAMTERS<param> MATCHCODE OBJECT <search help>
创建检索帮助
各个选项的定义
选择方法
检索帮助是在执行时刻从数据库中读取数据构成值列表。此时使用的数据库对象称为选择方法。其中,ABAP数据字典表与视图可作为选择方法来使用。但是,维护视图则不能。值列表中显示的是可能输入的值。当需要的数据在一个表中存在时,在选择方法中选择相应的表即可。但是需要的数据在多个表中存在时,表数据要使用以外部键连接的视图。
对话类型
类型 | 内容 | 描述 |
---|---|---|
A | 根据值集合的对话 | 如果命中清单包含的条目小于100个,那么立即显示该命中清单。如果其包含的条目多余100个,那么显示限制值用的对话框。 |
C | 具有值限制的对话 | 带有值限制的对话:立即显示限制值的对话框。如果正常情况下可能条目的清单非常大,则选择该选项。限制即将处理的数据设置会增加命中清单的清楚性,并降低值选择过程中系统的负载。 |
D | 立即显示值 | 在调用输入帮助后立即显示命中清单,通常如果命中清单只包含一些条目则建议使用该选项。 |
输入字段的建议搜索
提前键入搜索用于在输入字段下方的下拉字段中显示搜索结果及其值。搜索结果自动确定并显示。无需为此显式调用标准 F4 帮助。
多列全文搜索(数据库特定)
如果用户不确切知道要输入的值(例如复杂客户编号),但能通过数据记录的其他属性(例如客户名称或客户地点)确定,则允许该用户在多个列内执行全文搜索。如果其他属性存储在所选选择方法的其他列中,那么通过输入这些其他属性,建议搜索可以为输入字段提供各个值。
搜索帮助出口
一个搜索帮助出口是一个函数模块,用来使搜索帮助描述的输入帮助处理与可能的标准版本的处理比较起来更为灵活。