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
随机推荐
- managed_shared_memory.construct造成的性能损失
boost中的IPC进程间通信非常好用,可以直接在共享内存上创建对象,相当于new分配器,实测发现它的分配算法还是有点耗时.第一个测试代码仅仅分配一次,然后频繁的复制,每秒钟可以复制4200次左右. ...
- Heavy Transportation(最短路 + dp)
Heavy Transportation Time Limit:3000MS Memory Limit:30000KB 64bit IO Format:%I64d & %I64 ...
- 【PRML读书笔记-Chapter1-Introduction】1.2 Probability Theory
一个例子: 两个盒子: 一个红色:2个苹果,6个橘子; 一个蓝色:3个苹果,1个橘子; 如下图: 现在假设随机选取1个盒子,从中.取一个水果,观察它是属于哪一种水果之后,我们把它从原来的盒子中替换掉. ...
- SNF开发平台WinForm之十-Excel导入-SNF快速开发平台3.3-Spring.Net.Framework
7.1运行效果: 2.Excel导入开发实现 2.1. 创建窗体,修改命名空间 新增的窗体命名“FrmImport表名”,这个导入窗口比较其它窗口会特殊一些,需要继承BaseFormImport父级窗 ...
- 在server 2008/2003中 取消对网站的安全检查/去除添加信任网站
新安装好Windows Server 2003操作系统后,打开浏览器来查询网上信息时,发现IE总是“不厌其烦”地提示我们,是否需要将当前访问的网站添加到自己信任的站点中去:要是不信任的话,就无 ...
- 微信公众号开发第二课 百度BAE搭建和数据库使用
上一节主要是一些准备知识,本课还是准备知识,开发微信也可以不使用数据库,但是要想搭建一些查询类应用,就可能使用到数据库操作,所以本节主要涉及到百度BAE上面的数据库表的创建,插入数据,修改数据,删除数 ...
- WPF小记——DockPanel使用不当引起界面显示问题
使用以下代码,当TextBlock文本过长,引起Button的显示位置在可见区域以外: <Window x:Class="WpfApplication11.MainWindow&quo ...
- Hadoop入门进阶课程3--Hadoop2.X64位环境搭建
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为 http://www.cnblogs.com/shishanyuan ...
- iOS-项目搭建
一.目的:一个小的项目当然不需要这么费劲的搞,到时一个大的项目要是不好好设计一下的话,写到后面就不知道怎么分类或者命名了,搞的项目很乱.为了更好的对本项目的查看,修改和后期的维护.一个好的项目的搭建不 ...
- Jquery几个比较实用,但又让很多人忽略的几个函数
工作中接触的人中,这些函数的使用频率比较少,我用的又比较好用的几个函数 来给大家分享一下. 你有你喜欢的,也可以分享一下 1.filter 使用了我要什么就有什么 这个函数不但可以很方便的筛选自定义H ...