博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ABAP开发中常用的两个F4搜索帮助函数的区别
阅读量:2035 次
发布时间:2019-04-28

本文共 2612 字,大约阅读时间需要 8 分钟。

F4IF_FIELD_VALUE_REQUEST 和 F4IF_INT_TABLE_VALUE_REQUEST的区别:
  • F4IF_FIELD_VALUE_REQUEST
    主要功能是将表里的字段对应的search help引入到上来,从而打开对话框,当然也可以任意指定某个search help。
  • F4IF_INT_TABLE_VALUE_REQUEST
    支持字定义内表,但是不能通过指定search help的方式打开对话框。

1.F4IF_FIELD_VALUE_REQUEST的应用实例

TYPES: BEGIN OF type_carrid,         carrid TYPE spfli-carrid,         connid TYPE spfli-connid,         carrname TYPE scarr-carrname,       END OF type_carrid.DATA itab_carrid TYPE STANDARD TABLE OF type_carrid.PARAMETERS airline(2) TYPE c.*&---------------------------------------------------------------------**& Processing Blocks called by the Runtime Environment                 **&---------------------------------------------------------------------** Event Block AT SELECTION-SCREEN ON VALUE-REQUEST FORAT SELECTION-SCREEN ON VALUE-REQUEST FOR airline.  PERFORM frm_f4_help.* Form for generating F4 HELP for parameter AIRLINEFORM frm_f4_help .  SELECT carrid carrname                FROM scarr                INTO CORRESPONDING FIELDS OF TABLE itab_carrid.  CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'    EXPORTING      tabname     = 'SPFLI'    "指定stucture,必须的      fieldname   = 'CARRID' "指定structure中的field      dynpprog    = sy-repid          "指定屏幕参数所在的程序名称      dynpnr      = sy-dynnr          "指定参数所在的屏幕编号      dynprofield = 'AIRLINE'.        "指定屏幕参数的名称*  IF sy-subrc <> 0.*    ...*  ENDIF.ENDFORM.                    " FRM_F4_HELP
2.F4IF_INT_TABLE_VALUE_REQUEST的应用实例

TYPES: BEGIN OF type_carrid,         carrid TYPE spfli-carrid,         connid TYPE spfli-connid,         carrname TYPE scarr-carrname,       END OF type_carrid.DATA itab_carrid TYPE STANDARD TABLE OF type_carrid.* Selection ScreenPARAMETERS airline(2) TYPE c.* Event Block AT SELECTION-SCREEN ON VALUE-REQUEST FORAT SELECTION-SCREEN ON VALUE-REQUEST FOR airline.  PERFORM frm_f4_help.* Form for generating F4 HELP for parameter AIRLINEFORM frm_f4_help .  SELECT carrid carrname                FROM scarr                INTO CORRESPONDING FIELDS OF TABLE itab_carrid.  CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'    EXPORTING      retfield        = 'CARRID'  "指定要返回屏幕参数的在内表中的field      value_org       = 'S'       "S代表structure      dynpprog        = sy-repid  "指定屏幕参数所在的程序名称      dynpnr          = sy-dynnr  "指定参数所在的屏幕编号      dynprofield     = 'AIRLINE' "指定屏幕参数的名称    TABLES      value_tab       = itab_carrid "内表    EXCEPTIONS      parameter_error = 1      no_values_found = 2      OTHERS          = 3.*  IF sy-subrc <> 0.*    ...*  ENDIF.ENDFORM.                    " FRM_F4_HELP
总结:总上所述,在se11已经存在建立好的search help的情况下我们通常使用第一个function module,在需要给某个字段限定一些特殊值的时候,我们通常使用第2种function module.

转载地址:http://npqaf.baihongyu.com/

你可能感兴趣的文章
AM--消息队列
查看>>
Dubbo面试
查看>>
[LeetCode] 342. 4的幂 ☆(是否4 的幂)
查看>>
装饰器模式
查看>>
java关键字总结
查看>>
MyBatis:4
查看>>
List原理
查看>>
request请求中有点号
查看>>
springmvc事务回滚失效
查看>>
Java 8的五大开发技巧
查看>>
多线程中的注意点
查看>>
netty4 Handler的执行顺序
查看>>
ZooKeeper原理及使用
查看>>
guava学习--事件驱动模型
查看>>
guava学习--hashing
查看>>
scala函数
查看>>
面向对象之方法1
查看>>
PythonStudy——列表与字典推导式 List and dictionary derivation
查看>>
PythonStudy——格式化输入小练习
查看>>
PythonStudy——列表操作 List operatio
查看>>