美文网首页
搜索帮助

搜索帮助

作者: abapCiCi | 来源:发表于2020-06-16 21:58 被阅读0次
  1. 自建搜索帮助
SELECT  *
  INTO CORRESPONDING FIELDS OF TABLE gt_ZDWSCUS
  FROM ZDWSCUS_14062.

call function 'F4IF_INT_TABLE_VALUE_REQUEST'
  exporting
     retfield        = 'ZNAME1'   "表格要显示的字段
     dynpprog        = sy-repid        "返回的程序
     dynpnr          = sy-dynnr        "屏幕
     dynprofield     = 'ZNAME1'       "往页面回填值的地方
     value_org       = 'S'             "显示类型
   tables
     value_tab       = GT_ZDWSCUS    "传进去的表格 帮助的内表
  EXCEPTIONS
      parameter_error        = 1
      no_values_found        = 2
      OTHERS                 = 3.          .

根据不同的要求,可以定义GT_ZDWSCUS里值(可查询可传值)
给屏幕建立搜索帮助
以下代码在选择屏幕的逻辑流里面写
FIELD zname1 MODULE ztable_user_zname1 ON REQUEST.
"触发事件SEARCH HELP
MODULE user_command_9000."系统自定义的触发事件
PROCESS ON VALUE-REQUEST.
FIELD zname1 MODULE user_command_zname1."双击生成主函数写搜索帮助的程序
优点:操作性较强,处理方便
缺点:应用范围小

  1. SE11建立搜索帮助


    image.png
    image.png
    image.png

带过滤的搜索帮助
Tcode:se11创建视图


image.png
image.png

此处的选择条件相当于select后面的where条件,这个视图中的数据都是满足条件的视图。
Tcode:se11创建搜索帮助


image.png
出口增强搜索帮助
有时根据业务要求取不同表里的不同数据,但从se11筛选是做不到的,就要写出口增强。
首先写一个函数组,定义一个函数模块,如下:
image.png
image.png

定义个内表,对内表的数据进行处理(也就是说你要的数据存放在内表中)
然后调函数 'F4UT_RESULTS_MAP'
" 该函数的作用是将内表 lt_tab 中的数据转换成 record_tab ,即将某内表中的数据显示在命中清单中
" 结果展示
CALL FUNCTION 'F4UT_RESULTS_MAP'
TABLES
SHLP_TAB = SHLP_TAB
RECORD_TAB = RECORD_TAB
SOURCE_TAB = GT_TAB "自定义内表
CHANGING
SHLP = SHLP
CALLCONTROL = CALLCONTROL
EXCEPTIONS
ILLEGAL_STRUCTURE = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE 'I' NUMBER SY-MSGNO WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
RETURN.
ELSE.
CALLCONTROL-STEP = 'DISP'.
ENDIF.
Tcode:se11


image.png
  1. 搜索帮助联动
    一般做搜索帮助我们需要回车才能带出和搜索帮助相关的值,例:
    点击物料的搜索帮助回车带出物料描述,现在帮你省掉敲回车的动作,物料和描述同步粗来啦!
    首先在PAI里写:
PROCESS ON VALUE-REQUEST.
   FIELD ZPRPEOPL MODULE USER_NAME_F4-1."问题提出人

MODULE USER_NAME_F4-1 INPUT.

DATA: RETURN_TAB LIKE DDSHRETVAL OCCURS 1 WITH HEADER LINE,
      FIELD_TAB LIKE DFIES OCCURS 1 WITH HEADER LINE,
      DYNPFIELDS LIKE DYNPREAD OCCURS 3 WITH HEADER LINE.
*取开发人员(名字)

  SELECT
      USERID       "用户名字ID
      USERNAME     "用户名ID描述(名字)
    INTO CORRESPONDING FIELDS OF TABLE GT_UNAME
    FROM ZVXXDEV_UNAME
    .
  SORT GT_UNAME BY USERID USERNAME.
  DELETE ADJACENT DUPLICATES FROM  GT_UNAME.

