公众号: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. 3-2 模板语法(vue中的内容写法)

    插值表达式.v-text.v-html的用法

  2. Spark SQL 性能优化再进一步:CBO 基于代价的优化

    摘要: 本文将介绍 CBO,它充分考虑了数据本身的特点(如大小.分布)以及操作算子的特点(中间结果集的分布及大小)及代价,从而更好的选择执行代价最小的物理执行计划,即 SparkPlan. Spark ...

  3. underscore.js源码解析【函数】

    // Function (ahem) Functions // ------------------ // Determines whether to execute a function as a ...

  4. Android中内容提供者ContentProvider的详解

    1.什么是ContentProvider 首先,ContentProvider(内容提供者)是android中的四大组件之一,但是在一般的开发中,可能使用的比较少. ContentProvider为不 ...

  5. OkHttp3 简述

  6. IE不支持 Promise 解决办法

    引入 <script src = "https://cdn.polyfill.io/v2/polyfill.min.js"></script> 或 < ...

  7. [git与github]__git与github简单了解

    前言 关于版本控制,版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 我们通过版本控制系统可以解决的问题:可以非常方便的查看我们的源码文件的历代更新版本.或将我们的项目源 ...

  8. 搭建jenkins集群

    搭建jenkins集群是为了解决单点服务器存在的性能瓶颈,也有业务的需要,比如:java服务打包的环境我们需要linux,ios打包的服务器需要mac机. 一.创建agent节点 1.打开 系统管理- ...

  9. DenseNet 论文阅读笔记

    Densely Connected Convolutional Networks 原文链接 摘要 研究表明,如果卷积网络在接近输入和接近输出地层之间包含较短地连接,那么,该网络可以显著地加深,变得更精 ...

  10. c++中运算符重载

    c++语言中运算符重载都是通过函数来实现的,所以其实质为函数重载,当c++语言原有的一个运算符被重载之后,它原来所具有的语义并没有消失,只相当于针对一个特定的类定义了一个新的运算符. <1> ...