检索帮助学习

本文详细介绍了SAP系统中创建和使用输入帮助的三种方式:通过ABAP数据字典、屏幕输入帮助和Dialog程序中的输入帮助。输入帮助增强了用户在输入字段中查询和选择值的效率,包括静态输入帮助、值限制和多列全文搜索等功能。此外,还提及了动态实现F4的帮助功能和搜索帮助出口的自定义。
摘要由CSDN通过智能技术生成

概要

输入帮助是在画面上为用户提供查询输入值的SAP标准功能。创建及查询输入字段的方法有三种

1、利用ABAP数据字典的输入帮助

在T-CODE:SE11中创建检索帮助后分配给表字段。另外,画面字段可以参照表字段生成,即可以继承输入帮助的功能。若表字段中不存在检索帮助,则Check Table的数据与域的固定值会连接到输入帮助里。另外,DATS与TIMS类型称做静态输入帮助,其分别使用的是以日历与实践结构定义的输入帮助。

2、利用画面的输入帮助

在屏幕制作器中,给个别字段直接分配输入帮助的值,或者在画面的PAI事件上限制可输入的值。下面的语句限制了empno字段中只允许输入“00001”,“00002”。

FIELD empno VALUES('00001','00002').

下面语句利用了表数据限制可输入的值

FIELD  <f>  SELECT * FROM <dbtab>

3、Dialog程序中的输入帮助

用户在画面字段中按键时,在POV事件中调用Dialog模块将输入帮助显示到画面上。定义程序的PARAMETERS变量时也使用MATCHCODE命令来追加检索帮助。一般用下列语句将检索帮助连接到PARAMETERS上。

PARAMTERS<param> MATCHCODE OBJECT <search help>

创建检索帮助

在这里插入图片描述

各个选项的定义

选择方法

检索帮助是在执行时刻从数据库中读取数据构成值列表。此时使用的数据库对象称为选择方法。其中,ABAP数据字典表与视图可作为选择方法来使用。但是,维护视图则不能。值列表中显示的是可能输入的值。当需要的数据在一个表中存在时,在选择方法中选择相应的表即可。但是需要的数据在多个表中存在时,表数据要使用以外部键连接的视图。

对话类型

类型内容描述
A根据值集合的对话如果命中清单包含的条目小于100个,那么立即显示该命中清单。如果其包含的条目多余100个,那么显示限制值用的对话框。
C具有值限制的对话带有值限制的对话:立即显示限制值的对话框。如果正常情况下可能条目的清单非常大,则选择该选项。限制即将处理的数据设置会增加命中清单的清楚性,并降低值选择过程中系统的负载。
D立即显示值在调用输入帮助后立即显示命中清单,通常如果命中清单只包含一些条目则建议使用该选项。

输入字段的建议搜索

提前键入搜索用于在输入字段下方的下拉字段中显示搜索结果及其值。搜索结果自动确定并显示。无需为此显式调用标准 F4 帮助。

多列全文搜索(数据库特定)

如果用户不确切知道要输入的值(例如复杂客户编号),但能通过数据记录的其他属性(例如客户名称或客户地点)确定,则允许该用户在多个列内执行全文搜索。如果其他属性存储在所选选择方法的其他列中,那么通过输入这些其他属性,建议搜索可以为输入字段提供各个值。

搜索帮助出口

一个搜索帮助出口是一个函数模块,用来使搜索帮助描述的输入帮助处理与可能的标准版本的处理比较起来更为灵活。

动态实现F4

1、在界面中增加POV事件

PROCESS ON VALUE-REQUEST
		FIELD 字段名 MODULE DEP_F4
MODULE DER_F4 INUT.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
  EXPORTING
    RETFIELD        = '内表中的字段'
    DYNPPROG        = SY-CPROG
    DYNPNR          = SY-DYNNR
    DYNPROFIELD     = '界面字段名'
    WINDOW_TITLE    = '窗口名称'
    VALUE_ORG       = 'S'
  TABLES
    VALUE_TAB       = '内表'
  EXCEPTIONS
    PARAMETER_ERROR = 1
    NO_VALUES_FOUND = 2
    OTHERS          = 3.
ENDMODULE.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值