se11创建基本搜索帮助时,各个参数的含意

  1. 选择方法   指定命中列表的数据来源,可以是数据库表,视图,CDS.如果指定了搜索帮助出口函数则该字段可以不输,数据来源可以在出口中自行指定
  2. 对话类型: 输入字段的建议搜索:
    1. 立即值显示: 在调用输入帮助后立即显示命中清单,通常如果命中清单只包含一些条目则建议使用该选项。
    2. 带有值限制的对话:立即显示限制值的对话框。如果正常情况下可能条目的清单非常大,则选择该选项。限制即将处理的数据设置会增加命中清单的清楚性,并降低值选择过程中系统的负载。
    3. 基于值集的对话:如果命中清单包含的条目小于100个,那么立即显示该命中清单。如果其包含的条目多余100个,那么显示限制值用的对话框。
  3. 输入字段的建议搜索帮助:如果勾选该字段则不需要调用搜索帮助,在输入字段中直接输入与该字段同名的搜索帮助的输入参数的值,系统会根据你输入的内容在下方显示筛选结果.不过只有数据源内容较少时建议使用.
      • 多列全文搜索(数据库特定):可以在输入字段中输入与搜索帮助所有选择参数相关的内容,系统会进行全文搜索,并将结果显示在输入字段下方.精确度值:此值范围在 0.1 至 1 之间。系统中定义的标准值为 0.8。值 0.1 表示搜索查询允许的最大错误容差。1 表示搜索必须提供精确匹配。换言之,该值越小,搜索中能够容忍且之后显示在结果中的差异越大。
  4. 搜索帮助出口:此处需要填写一个和函数模块 F4IF_SHLP_EXIT_EXAMPLE有一样的参数.使用出口函数可以使搜索帮助更加灵活,具体用法稍后说明
  5. 搜索帮助参数:如果指定了选择方法,则参数必须是选择方法中的字段.如果使用了出口函数,则随意,但是要指定参数的数据元素
  6. IMP:该参数是否为输入参数,用来筛选命中列表
  7. EXP:该字段是否为输出参数,用来赋值给使用该搜索帮助的输入字段.
  8. LPOS列表:该参数字段在命中列表的位置
  9. SPOS选择列表:该字段在选择屏幕中位置
  10. SDIS选择显示:该参数字段在选择屏幕中仅显示,不可编辑,如果该字段被勾选,则必须指定该参数字段的默认值
  11. 参数字段对应的数据元素,必输项.
  12. modifyed 该字段被修改则可以调整参数字段对应的数据元素,但调整的数据元素的数据类型和长度要和选择方法中的数据元素相同.主要用了决定参数字段在命中列表和选择列表中的字段名称
  13. 缺省值:
    • a) 包含在省略号(')中的常数,该常数必须在参量的内部表示中指定,参量的数据类型有一个编辑屏蔽(例如日期和时间)。例如日期1998年3月1日必须定义为 '19980301'。
    • b) 系统字段。这是DDIC结构SYST的字段,其中前缀SY- 可用来代替前缀 SYST-。
    • c)GET 参数的标识。

表或者结构绑定搜索帮助及字段分配与联动搜索帮助

  1. 建立如下搜索帮助

  2. 将搜索帮助绑定到自定义机构或者表的字段上
  3. 以上完成了搜索帮助的绑定及字段分配,

  4. 定义以下选择屏幕,或者在自定义屏幕中参照结构创建输入字段.
  5. PARAMETERS p_werks TYPE zstest-werks .
    PARAMETERS p_lgort TYPE zstest-lgort.
    PARAMETERS p_lgobe TYPE zstest-lgobe .

     

  6. 提前输入工厂字段的值,对库存地点使用搜索帮助时,工厂字段会自动带入的输入参数werks中,选择命中列表的条目后,会同时填写库存地点及库存地点描述字段.
  7. 以上就实现了输入参数的联动及选择结果填充多个字段.联动搜索帮助

搜索帮助出口的用法

  1. 搜索帮助出口可以使得搜索帮助更加的灵活
  2. 搜索帮助出口函数要求和系统函数F4IF_SHLP_EXIT_EXAMPLE具有相同的参数.
  3. 复制函数F4IF_SHLP_EXIT_EXAMPLE到自定义的函数,参照F4IF_SHLP_EXIT_EXAMPLE的代码根据需求完成自定义函数的代码
  4. 搜索帮助出口函数各个参数的含义

    1. SHLP现在使用的搜索帮助相关信息:参数字段,产生字段描述,输入字段选择条件等
    2. CALLCONTROL:搜索帮助流程控制
    3. SHLP_TAB:集合帮助下的所有简单搜索帮助相关信息
    4. RECORD_TAB:命中清单

搜索帮助增强出口使用方法

