F4 Function for low value and high value

form get_values_f4_function.
* Internal Table for storage location help
  TYPES: BEGIN OF tp_person,
          bukrs LIKE pa0001-bukrs,  "Company Code
          pernr LIKE pa0001-pernr,  "Personnel number
          END OF tp_person.
  it_person     TYPE TABLE OF tp_person.
  data: dynfields type table of dynpread with header line.

  dynfields-fieldname = 'S_BUKRS-LOW'.
  append dynfields.
  dynfields-fieldname = 'S_BUKRS-HIGH'.
  append dynfields.
  call function 'DYNP_VALUES_READ'
    EXPORTING
      dyname               = sy-cprog
      dynumb               = sy-dynnr
      translate_to_upper   = 'X'
    TABLES
      dynpfields           = dynfields
    EXCEPTIONS
      invalid_abapworkarea = 1
      invalid_dynprofield  = 2
      invalid_dynproname   = 3
      invalid_dynpronummer = 4
      invalid_request      = 5
      no_fielddescription  = 6
      invalid_parameter    = 7
      undefind_error       = 8
      double_conversion    = 9
      stepl_not_found      = 10
      others               = 11.
  READ TABLE it_dyfields INDEX 1.
  rg_bukrs-low = it_dyfields-fieldvalue.
  READ TABLE it_dyfields INDEX 2.
  rg_bukrs-high = it_dyfields-fieldvalue.
  SELECT SINGLE * FROM t001 WHERE bukrs IN rg_bukrs.
  IF sy-subrc = 0. "Company code is valid
    SELECT * FROM pa0001
    INTO CORRESPONDING FIELDS OF TABLE it_person
    WHERE bukrs IN rg_bukrs.
    DELETE ADJACENT DUPLICATES FROM it_person COMPARING pernr.
    SORT it_person BY bukrs pernr.
* Display it.
    CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
      EXPORTING
        retfield        = 'PERNR'
        dynprofield     = 'S_PERNR'
        dynpprog        = sy-cprog
        dynpnr          = sy-dynnr
        value_org       = 'S'
      TABLES
        value_tab       = it_person
      EXCEPTIONS
        parameter_error = 1
        no_values_found = 2
        OTHERS          = 3.
  ENDIF.
endform.                    "get_values_f4_function 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值