公众号:SAP Technical
本文作者:matinal

前言部分

在ABAP项目里面,F4搜索帮助是最常用的功能,我们可能会为屏幕字段开发搜索帮助,以帮助用户输入正确的数据。我的这篇文章不是关于如何创建搜索帮助的教程,我是来介绍ABAP 7.5x中提供的一些新功能。

搜索帮助概念

首先,让我们快速回顾一下搜索帮助是什么。

搜索帮助(ABAP字典的存储库对象)用于以列表的形式显示字段的所有可能值。此列表也称为命中列表。我们可以从此命中列表中选择要在字段中输入的值,而不是手动输入值,这很容易出错。

搜索帮助类型

有几种类型的搜索帮助:

基本搜索有助于:此类型实现用于确定可能条目的搜索路径。

集体搜索有助于:此类型包含几个基本搜索帮助。因此,集体搜索帮助为可能的条目提供了几种备选搜索路径。

追加搜索帮助:此类型可用于增强SAP通过客户特定搜索路径提供的集体搜索帮助,而无需进行修改。

基本搜索帮助的示例如下所示。我们将看到搜索帮助图标该字段旁边的图标。输入模式并点击此图标或F4,将显示命中列表供我们选择。

点击搜索帮助后,显示如下结果:

搜索引擎效果

我们来看一下搜索引擎是怎么来帮助我们模糊查找的,如下图所示:

在我输入sapm后,会出现上述的结果。

高级搜索帮助

如果在我们的ABAP 7.5x搜索中使用这种预查找功能或类似搜索引擎查找的功能会有什么帮助呢?

我来告诉你,这是可以的,今天我就来讲一下。我们需要使用SAP NetWeaver 7.4 SP06以上版本才可以使用此功能,SAP建议使用Patch Level 6或更高版本。当然你也可以在ABAP 7.4 SP05上使用它,但是版本不能再低了,再低就没有设个功能了,这时我们需要在DYNPRO中添加一个PBO部分来调用类CL_DSH_DYNPRO_PROPERTIES => enable_type_ahead。

对于今天写的这篇文章,我在S/4 HANA 1809系统和GUI上使用的,所以我这个系统比较新,功能都可以使用。

首先,让我们看一下调用搜索帮助的代码。如我们所见,此程序是一个简单的单行PARAMETER语句,它调用MATCHCODE OBJECT zsh。

接下来,让我们双击搜索帮助zsh以进入事务Se11并进行更改。请注意一个名为ENHANCED OPTIONS的新内容。在本文中,我们将看到proposal Search for Input Fields的复选框。这将允许提前输入 - 也称为搜索类型 - 功能。通过选中此框,可以在搜索字段下方的下方框中显示标准F4帮助中可能的搜索结果,从而实现更快,类似搜索引擎的用户交互。

验证结果

OK,现在让我们更改激活并再次执行程序。结果和我预想的一样,如果我开始输入一个数字,如4,这里就会立即开始看到一个下拉的测试结果。

除了搜索帮助的新增强部分中的type-ahead选项之外,还有 Fuzzy Search选项。这里的意思是允许容错,跨列全文搜索。此选项当前不适用于所有数据库 - 因为SAP的内容嘛,当然只在SAP HANA上有效。可以为全文搜索的容错指定精度值。

【第七篇】SAP ABAP7.5x新语法之F4增强的更多相关文章

  1. 【第八篇】SAP ABAP7.5x新语法之F4增强【续】

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之F4增强[续]   ...

  2. 【第六篇】SAP ABAP7.5x新语法之SQL注入

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之SQL注入   前 ...

  3. 【第五篇】SAP ABAP7.5x新语法之命名规约

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之命名规约   命名 ...

  4. 【第四篇】SAP ABAP7.5x新语法之CREATE DATA&INTERFACE

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文地址:SAP ABAP7.5x系列之CREATE DA ...

  5. 【第三篇】SAP ABAP7.5x新语法之程序结构&SubScreen

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文地址:SAP ABAP7.5x系列之程序结构& ...

  6. 【第一篇】SAP ABAP7.5x新语法之预定义数据结构

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之预定义数据结构 前 ...

  7. 【第二篇】SAP ABAP7.5x新语法之OPEN SQL

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之OPEN SQL ...

  8. 【ABAP系列】SAP ABAP7.40新语法简介第一篇

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP7.40新语法简 ...

  9. 【ABAP系列】SAP ABAP7.40新语法简介第二篇

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP7.40新语法简 ...

随机推荐

  1. 【xsy1596】旅行 期望+状压DP

    题目大意:有$m$个人要从城市$1$开始,依次游览城市$1$到$n$. 每一天,每一个游客有$p_i$的概率去下一个城市,和$1-p_i$的概率结束游览. 当游客到达城市$j$,他会得到$(1+\fr ...

  2. 全网最详细的Eclipse里如何正确新建普通的Java web项目并发布到Tomcat上运行成功【博主强烈推荐】(图文详解)

    不多说,直接上干货! 首先,大家要明确,IDEA.Eclipse和MyEclipse等编辑器之间的新建和运行手法是不一样的. 如果是在Myeclipse里,则是File -> new -> ...

  3. DP的学习

    DP在ACM的算法里面可算是重中之重,题目类型千变万化,题目难度差异也很大.是一种很讲究技巧的算法,而且代码实现相对容易,1y率非常高(除有些bt数据外).总之DP就是一向非常重要,又非常博大精深的算 ...

  4. java实现把对象数组通过excel方式导出的功能

    一.导入相关jar包,pom依赖如下: <dependency> <groupId>org.apache.poi</groupId> <artifactId& ...

  5. PHP报错类型

    p: 语法错误 定界符; F: 致命错误 函数;方法重名;包含(require) W: 警告 包含(include); N: 通知 变量未声明,函数

  6. Bootstrap-table 使用总结

    一.什么是Bootstrap-table? 在业务系统开发中,对表格记录的查询.分页.排序等处理是非常常见的,在Web开发中,可以采用很多功能强大的插件来满足要求,且能极大的提高开发效率,本随笔介绍这 ...

  7. [转]使用docker-compose 大杀器来部署服务 上

    本文转自:https://www.cnblogs.com/neptunemoon/p/6512121.html 使用docker-compose 大杀器来部署服务 上 我们都听过或者用过 docker ...

  8. Ado.net怎么执行存储过程?

    与ADO.Net执行SQL语句的地方只有两点不同1.使用存储过程名代替sql语句2. 使用查询对象SqlCommand,需配置一个CommandType属性 存储过程的执行语法-> exec 存 ...

  9. Python 线程同步锁, 信号量

    同步锁 import time, threading def addNum(): global num num -= 1 num = 100 thread_list = [] for i in ran ...

  10. JS 数组位置方法 indexOf()和lastIndexOf()的理解

    var numbers = [1,3,5,7,9,4,3,2,1]; console.log(numbers.indexOf(5)); //从数组的0位开始查找 5 位于数组里面的位置 输出2 首先 ...