ABAP 搜索帮助
当选择屏幕上的一个字段所参考的数据元素没有建立搜索帮助时,可以手工建立一个:
1、在se11创建一个搜索帮助ZAUTEST,需要输入:
(1)描述;
(2)选择方法:即搜索帮助显示字段所在的透明表;
(3)搜索帮助参数:即搜索帮助要显示的字段;
(4)IMP:输入字段,勾上即表示显示该字段;
(5)EXP:输出字段,勾上即表示该字段是搜索帮助需要的输入字段;
(6)Lpos:搜索帮助下半部分字段排序;Spos:搜索帮助上半部分字段排序。
如下图:
在Dialog屏幕中给输入字段建立搜索帮助,有以下三种情况:
一:直接使用系统已有的搜索帮助,对于系统已存在搜索帮助的输入字段可直接使用:在屏幕格式器里双击输入字段框,在其“属性”栏的“搜索帮助”框内填入该字段的搜索帮助名称。如物料“matnr”的搜索帮助名称为“MAT1”。注意:MAT1一定要大写,对于所有在屏幕输入的字符,不管以任何形式输入都要大写,否则系统是不认识的,就如在代码里引号内的字符串要大写才正确一样。
二:自建搜索帮助,其过程如下:
1、在dialog屏幕的逻辑流里在user_command后定义module,如下:
process before output.
…
process after input.
module user_command_0100.
process on value-request. “输入字段的响应
field t_pline module f4_help_for_pline. ““t_plnnr”是输入字段的“name”,“f4_help_for_pline”是module名,自己随便起吧
2、双击“f4_help_for_pline”创建该module,这时进入程序代码编辑,module如下:
module f4_help_for_pline input.
call function ‘F4IF_INT_TABLE_VALUE_REQUEST’ “调用函数
exporting
retfield = ‘PLINE’ “搜索帮助内表要输出的的帮助字段名,注:要大写
dynpprog = sy-repid
dynpnr = sy-dynnr
* dynprofield = ”
value_org = ‘S’
tables
value_tab = ithp_pline. “存储搜索帮助内容的内表
endmodule. ” f4_help_for_pline INPUT
注:“retfield”的内表输出字段的名字要和输入字段保持一致,并最好和透明表的字段名一致,否则弹出的搜索帮助会显示不了字段名。
3、在屏幕输出前或在上一屏幕进入本屏幕的动作发生后,取得搜索帮助的内容,如下:
clear ithp_pline[].
select pline pltxt
into corresponding fields of table ithp_pline
from afpo
where dwerk = t_werks
and matnr = t_matnr.
内表ithp_pline有两个字段pline、pltxt即是搜索帮助将显示的两个列,其中ithp_pline是输入字段。
三:联动搜索帮助的建立:有两个输入字段要建立搜索帮助,并且这两个字段是相互关联的,选择一个字段的输入值同时也选择了另一个字段的值,比如顺序与工序的关系必需是相互的。
1、定义
data:field_tab_vgn type dfies occurs 0,
dynpfld_mapping_vgn type dselc occurs 0,
wa_map_vgn type dselc,
field_tab_pln type dfies occurs 0,
dynpfld_mapping_pln type dselc occurs 0,
wa_map_pln type dselc.
2、在dialog屏幕的逻辑流里在user_command后定义module,如下:
process before output.
…
process after input.
module user_command_0100.
process on value-request.
field:it_bg-plnfl module f4_help_for_vornr, “顺序、工序的联动搜索
it_bg-vornr module f4_help_for_vornr.
3、双击“f4_help_for_vornr”创建该module,这时进入程序代码编辑,module如下:
module f4_help_for_vornr input.
call function ‘F4IF_INT_TABLE_VALUE_REQUEST’
exporting
retfield = ‘PLNFL’ “搜索帮助要输出的的帮助字段名
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = ‘T_PLNFL’ ““T_PLNFL”为输入字段,在此用T_VORNR也可以但上面的retfield名也要改
value_org = ‘S’
tables
field_tab = field_tab_vgn “联动关系表
dynpfld_mapping = dynpfld_mapping_vgn “存储联动内容的内表
value_tab = ithp_vgn. “存储搜索帮助的内表
endmodule. ” f4_help_for_vornr INPUT
4、在屏幕输出前或在上一屏幕进入本屏幕的动作发生后,取得搜索帮助的内容,如下:
clear ithp_vgn[].
select plnfl vornr ltxa1
into corresponding fields of table ithp_vgn
from afko
inner join afvc on afvc~aufpl = afko~aufpl
where afko~aufnr = t_aufnr.
“调用联动函数
call function ‘ZSET_F4_FIELD_FROM_VALUE_TAB’
tables
value_tab = ithp_vgn “存储搜索帮助的内表
field_tab = field_tab_vgn. “联动关系表
clear dynpfld_mapping_vgn[].
wa_map_vgn-fldname = ‘PLNFL’. “帮助内表字段
wa_map_vgn-dyfldname = ‘T_PLNFL’. “输入字段
append wa_map_vgn to dynpfld_mapping_vgn.
wa_map_vgn-fldname = ‘VORNR’.
wa_map_vgn-dyfldname = ‘T_VORNR’.
append wa_map_vgn to dynpfld_mapping_vgn.
ABAP 搜索帮助的更多相关文章
- ABAP search help (搜索帮助) 几种种方法
ABAP search help (搜索帮助) 几种种方法 域范围 ABAP 的搜索帮助有很多种方法,掌握下面的几种基本差不多了 *&------------------------- ...
- ABAP 中的搜索帮助
ABAP 中的搜索帮助 https://blog.csdn.net/u011576750/article/details/50999078 一.简介:在abap中,用到的搜索帮助个人遇到的情况如下,进 ...
- ABAP 省市县级联搜索帮助
在展示ABAP代码之前,先建立自建表ZCHENH006,表中包含两个关键字段 BELNR(地区编码),SDESC(地区描述). 编码规则参考:身份证前六位地区编码规则,可参考我另外一篇Blog导入系统 ...
- 如何使用ABAP Restful API进行代码的全文搜索
使用这个代码全文搜索的前提条件,是在事务码SFW5里激活业务功能:SRIS_SOURCE_SEARCH 只需要把这个url贴到浏览器里: https://:44355/sap/bc/adt/repos ...
- abap seach help 搜索帮助
ABAP 的搜索帮助有很多种方法,掌握下面的几种基本差不多了 *&--------------------------------------------------------------- ...
- 【ABAP系列】SAP F4搜索帮助的高级版
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP F4搜索帮助的高级版 ...
- [SAP ABAP开发技术总结]搜索帮助Search Help (F4)
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- ABAP DEMO 年月的搜索帮助
效果图: *&---------------------------------------------------------------------* *& Report YCX_ ...
- 搜索ABAP程序代码中的字符串
标准程序名:RPR_ABAP_SOURCE_SCAN /BEV1/NERM07DOCS
随机推荐
- 基于Maven构建整合SpringMVC+Mybtis+Druid
前几天趁空闲时间整合了下SpringMVC+Mybatis+Druid,这里小记录下,这个Demo是基于Maven构建的,数据源用的是阿里巴巴温少的开源项目Druid,数据库用的是Mysql. 由于E ...
- Qt lcdNumber 不能显示完整时间
利用lcdNumber编了一个电子时钟,发现只显示“分”和“秒”,“时”没有显示出来.作为小白一名,谷歌了一下别人的程序才知道,原因是没有设置lcdNumber可以显示的位数,默认应该是显示4位的,所 ...
- ArcGIS应用——四种计算图斑面积的方法
ArcGIS中有多种方法可计算出图斑面积,本文总结了四种方法,是否可堪称史上最全? 1.计算几何 本人认为这是最适合非专业人士的方法,直接利用ArcGIS中的计算几何功能进行计算. a.首先添加一do ...
- C# DES加密解密用法
主要用到C#提供的以下三个类:MemoryStream 内存流DESCryptoServiceProvider 加密服务提供者类CryptoStream 讲数据流连接到加密转换的流 下面是简易代码,已 ...
- cJSON_json包的C语言解析库
cJSON库描述 CJSON是一个用于解析JSON包的C语言库,库文件为cJSON.c和cJSON.h, 所有的实现都在这两个文件中.原作者的地址cJSON. JSON包的解析 例如有一个JSON的数 ...
- [转载]SharePoint 2013 解决方案中使用JavaScript
作为在SharePoint应用程序中使用JavaScript的第一步,就是要知道如何将一个写好的.js文件,引用到页面上.嗯,你可能觉得这个话题太简单了,"引用一个.js文件不就是在页面上方 ...
- [linux]记录如何设置一个新的vps
背景 我正在做一个小项目,做好了打算上线,所有需要买个服务器,看了一圈,发现还是卖个vps合算.买了之后,进行了一些列的设置,这里记录一下,以便后面查看. 系统: ubuntu 内存:1G 一.更改时 ...
- 【转】MSSQLServer数据库事务锁机制分析
锁是网络数据库中的一个非常重要的概念,它主要用于多用户环境下保证数据库完整性和一致性.各种大型数据库所采用的锁的基本理论是一致的,但在具体实现上各有差别.目前,大多数数据库管理系统都或多或少具有自我调 ...
- 解决tomcat was unable to start within问题
这个问题可能大家都熟悉,以前碰到这个问题,重新启动一次eclipse就好了,随着我的一个项目的增大,我发现这种情况越来越多,到底是怎么回事? 出现这个情况的原因有两个,要么是你的数据库连接connec ...
- struts.xml中出现Package struts2 extends undefined package struts-default解决办法
在struts.xml中出现extends undefined package struts-default,经过查阅资料原来是因为没有联网的缘故.这样解决:在myeclipse中关联本地的dtd文件 ...