*"*"本地接口:
*" TABLES
*" SHLP_TAB TYPE SHLP_DESCT
*" RECORD_TAB STRUCTURE SEAHLPRES
*" CHANGING
*" VALUE(SHLP) TYPE SHLP_DESCR
*" VALUE(CALLCONTROL) LIKE DDSHF4CTRL STRUCTURE DDSHF4CTRL
*"---------------------------------------------------------------------- * EXIT immediately, if you do not want to handle this step
IF callcontrol-step <> 'SELONE' AND
callcontrol-step <> 'SELECT' AND
" AND SO ON
callcontrol-step <> 'DISP'.
EXIT.
ENDIF. *"----------------------------------------------------------------------
* STEP SELONE (Select one of the elementary searchhelps)
*"----------------------------------------------------------------------
* This step is only called for collective searchhelps. It may be used
* to reduce the amount of elementary searchhelps given in SHLP_TAB.
* The compound searchhelp is given in SHLP.
* If you do not change CALLCONTROL-STEP, the next step is the
* dialog, to select one of the elementary searchhelps.
* If you want to skip this dialog, you have to return the selected
* elementary searchhelp in SHLP and to change CALLCONTROL-STEP to
* either to 'PRESEL' or to 'SELECT'.
IF callcontrol-step = 'SELONE'.
* PERFORM SELONE .........
EXIT.
ENDIF. *"----------------------------------------------------------------------
* STEP PRESEL (Enter selection conditions)
*"----------------------------------------------------------------------
* This step allows you, to influence the selection conditions either
* before they are displayed or in order to skip the dialog completely.
* If you want to skip the dialog, you should change CALLCONTROL-STEP
* to 'SELECT'.
* Normaly only SHLP-SELOPT should be changed in this step.
IF callcontrol-step = 'PRESEL'.
* PERFORM PRESEL ..........
EXIT.
ENDIF.
*"----------------------------------------------------------------------
* STEP SELECT (Select values)
*"----------------------------------------------------------------------
* This step may be used to overtake the data selection completely.
* To skip the standard seletion, you should return 'DISP' as following
* step in CALLCONTROL-STEP.
* Normally RECORD_TAB should be filled after this step.
* Standard function module F4UT_RESULTS_MAP may be very helpfull in this
* step.
IF callcontrol-step = 'SELECT'.
IF sy-uname = 'PLM-SEAN'.
BREAK-POINT.
ENDIF.
"RECORD_TAB表的string字段里边包含了三位的空位及按照搜索帮助输出字段位置lpos顺序排列的各个输出字段的合并
SELECT FROM t001l
FIELDS concat( concat( concat( mandt ,werks ), lgort ),lgobe ) AS string INTO TABLE @record_tab. SELECT
*
FROM t001l
INTO TABLE @DATA(lt_t001l).
"也可以使用系统标准函数F4UT_RESULTS_MAP将源数据绑定到recordtab
CALL FUNCTION 'F4UT_RESULTS_MAP'
* EXPORTING
* SOURCE_STRUCTURE =
* APPLY_RESTRICTIONS = ' '
TABLES
shlp_tab = shlp_tab
record_tab = record_tab
source_tab = lt_t001l
CHANGING
shlp = shlp
callcontrol = callcontrol
* EXCEPTIONS
* ILLEGAL_STRUCTURE = 1
* OTHERS = 2
.
IF sy-subrc <> .
* Implement suitable error handling here
ENDIF. callcontrol-step = 'DISP'.
* IF RC = 0.
* CALLCONTROL-STEP = 'DISP'.
* ELSE.
* CALLCONTROL-STEP = 'EXIT'.
* ENDIF.
EXIT. "Don't process STEP DISP additionally in this call.
ENDIF.
*"----------------------------------------------------------------------
* STEP DISP (Display values)
*"----------------------------------------------------------------------
* This step is called, before the selected data is displayed.
* You can e.g. modify or reduce the data in RECORD_TAB
* according to the users authority.
* If you want to get the standard display dialog afterwards, you
* should not change CALLCONTROL-STEP.
* If you want to overtake the dialog on you own, you must return
* the following values in CALLCONTROL-STEP:
* - "RETURN" if one line was selected. The selected line must be
* the only record left in RECORD_TAB. The corresponding fields of
* this line are entered into the screen.
* - "EXIT" if the values request should be aborted
* - "PRESEL" if you want to return to the selection dialog
* Standard function modules F4UT_PARAMETER_VALUE_GET and
* F4UT_PARAMETER_RESULTS_PUT may be very helpfull in this step.
IF callcontrol-step = 'DISP'.
* PERFORM AUTHORITY_CHECK TABLES RECORD_TAB SHLP_TAB
* CHANGING SHLP CALLCONTROL.
EXIT.
ENDIF.

