紧接上一节介绍的SAP预定义的出口函数F4IF_SHLP_EXIT_EXAMPLE创建搜索帮助,

该函数主要有两个部分:

Changing接口的参数属性如下:

SHLP:搜索帮助的基础描述,包括搜索帮助的名称、类型以及内部信息等。

以下:1)INTERFACE:会列出该搜索帮助中包含哪些字段及当前使用的是哪个字段。

2)FIELDDESCR:会列出包含字段的具体属性,如字段名称、类型、长度等

3)FIELDPROP:搜索帮助所定义字段的参数设置,如:EXP/IMP/SPos等

4)SELOPT:当搜索帮助中有输入值时会在该表中显示

CALLCONTORL:包含当前帮助的结构信息,搜索帮助的时间点都由该结构中的字段CALLCONTORL-STEP来控制。在输入帮助处理期间,定义了许多时间点,每一个定义了一个重要的输入帮助处理操作的起始时间。所包含控制时间点具体参数如下:

1)SELONE:可在集合搜索帮助中使用在时间点。一个集合搜索往往包含多个基本搜索,改时间点发生在选择一个基本搜索帮助之前,此时的搜索帮助信息已经被存放在内表SHLP_TAB中,通过对内标SHLP_TAB数据的控制来限制该集合搜索中是否能使用其他的基本搜索帮助。

2)PRESEL1:选择一个基本搜索帮助后,在该时间上、该搜索帮助(类型SHLP_DESR_T)的定义内就不再将表INTERFACE复制到表SELOPT中了,这意味着在这里仍然可以影响搜索帮助到屏幕的附件(表INTERFACE包含关于如何将屏幕字段和搜索帮助变量关联上的信息)

3)PRESEL:该时间点可以用于实现搜索帮助输入条件中某些字段预定义的控制

4)SELECT:选值之前,如果不想使用默认选择,那么就应该用搜索帮助推出该时间点,将DISP设置成下一个时间点

5)DISP:该时间点用于控制搜索帮助的输出结果。例如,在输出搜索结果时对用户检查权限,删除搜索结果中未能授权的数据

6)RETURN:(一般作为下一个时间点的返回值)如果在一个搜索帮助退出中选择一个单独命中,那么就将RETURN时间点作为下一步返回。如果对事物处理序列的控制取决于以选中的值(典型例子:设置SET/GET参量),那么在该时间点上改变F4的流程就是有意义的。然后,应该注意到,该处理将取决于一个值是手工输入的还是用输入帮助的。

7)RETTOP:只有当输入帮助由集合搜索帮助控制时,才转到该时间点。它直接跟着时间点RETURN。然而,集合搜索帮助的搜索帮助推出是在时间点RETTOP上调用的。

8)EXIT(仅为了下一个时间点返回)

如果用户有机会在一个搜索帮助退出中终止对话,那么EXIT时间点应作为下一步返回

9)CREATE:仅当用户选择函数”创建新值“时候,才访问create时间点,且当赋予控制参数CALLCONTORL所对应的结构体的字段CUSTTAB为非空值时,该时间点才是有效的。正常情况下,在那里输入将要维护的表(定制)的名字,CREATE之后,返回的下一步应该是SELECT,这样才能选择新输入的值,并且随后显示。

10)APP1,APP2,APP3:如果带有函数模块F4UT_LIST_EXIT的命中列表包含了更深一层的按钮,那么也会介入这些时间点。当用户单击相应的按钮时候就能访问这些时间点。

注意:如果F4帮助是一个集合搜索帮助,那么就在时间点SELONE和RETTOP上调用集合搜索帮助的出口。(RETTOP仅当用户选择一个值)。在所有的其他时间点上,调用以选择的元素搜索帮助的出口。

如果F4帮助是一个基本搜索帮助,不执行RETTOP时间点,在时间点SELONE(当时)调用元素搜索帮助的出口,其他准备工作都在时间点PRESEL1上执行。

TABLES接口中的参数如下:

SHLP_TAB:替代基本搜索帮助的清单,与Changing接口中的SHLP_DESCR参数基本类似。

RECORD_TAB:列出搜索帮助的结果数据,结果会回执在操作搜索帮助的字段上。

参照F4IF_SHLP_EXIT_EXAMPLE的接口创建自定义函数。RFC中首先需要创建一个内表用于存储抓取的自定义数据,所定义的内标必须包含搜索帮助参数中EXP所定义的字段,最后通过函数F4UT_RESULTS_MAP回执查询结果,最后调用DISP时间点将查询的参数显示在列表中。

上节例中:仅需要调用SELECT这个时间点来进行数学的查询输出。具体代码见上小节

