紧接上一节介绍的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. cocos2dx CCLabelTTF自己定义字体的使用

    版本号:  cocos2d-x 2.1.4 平台:  iOS 1. 字体文件名称 最好用字体冊中的family name.ttf, 不然字体可能不生效. 2. 在Info.plist  Fonts P ...

  2. 零成本建立的.NET小组开发平台

    前言 说道.NET开发平台,首先想到的就是Visual Studio,建立.NET小组开发平台自然首推TFS.但其花费却也是相当昂贵的(当然在本国可以无视这些成本),近期的开发中接触到一些开源软件并读 ...

  3. Android:创建文件或文件夹以及获取sd卡根目录

    目录结构: 功能,可以根据录入的目录或者文件夹生成相应的文件或者文件夹 首先需要添加一个权限: <uses-permission android:name="android.permi ...

  4. linux下Python网络编程框架-Twisted安装

    Twisted是python下的用来进行网络服务和应用程序编程的框架,安装Twisted前需要系统预先安装有python. 一.安装Twisted http://twistedmatrix.com/R ...

  5. keepalived 结合mysql 自动切换

    启动keepalived:/usr/local/sbin/keepalived -D -d -S 0 master ip:192.168.32.6 master:/root/sbin# cat /et ...

  6. 【Bootstrap3.0建站笔记一】表单元素排版

    1.文字和输入框前后排列: 代码: <div class="row"> <div class="col-lg-12"> <div ...

  7. UITabBarController中自定义UITabBar

    1.创建多个视图控制器,放如UITabBarController中 AViewController *aa = [[AViewController alloc] init]; UINavigation ...

  8. android 从其他app接收分享的内容

    Receiving Content from Other Apps[从其他app接收分享的内容] 就像你的程序能够发送数据到其他程序一样,其他程序也能够简单的接收发送过来的数据.需要考虑的是用户与你的 ...

  9. log4net使用经验总结

    下面介绍几条我认为比较好的经验,让我们更好的运用log4net 1.web程序时不把log4net的配置文件放在web.config中 原因:一个项目随着需求的变更,配置字节会特别多,不便查阅及维护. ...

  10. hdu1104 Remainder bfs找算式是否有解……

    须要注意的是,进行模运算剪枝-- #include<iostream> #include<queue> #include<cstdlib> #include< ...