ABAP小技巧汇总(不定时更新)

目录

1.TIMESTAMP搜索帮助

2.隐藏选择屏幕SELECT-OPTIONS限制处理

3.SELECT-OPTIONS转SQL条件


1.TIMESTAMP搜索帮助

PARAMETERS:
  p_begin TYPE ty_screen-date_begiu MATCHCODE OBJECT cpe_timestamp,     "开始时间戳
  p_end   TYPE ty_screen-date_end MATCHCODE OBJECT cpe_timestamp.       "结束时间戳

效果:

2.隐藏选择屏幕SELECT-OPTIONS限制处理

限制选择屏幕select-options功能选项

*--------------------------------------------------------------------*
* 选择屏幕事件
*--------------------------------------------------------------------*
INITIALIZATION.
* 初始化选择屏幕
  PERFORM frm_init_screen.

FORM frm_init_screen .
  DATA:
    ls_restriction TYPE sscr_restrict,
    ls_opt_list    TYPE sscr_opt_list,
    ls_ass_tab     TYPE sscr_ass.

* 定义限制规则(只能选择小于等于)
  ls_opt_list-name       = 'OBJECTKEY'.
  ls_opt_list-options-le = 'X'.
  APPEND ls_opt_list TO ls_restriction-opt_list_tab.

* 指定限制字段
  ls_ass_tab-kind    = 'S'.
  ls_ass_tab-name    = 'S_AUGDT'.
  ls_ass_tab-sg_main = 'I'.
  ls_ass_tab-sg_addy = space.
  ls_ass_tab-op_main = 'OBJECTKEY'.
  APPEND ls_ass_tab TO ls_restriction-ass_tab.

  CALL FUNCTION 'SELECT_OPTIONS_RESTRICT'
    EXPORTING
*     PROGRAM                =
      restriction            = ls_restriction
*     DB                     = ' '
    EXCEPTIONS
      too_late               = 1
      repeated               = 2
      selopt_without_options = 3
      selopt_without_signs   = 4
      invalid_sign           = 5
      empty_option_list      = 6
      invalid_kind           = 7
      repeated_kind_a        = 8
      OTHERS                 = 9.

  IF sy-subrc <> 0.
*   Implement suitable error handling here
  ENDIF.
ENDFORM.                    " FRM_INIT_SCREEN

效果:

3.SELECT-OPTIONS转SQL条件

ECC版本:CL_LIB_SELTAB

TABLES t001w.
SELECT-OPTIONS s_werks FOR t001w-werks.

DATA:
  lo_sel_tab TYPE REF TO cl_lib_seltab,
  lv_where_clause TYPE string.

lo_sel_tab = cl_lib_seltab=>new( it_sel = s_werks[] ).

lv_where_clause = lo_sel_tab->sql_where_condition( iv_field = 'A.zfab' ).

WRITE lv_where_clause.

效果:

S4版本:CL_SHDB_SELTAB=>COMBINE_SELTABS

参考链接:在 AMDP 中处理 SELECT-OPTIONS 参数 - SAP Community

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DeveloperMrMeng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值