SAP中的F4帮助

from :http://blog.sina.com.cn/s/blog_4986104501015ne6.html


今天在调试标准程序的时候,意外的发现了一个F4帮助的函数,感觉还是挺好用的。

F4IF_FIELD_VALUE_REQUEST从函数名就可以看出是给字段添加F4帮助的。

F4 help for fields that are only known at runtime这是这个函数的描述,即运行时使用。在日常的工作中,其实都是在运行时使用,所以

对于我们开发者来说,就当正常的函数使用就可以了。参数呢,比较常用的有这几个:其他参数请到se37中自行查看,都比较简单

   CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
       EXPORTING
            tabname           gs_selfields-tabname   “数据字典中的表明
            fieldname         gt_Selfields-fieldname  ”数据字典中的字段名
           value             selval
       TABLES
            return_tab        return_tab
       EXCEPTIONS
            FIELD_NOT_FOUND   1
            NO_HELP_FOR_FIELD 2
            INCONSISTENT_HELP 3
            NO_VALUES_FOUND   4
            OTHERS            5.

运行这个函数就会弹出F4帮助界面的值选择窗口,窗口中的值就是tabname中字段fieldname的所有可选值,当选择某个值后,

那么这个值和其相关的属性就会存放到表return_tab中。这里不详细列举,请developer们自行测试。

深入研究发现,这个函数隶属于函数组SDHI(外部应用程序 F4 界面模块),在这个函数组中有很多可用的允许开发者自定义帮助的函数,这里不详细叙述,developer们可以自行研究。

另外一个比较常用的F4帮助函数是F4IF_INT_TABLE_VALUE_REQUEST。

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
  EXPORTING
  DDIC_STRUCTURE         = ' '
    RETFIELD               = 'COL1'
  PVALKEY                = ' '
   DYNPPROG               = SY-REPID
   DYNPNR                 = SY-DYNNR
   DYNPROFIELD            = 'COL1'
  STEPL                  = 0
   WINDOW_TITLE           = 'WINDOW--TITLE'
  VALUE                  = ''
   VALUE_ORG              = 'S'
  MULTIPLE_CHOICE        = 'X'"多项选择,用于SELECT-OPTIONS
  DISPLAY                = 'F'"C则只能显示,不能选择
   CALLBACK_PROGRAM       = sy-repid
  CALLBACK_FORM          = ' '
  MARK_TAB               =
* IMPORTING
  USER_RESET             =
  TABLES
    VALUE_TAB              = ITAB
  FIELD_TAB              = FIELD_TAB
  RETURN_TAB             =
  DYNPFLD_MAPPING        =
 EXCEPTIONS
   PARAMETER_ERROR        = 1
   NO_VALUES_FOUND        = 2
   OTHERS                 = 3
     帮助界面的值为自定义的内表ITAB中的内容。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值