介绍SAP预留函数创建搜索帮助的更多相关文章

  1. SAP CRM 在Web UI中创建搜索帮助

    多数情况下,在Web UI为一个特定的字段提供搜索帮助需要在事务SE11中创建搜索帮助. (注:也可以通过在SE24中创建一个类并实现实现IF_BSP_WD_CUSTOM_F4_CALLBACK接口来 ...

  2. C# 使用 SAP NCO3.0 调用SAP RFC函数接口

    最近使用C#调用SAP RFC函数,SAP提供了NCO3.0组件. 下载组件安装,之后引用“sapnco.dll”和“sapnco_utils.dll”两个文件. 在程序中 using SAP.Mid ...

  3. SharePoint 2013 创建搜索中心及搜索设置

    本文没有太多深奥的东西,只是简单的搜索配置,如果你已经掌握请略过本文. 好了,进入内容简介,众所周知,搜索是SharePoint一大特性,下面,我们简单介绍下搜索中心的创建. 1.创建Search子网 ...

  4. flask实战-个人博客-使用工厂函数创建程序实例 --

    使用工厂函数创建程序实例 使用蓝本还有一个重要的好处,那就是允许使用工厂函数来创建程序实例.在OOP(Object-Oriented Programming,面向对象编程)中,工厂(factory)是 ...

  5. 【SD系列】SAP SD模块-创建供应商主数据BAPI

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[SD系列]SAP SD模块-创建供应商主数据B ...

  6. MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

    本篇文章是对MySQL数据库引擎介绍.区别.创建和性能测试进行了详细的分析介绍,需要的朋友参考下   数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎 ...

  7. JS函数创建的具体过程

    JS函数创建的过程: 1.新建Object对象F,类型设置为Function 2.设置F.__proto__ = Function.prototype 3.设置F.constructor = Func ...

  8. [转]MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

    本篇文章是对MySQL数据库引擎介绍.区别.创建和性能测试进行了详细的分析介绍,需要的朋友参考下   数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎 ...

  9. .net 调用SAP RFC函数获取数据的两种方式

    方式1:使用客户端自带的组件 安装客户端以后,添加引用:SAPFunctionsOCX(.net 的Com列表里一般找不到,需要引用DLL[一般位于以下路径:Program Files\SAP\Fro ...

随机推荐

  1. android Listview,gridview局部刷新,部分刷新

    众所周知Listview和Gridview的刷新界面的方式是调用adapter.notifyDataSetChanged()进行界面刷新. 但是此方法有其弊端,他是将界面中的数据全部刷新一遍,不论数据 ...

  2. hdu1397(素数组和成偶数的个数 用 标记法)

    Problem Description Goldbach's Conjecture: For any even number n greater than or equal to 4, there e ...

  3. 获取sdcard和内存的存储空间

    package com.example.sdcardspace; import java.io.File; import android.os.Bundle; import android.os.En ...

  4. Eclipse使用技巧总结(二)

    七.快速切换打开的文件 Ctrl + F6 八.快速大写.小写转换 Ctrl + Shift + Y Ctrl + Shift + X 九.快速删除光标所在行 Ctrl + D 十.快速复制 Ctrl ...

  5. 【转】windows 7系统安装与配置Tomcat服务器环境

    原文链接: windows 7系统安装与配置Tomcat服务器环境 工具/原料 jdk-8u51-windows-x64(我的系统是64位系统,32位的请选x86下载)下载地址:http://www. ...

  6. python xpath

    提取Item 选择器介绍 我们有很多方法从网站中提取数据.Scrapy 使用一种叫做 XPath selectors的机制,它基于 XPath表达式.如果你想了解更多selectors和其他机制你可以 ...

  7. SPOJ 11840. Sum of Squares with Segment Tree (线段树,区间更新)

    http://www.spoj.com/problems/SEGSQRSS/ SPOJ Problem Set (classical) 11840. Sum of Squares with Segme ...

  8. 使用ffmpeg视频编码过程中踩的一个坑

           今天说说使用ffmpeg在写视频编码程序中踩的一个坑,这个坑让我花了好多时间,回头想想,非常多时候一旦思维定势真的挺难突破的.以下是不对的编码结果:                   ...

  9. 利用opencv中的级联分类器进行人脸检測-opencv学习(1)

    OpenCV支持的目标检測的方法是利用样本的Haar特征进行的分类器训练,得到的级联boosted分类器(Cascade Classification).注意,新版本号的C++接口除了Haar特征以外 ...

  10. Swift - 纯代码实现页面segue跳转,以及参数传递

    下面通过一个例子说明如何在代码中进行segue页面的切换,以及参数的传递.   样例功能如下: 1,主界面中是一个列表(这个列表是在代码中实现) 2,点击列表项时,界面会切换到详情页面,同时传递改列表 ...