*&----调用展示函数
  CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
*     DDIC_STRUCTURE         = ' '
      RETFIELD    = 'USERID'    "表格要显示的字段
*     PVALKEY     = ' '
      DYNPPROG    = SY-REPID        "返回才程序
      DYNPNR      = SY-DYNNR        "屏幕
      DYNPROFIELD = 'ZPRPEOPL'       "往页面回填值的地方
*     STEPL       = 0
*     WINDOW_TITLE           =
*     VALUE       = ' '
      VALUE_ORG    = 'S'
*     MULTIPLE_CHOICE        = ' '
*     DISPLAY     = ' '
     CALLBACK_PROGRAM       = SY-REPID "当前程序
    CALLBACK_FORM          = 'BO_CALLBACK_FORM' "回调函数
*     CALLBACK_METHOD        =
*     MARK_TAB    =
* IMPORTING
*     USER_RESET  =
    TABLES
      VALUE_TAB   = GT_UNAME
     FIELD_TAB   = FIELD_TAB
     RETURN_TAB  = RETURN_TAB
**     DYNPFLD_MAPPING        =
 EXCEPTIONS
     PARAMETER_ERROR        = 1
     NO_VALUES_FOUND        = 2
     OTHERS      = 3
    .
  IF SY-SUBRC <> 0.
* Implement suitable error handling here
  ENDIF.


ENDMODULE.





FORM BO_CALLBACK_FORM  TABLES   RECORD_TAB STRUCTURE SEAHLPRES
                                 CHANGING SHLP TYPE SHLP_DESCR_T
                                 CALLCONTROL LIKE DDSHF4CTRL.
                
DATA: INTERFACE LIKE LINE OF SHLP-INTERFACE,
  FP LIKE LINE OF SHLP-FIELDPROP.
READ TABLE SHLP-INTERFACE INTO INTERFACE INDEX 1.
 INTERFACE-SHLPFIELD+4(1) = '2'.
INTERFACE-VALFIELD = 'ZPRPEOPL2'.
APPEND INTERFACE TO SHLP-INTERFACE.

ENDFORM.

相关文章

  • 搜索帮助

  • 搜索帮助

    自建搜索帮助 根据不同的要求,可以定义GT_ZDWSCUS里值(可查询可传值)给屏幕建立搜索帮助以下代码在选择屏幕...

  • 自建搜索帮助

    建立搜索帮助需要调用一个函数F4IF_INT_TABLE_VALUE_REQUEST具体用法:

  • 搜索帮助联动

    一般做搜索帮助我们需要回车才能带出和搜索帮助相关的值,例:点击物料的搜索帮助回车带出物料描述,现在帮你省掉敲回车的...

  • 搜索帮助出口增强

    有时根据业务要求取不同表里的不同数据,但从se11筛选是做不到的,就要写出口增强。首先写一个函数组,定义一个函数模...

  • ABAP-搜索帮助

    查看某个字段对应的所有的值的表 在SAP的ABAP编程中,如何查看某表中某字段可能输入哪些值,值的含义是什么 创建...

  • SAP ABAP 搜索帮助

    搜索帮助,ABAP字典的另一个存储库对象,用于以列表的形式显示字段的所有可能值。 此列表也称为命中列表。 您可以选...

  • 谷歌访问助手安装教程

    标签: 教程 谷歌访问助手,帮助用户能够使用“谷歌搜索引擎”。进行“谷歌学术”搜索等更广泛的搜索帮助。 1.下载 ...

  • ABAP搜索帮助(Search Help)

    假设我事先创建一个0100的界面如下,要对下面的学校ID设置搜索帮助。 1、静态实现Search Help 首先在...

  • 带过滤的搜索帮助

    在SE11中创建搜索帮助,会带出来所有的值,可有时只要特定的值,做法如下:Tcode:se11创建视图 此处的选择...

网友评论

      本文标题:搜索帮助

      本文链接:https://www.haomeiwen.com/subject/awhksqtx.html