abap 屏幕控件Tabstrip 页签控件的使用案例示例,包括表单,展示alv,搜索功能

程序目录
image

主屏幕9999
image
子屏幕9996
image
子屏幕9997
image
子屏幕9998
image
主屏幕代码


*&---------------------------------------------------------------------*
*& Report ZPCYTABSTRIP00
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zpcytabstrip00.

*&SPWizard: Data incl. inserted by SP Wizard. DO NOT CHANGE THIS LINE!
INCLUDE zpcytabstrip00_top .
*&SPWizard: Include inserted by SP Wizard. DO NOT CHANGE THIS LINE!
INCLUDE zpcytabstrip00_pbo .
INCLUDE zpcytabstrip00_pai .

TYPE-pools: slis.

DATA: stu_id   TYPE string,
      com_txt TYPE string,
      A1 TYPE string,
      A2 TYPE string,
      A3 TYPE string,
      A4 TYPE string,
      A5 TYPE string,
      A6 TYPE string.

TYPES: BEGIN OF cominfo,
  MANDT TYPE t001-MANDT,
  BUKRS TYPE t001-BUKRS,
  BUTXT TYPE t001-BUTXT,
  ORT01 TYPE t001-ORT01,
END OF cominfo.

DATA gt_data TYPE TABLE OF cominfo.
DATA gt_data1 like LINE OF gt_data.

DATA: grid TYPE REF TO cl_gui_alv_grid,
      g_custom_container TYPE REF TO cl_gui_custom_container,
      gt_sflight TYPE TABLE OF sflight,


      grid1 TYPE REF TO cl_gui_alv_grid,
      g_custom_container1 TYPE REF TO cl_gui_custom_container,
      gt_t001 TYPE TABLE OF t001.


START-OF-SELECTION.
CALL SCREEN 9999.


MODULE status_9996 OUTPUT.
  IF g_custom_container IS INITIAL.
  CREATE OBJECT g_custom_container
    EXPORTING
      container_name = 'CCCONTAINER'.
  CREATE OBJECT grid
    EXPORTING
      i_parent = g_custom_container.
  ENDIF.
ENDMODULE.

MODULE user_command_9996 INPUT.
  ok_code = sy-ucomm.
  CASE ok_code.
    WHEN 'SEARCH'.
      DATA tempvalue TYPE c LENGTH 10.
      tempvalue = |%{ stu_id }%|.
      SELECT * FROM sflight INTO TABLE gt_sflight WHERE currency LIKE tempvalue.

      CALL METHOD grid->set_table_for_first_display
        EXPORTING
          i_structure_name = 'SFLIGHT'
        CHANGING
          it_outtab = gt_sflight.

    WHEN 'SHOW'.  " 新增按钮的处理

    WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
      LEAVE PROGRAM.
    WHEN OTHERS.
  ENDCASE.
ENDMODULE.

MODULE status_9997 OUTPUT.
  IF g_custom_container1 IS INITIAL.
  CREATE OBJECT g_custom_container1
    EXPORTING
      container_name = 'COMCONTAINER'.
  CREATE OBJECT grid1
    EXPORTING
      i_parent = g_custom_container1.
  ENDIF.



ENDMODULE.

MODULE user_command_9997 INPUT.
  ok_code = sy-ucomm.
  CASE ok_code.
    WHEN 'BTS'.
      DATA tempvalue1 TYPE c LENGTH 10.
      tempvalue1 = |%{ com_txt }%|.
      SELECT   MANDT  BUKRS   BUTXT   ORT01   FROM t001 INTO CORRESPONDING FIELDS OF TABLE  gt_data WHERE BUTXT LIKE tempvalue1.

      CALL METHOD grid1->set_table_for_first_display
        EXPORTING
          i_structure_name = 'ZCOMINFO'
        CHANGING
          it_outtab = gt_data.

    WHEN 'SHOW'.  " 新增按钮的处理

    WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
      LEAVE PROGRAM.
    WHEN OTHERS.
  ENDCASE.
ENDMODULE.


MODULE user_command_9998 INPUT.
  ok_code = sy-ucomm.
  CASE ok_code.
    WHEN 'SUBMIT'.
     DATA: valuelist TYPE c LENGTH 200.
      valuelist = A1 && ' ' && A2 && ' ' && A3 && ' ' && A4 && ' '&& A5 && ' ' && A6 && ' '.
      MESSAGE valuelist TYPE 'I'.
    WHEN OTHERS.
  ENDCASE.
ENDMODULE.

执行效果

image

image

image

posted @ 2026-07-23 14:53  虚拟过客之IT老男人  阅读(7)  评论(0)    收藏  举报