ABAP DIALOG開發基本技術參考(主窗體200的INCLUDE-SCREEN技術)

来源:互联网 发布:美国制造业 知乎 编辑:程序博客网 时间:2024/05/17 23:37

 *----------------------------------------------------------------------*
***INCLUDE ZINCLUDE200_MM079 .
*----------------------------------------------------------------------*
TYPE-POOLS:VRM.
DATA:
      G_VAL TYPE VRM_VALUES,
      G_LINE LIKE LINE OF G_VAL.  "structure

MODULE STATUS_0200 OUTPUT.
  SET PF-STATUS '0200'.
  SET TITLEBAR '0100'.
ENDMODULE.                 " STATUS_0200  OUTPUT
*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_0200  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE USER_COMMAND_0200 INPUT.
  SA_CODE = OK_CODE.
  CLEAR OK_CODE.
  SY-UCOMM = OK_CODE.
  G_SAVE = 'N'.
  CASE SA_CODE.
    WHEN 'ZSAVE'.
          G_SAVE = 'Y'.
          LEAVE TO SCREEN 0.
    WHEN 'ZEXIT' OR 'EXIT'.
          LEAVE TO SCREEN 0.
  ENDCASE.
ENDMODULE.                 " USER_COMMAND_0200  INPUT
*&---------------------------------------------------------------------*
*&      Module  GET_TEXT1  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE GET_TEXT1 INPUT.
   SELECT MWSKZ TEXT1 INTO CORRESPONDING FIELDS OF TABLE IT_MWSKZ
   FROM T007S WHERE SPRAS = SY-LANGU      AND
                    KALSM = 'TAXCN'.
   CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
        EXPORTING
          RETFIELD        = 'TEXT1'      "參考內表F4_MBLNR中的字段
          VALUE_ORG       = 'S'
          DYNPROFIELD     = 'IT_RESULT-TEXT1'    "屏幕字段
          DYNPNR          = '0200'       "屏幕號
          DYNPPROG        = SY-REPID
        TABLES
          VALUE_TAB       = IT_MWSKZ
        EXCEPTIONS
          PARAMETER_ERROR = 1
          NO_VALUES_FOUND = 2
          OTHERS          = 3.
ENDMODULE.                 " GET_TEXT1  INPUT

FORM ADD_LISTBOX USING PF_LIST.
CLEAR: G_VAL[].
   IF PF_LIST = 'IT_RESULT-PAYWY'.
       CLEAR: G_LINE.
       G_LINE-KEY = '预付款'.
       G_LINE-TEXT = ''.
       APPEND G_LINE TO G_VAL.

       CLEAR: G_LINE.
       G_LINE-KEY = '货到付款'.
       G_LINE-TEXT = ''.
       APPEND G_LINE TO G_VAL.
   ELSEIF PF_LIST = 'IT_RESULT-ACCWY'.
       CLEAR: G_LINE.
       G_LINE-KEY = '转帐支票'.
       G_LINE-TEXT = ''.
       APPEND G_LINE TO G_VAL.
   ENDIF.

   CALL FUNCTION 'VRM_SET_VALUES'
    EXPORTING
      id               = PF_LIST   "--'P_LIST'
       values          = G_VAL
    EXCEPTIONS
       id_illegal_name = 1
      OTHERS           = 2.
   IF sy-subrc <> 0.
*     MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*          WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
   ENDIF.
ENDFORM.
*&---------------------------------------------------------------------*
*&      Module  GET_PAYWY  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE GET_PAYWY INPUT.
    PERFORM ADD_LISTBOX USING 'IT_RESULT-PAYWY'.
ENDMODULE.                 " GET_PAYWY  INPUT
*&---------------------------------------------------------------------*
*&      Module  GET_ACCWY  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE GET_ACCWY INPUT.
    PERFORM ADD_LISTBOX USING 'IT_RESULT-ACCWY'.
ENDMODULE.                 " GET_ACCWY  INPUT