SAP基本搜索帮助及增强出口的更多相关文章

  1. SAP 增强-出口选找方法-全部

    ■ SAP 中如何寻找增强 方法一:利用TCODE寻找增强(第二代的增强) 执行一个程序(源代码后附),在选择屏幕处输入你所需要增强的程序TCODE,执行後,就会出现一个列表,那里就有关于如何增强这个 ...

  2. [SAP ABAP开发技术总结]增强Enhancement

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  3. 基于SAP Kyma的订单编排增强介绍

    尽管有一万个舍不得,2018年还是无可挽回地离我们远去了. 唯有SAP成都研究院的同事和我去年在网络上留下的这些痕迹,能证明2018年我们曾经很认真地去度过每一天: SAP成都研究院2018年总共87 ...

  4. ABAP FIELD-SYMBOLS 有大作用- 将没有可改参数的增强出口变得也能改主程序的值了

    看下图代码: report  z_xul_test2 中 定义了 全局变量 G_DATA1 , 分别调用了 z_xul_tes1 中的 form  和 function zbapi_test , 这两 ...

  5. SAP UI 搜索分页技术

    搜索分页技术往往和另一个术语Lazy Loading(懒加载)联系起来.今天由Jerry首先介绍S/4HANA,CRM Fiori和S4CRM应用里的UI搜索分页的实现原理.后半部分由SAP成都研究院 ...

  6. SAP订单编排和流程增强概述

    SAP产品里的订单处理,无论是On-Premises解决方案还是云产品,我认为归根到底可以概括成四个字:订单编排,包含两个层次的内容: 1. 单个订单通过业务流程或者工作流驱动的状态迁移: 2. 多种 ...

  7. ABAP FIELD-SYMBOLS 有大作用- 将没有可改參数的增强出口变得也能改主程序的值了

    看下图代码: report  z_xul_test2 中 定义了 全局变量 G_DATA1 , 分别调用了 z_xul_tes1 中的 form  和 function zbapi_test , 这两 ...

  8. 【ABAP系列】SAP F4搜索帮助的高级版

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP F4搜索帮助的高级版   ...

  9. 【EWM系列】SAP 关于EWM的WT增强简介

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP 关于EWM的WT增强简介   ...

随机推荐

  1. BNUOJ 26228 Juggler

    Juggler Time Limit: 3000ms Memory Limit: 32768KB This problem will be judged on HDU. Original ID: 42 ...

  2. AndroidSweetSheet:ViewPager的实现(2)

     AndroidSweetSheet:ViewPager的实现(2) 附录文章9说明了AndroidSweetSheet典型的列表样式实现,本文写一个例子,说明AndroidSweetSheet以 ...

  3. 全文搜索(AB-2)-权重

    概念 权重是一个相对的概念,针对某一指标而言.某一指标的权重是指该指标在整体评价中的相对重要程度.权重是要从若干评价指标中分出轻重来,一组评价指标体系相对应的权重组成了权重体系. 释义 等同于比重   ...

  4. BBS+Blog项目流程及补充知识点

    项目流程: 1. 产品需求 (1)基于用户认证组件和Ajax实现登陆验证(图片验证码) (2)基于forms组件和Ajax实现注册功能 (3)设计系统首页(文章列表渲染) (4)设计个人站点页面 (5 ...

  5. 开发辅助网站---programcreek

    开发中让我们事半功倍的工具网站,开发中经常遇到api如何使用,很好的解决这个问题.java代码api案例网,提供最简单的demo,很不错分享一下,大家可以用用. http://www.programc ...

  6. POJ 3233_Matrix Power Series

    题意: 求n*n矩阵的幂和 分析: 逐个加起来时间复杂度太高,通过在矩阵中套个矩阵和,再利用矩阵快速幂,最后时间复杂度为O(n3logn) 代码: #include<cstdio> #in ...

  7. java反射与注解结合使用(根据传入对象输出查询sql)

    我们在项目开发中有很多地方使用到了注解,关于注解的定义与创建小伙伴可以参考我的文章<java注解>.有任何问题的小伙伴们可以在评论区指出哦,欢迎各位大佬指出问题. 今天我要说的是使用注解与 ...

  8. Oracle数据库导入导出简单备份

    oracle数据库简单备份 方法一: 1.导出 exp c##xmq/pwda@orcl owner=c##xmq file=C:/expdb.dmp buffer=8000 2.导入 2.1.删除原 ...

  9. mybatis返回list很智能很简答的,只需要配置resultmap进行类型转换,你dao方法直接写返回值list<对应的object>就行了啊

    mybatis返回list很智能很简答的,只需要配置resultmap进行类型转换,你dao方法直接写返回值list<对应的object>就行了啊 dao方法 public List< ...

  10. activiti自己定义流程之Spring整合activiti-modeler5.16实例(四):部署流程定义

    注:(1)环境搭建:activiti自己定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建         (2)创建流程模型:activiti自己定义流程之Spr ...