sap abap开发从入门到精通_SAP开发-ABAP数据字典(搜索帮助增强)
搜索帮助在SAP GUI中应用非常广泛,在上一篇<ABAP系列-数据字典(搜索帮助)>中,我们介绍了系统标准搜索帮助的创建和使用方法。实际工作中,我们还经常会遇到一些特别的搜索要求,需要在标准搜索帮助的基础上做增强开发。这一篇我们通过一个简单的例子来看看如何实现搜索帮助的增强。
先回顾下上一篇数据字典搜索帮助的内容。首先,创建一个系统标准搜索帮助ZEMPNO_ESH1。
创建完成后,赋值给相关对象,比如数据元素ZE_EMPNO。激活生效后,我们看到屏幕上实际的使用效果是这样的。
现在有个小需求,需要将姓氏和名字合成一个字段<姓名>,该如何实现?可以使用搜索字段的增强来完成。我们新建一个搜索帮助ZEMPNO_ESH2,在之前ZEMPNO_ESH1的基础上,稍作改造。
步骤1:调整输出参数,去掉FNAME, LNAME, 新增一个字段NAME1。
步骤2:指定搜索帮助增强,(增强又称作出口)。系统有一个样例Function <F4IF_SHLP_EXIT_EXAMPLE> 可供参考,可将样例拷贝至ZF4IF_SHLP_EXIT_EMPNO, 通过事务码SE37查看,会看到有个变量CALLCONTROL-STEP,这代表了搜索帮助处理过程中的各个事件,包括SELONE,PRESEL,SELECT,DISP等,每一个事件在程序中都有详细的备注说明。我们可以在DISP事件中添加一段代码:
IF callcontrol-step = 'DISP'.
* PERFORM AUTHORITY_CHECK TABLES RECORD_TAB SHLP_TAB
* CHANGING SHLP CALLCONTROL.DATA ls_record LIKE LINE OF record_tab.DATA lv_name TYPE string.LOOP AT record_tab INTO ls_record.lv_name = ls_record-string+9(10).CONDENSE lv_name.lv_name = | { ls_record-string+9(10) }{ ls_record-string+19(10) } |.CONDENSE lv_name.ls_record-string+74(10) = lv_name.MODIFY record_tab FROM ls_record.ENDLOOP.EXIT.ENDIF.
这段代码主要是用于合并姓氏和名字,合并后更新回结果列表 recode_tab, 如果初学的朋友们对这些代码感到陌生,没关系,可以先大概了解,后面熟悉语法后再回头来看。
创建完搜索帮助ZEMPNO_ESH2,将其赋给数据元素ZE_EMPNO。我们看看屏幕上实际使用的效果。
可以看到,姓氏和名字已经合并成姓名字段了。增强完成,是不是很简单呢,各位如果还有疑问,可以加入群讨论。
微信号:eckwise
sap abap开发从入门到精通_SAP开发-ABAP数据字典(搜索帮助增强)相关推荐
- sap abap开发从入门到精通_SAP开发-ABAP数据字典(锁)
企业级软件或开发框架,必然支持后台高并发,即支持多人同时访问数据库.SAP作为资深企业管理软件,自然也不例外,ABAP可以很方便的开发出支持高并发的程序,要实现高并发,正确使用锁对象是其中一个重要环节 ...
- 【Thunder送书 | 第四期】「SAP ABAP开发从入门到精通」
文章目录 前言 SAP系列丛书推荐 <SAP ABAP开发从入门到精通> 章节目录 送书福利 前言 Thunder送书第四期开始啦!这次活动联合机械工业出版社为大家继续带来福利,本期将赠送 ...
- 《Java 开发从入门到精通》—— 2.2 编写第一段Java程序
本节书摘来异步社区<Java 开发从入门到精通>一书中的第2章,第2.2节,作者: 扶松柏 , 陈小玉,更多章节内容可以访问云栖社区"异步社区"公众号查看. 2.2 编 ...
- 《Visual C++ 开发从入门到精通》——2.7 变量
本节书摘来自异步社区出版社<Visual C++ 开发从入门到精通>一书中的第2章,第2.7节,作者: 王东华 , 李樱,更多章节内容可以访问云栖社区"异步社区"公众号 ...
- 《ASP.NET 开发从入门到精通》----2.3 编译和部署ASP.NET程序
本节书摘来自异步社区<ASP.NET 开发从入门到精通>一书中的第2章,第2.3节,著 张明星 ,责任编辑 张 涛, 更多章节内容可以访问云栖社区"异步社区"公众号查看 ...
- 《51单片机应用开发从入门到精通》——2.2 跑马灯实例
本节书摘来自异步社区<51单片机应用开发从入门到精通>一书中的第2章,第2.2节,作者 张华杰,更多章节内容可以访问云栖社区"异步社区"公众号查看. 2.2 跑马灯实例 ...
- 《libGDX移动游戏开发从入门到精通》一第2章 libGDX的架构分析
本节书摘来异步社区<libGDX移动游戏开发从入门到精通>一书中的第2章,第2.1节,作者: 黄俊东 责编: 陈冀康,更多章节内容可以访问云栖社区"异步社区"公众号查看 ...
- 《C++ 开发从入门到精通》——第2章 C++的重要特质分析2.1 什么是面向对象(object-oriented)...
本节书摘来自异步社区出版社<C++ 开发从入门到精通>一书中的第2章,第2.1节,作者: 王石磊 , 韩海玲,更多章节内容可以访问云栖社区"异步社区"公众号查看. 第2 ...
- pythonweb开发-Python Web开发从入门到精通
Python Web开发从入门到精通循序渐进地讲解了Python Web开发的核心知识,并通过具体实例的实现过程演示了Web开发程序的流程.Python Web开发从入门到精通共15章,内容包括Pyt ...
- 《Visual C++ 开发从入门到精通》——1.4 技术解惑
本节书摘来自异步社区出版社<Visual C++ 开发从入门到精通>一书中的第1章,第1.4节,作者: 王东华 , 李樱,更多章节内容可以访问云栖社区"异步社区"公众号 ...
最新文章
- 三十五、字符串匹配问题--KMP算法
- 如何让UTF-8能对文档XML编辑
- Android 利用url获取Bitmap图片
- 关于Django中JsonResponse返回中文字典编码错误的解决方案
- 论文浅尝 | 知识图谱的单样本关系学习
- C#中使用SqlBulk百万级数据秒级插入
- linuc和python常用命令是一样的么_linuc和python常用命令是一样的么_python教程3--《linux常用命令》...
- 如何使用html如何安装,node.js – 如何使用全球安装的grunt-html?
- maven 阿里云仓库
- c语言+游戏破解,c语言获得键盘的按键
- VBA 函数 过程之间互相调用的技巧
- 计算机相关英语词汇ppt,计算机专业英语词汇新.ppt
- 一般描绘性形容词_描绘性形容词和限制性形容词
- window8系统激活工具
- Lagrange’s Mean Value Theorem - 拉格朗日中值定理
- 英语六级试卷软件测试,大学英语六级考试预测试卷以及答案
- LC振荡电路以及考虑寄生参数时MOS管开通关断分析
- BZOJ 2140 稳定婚姻题解
- 圆转随意运鸿蒙,解析陈式太极拳的螺旋缠丝劲——陈式太极拳
- SCYC55830 58063282A可控硅触发电路
热门文章
- 灰色系统预测matlab代码,灰色预测MATLAB代码
- PBRT 阅读 第一章
- 迅雷下载宝刷入padavan固件
- 两块stm32仿真protues串口通信程序
- oracle 11.2.0.3.0 client下载,oracle64位客户端 Instant Client
- protel 99se 简单的手动画pcb
- wav音频文件格式解析【个人笔记】(自用)
- spring boot 2.1.4 hibernate 二级缓存 Caffeine实现
- MySQL存储过程实例
- 制作WIN7、WINPE2003、Ubuntu、dos工具箱多启动U盘