zoukankan      html  css  js  c++  java
  • ABAP读取工单状态 STATUS_READ

    *&---------------------------------------------------------------------*
    *& Report  YDEMO_013
    *&
    *&---------------------------------------------------------------------*
    *&
    *&
    *&---------------------------------------------------------------------*
    
    REPORT  YDEMO_013 MESSAGE-ID ZTEST_001.
    
    TABLES:AUFK.
    DATA:LT_STATUS LIKE TABLE OF JSTAT WITH HEADER LINE.
    
    DATA:GS_LAYOUT TYPE LVC_S_LAYO.
    *PARAMETERS:P_CLIENT LIKE
    PARAMETERS:P_AUFNR LIKE AFKO-AUFNR,
               P_OBJNR LIKE JSTO-OBJNR,
               P_ONLY  LIKE JEST-INACT.
    
    PARAMETERS:RB_01 RADIOBUTTON GROUP G1 DEFAULT 'X',
               RB_02 RADIOBUTTON GROUP G1.
    
    
    PARAMETERS:P_OBTYP LIKE JSTO-OBTYP,
               P_STSMA LIKE JSTO-STSMA,
               P_STONR LIKE TJ30-STONR.
    
    INITIALIZATION.
    
    *IF
    
    START-OF-SELECTION.
      SELECT SINGLE OBJNR INTO P_OBJNR
        FROM AUFK
       WHERE AUFNR = P_AUFNR.
      IF SY-SUBRC NE 0.
    
        MESSAGE I002."WITH '没有找到对象号!'.
        CALL TRANSACTION 'ABAPDOCU'.
        STOP.
    
      ELSE.
        CLEAR:LT_STATUS,LT_STATUS[].
        CALL FUNCTION 'STATUS_READ'
          EXPORTING
    *   CLIENT                 = SY-MANDT
            OBJNR                  = P_OBJNR
    *   ONLY_ACTIVE            = ' '
         IMPORTING
           OBTYP                  = P_OBTYP
           STSMA                  = P_STSMA
           STONR                  = P_STONR
         TABLES
           STATUS                 = LT_STATUS
    * EXCEPTIONS
    *   OBJECT_NOT_FOUND       = 1
    *   OTHERS                 = 2
                  .
        IF SY-SUBRC <> 0.
    * Implement suitable error handling here
        ENDIF.
      ENDIF.
    
      IF RB_02 EQ 'X'.
        LOOP AT LT_STATUS.
          WRITE:/(10) LT_STATUS-STAT,
                (20) LT_STATUS-INACT.
        ENDLOOP.
    
      ELSE.
    
        GS_LAYOUT-CWIDTH_OPT   = 'X'.
        GS_LAYOUT-SEL_MODE     = 'A'.
    
        CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
          EXPORTING
            I_STRUCTURE_NAME         = 'JSTAT'
            I_CALLBACK_PROGRAM       = SY-REPID
            I_CALLBACK_PF_STATUS_SET = 'SET_PF_STATUS'
            I_CALLBACK_USER_COMMAND  = 'ALV_USER_COMMAND'
    *       IS_LAYOUT_LVC            = GS_LAYOUT
          TABLES
            T_OUTTAB                 = LT_STATUS.
    
    
      ENDIF.
    
    *&---------------------------------------------------------------------*
    *&      Form  SET_PF_STATUS
    *&---------------------------------------------------------------------*
    *       text
    *----------------------------------------------------------------------*
    FORM SET_PF_STATUS USING UT_EXCLUDE TYPE SLIS_T_EXTAB.
      SET PF-STATUS 'ALV_STATUS'.
    ENDFORM.                    "SET_PF_STATUS
    
    *&---------------------------------------------------------------------*
    *&      Form  ALV_USER_COMMAND
    *&---------------------------------------------------------------------*
    *       text
    *----------------------------------------------------------------------*
    FORM ALV_USER_COMMAND USING UV_UCOMM TYPE SYUCOMM US_SELFIELD TYPE SLIS_SELFIELD.
      DATA:LO_GRID TYPE REF TO CL_GUI_ALV_GRID.
      CASE UV_UCOMM.
        WHEN 'ADD'.
          INSERT INITIAL LINE INTO LT_STATUS INDEX 1.
          CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
            IMPORTING
              E_GRID = LO_GRID.
          CALL METHOD LO_GRID->REFRESH_TABLE_DISPLAY .
    
        WHEN 'EXIT'.
          LEAVE TO LIST-PROCESSING.
    
        WHEN '&F03' OR '&F12' OR '&F15'.
          LEAVE TO SCREEN 0.
    
        WHEN OTHERS.
      ENDCASE.
    ENDFORM.                    "ALV_USER_COMMAND
    
    
    
    *  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
    *   EXPORTING
    **   I_INTERFACE_CHECK                 = ' '
    **   I_BYPASSING_BUFFER                =
    **   I_BUFFER_ACTIVE                   =
    **    I_CALLBACK_PROGRAM                = ' '
    **   I_CALLBACK_PF_STATUS_SET          = ' '
    **   I_CALLBACK_USER_COMMAND           = ' '
    **   I_CALLBACK_TOP_OF_PAGE            = ' '
    **   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
    **   I_CALLBACK_HTML_END_OF_LIST       = ' '
    **   I_STRUCTURE_NAME                  =
    **   I_BACKGROUND_ID                   = ' '
    **   I_GRID_TITLE                      =
    **   I_GRID_SETTINGS                   =
    **   IS_LAYOUT_LVC                     =
    **   IT_FIELDCAT_LVC                   =
    **   IT_EXCLUDING                      =
    **   IT_SPECIAL_GROUPS_LVC             =
    **   IT_SORT_LVC                       =
    **   IT_FILTER_LVC                     =
    **   IT_HYPERLINK                      =
    **   IS_SEL_HIDE                       =
    **   I_DEFAULT                         = 'X'
    **   I_SAVE                            = ' '
    **   IS_VARIANT                        =
    **   IT_EVENTS                         =
    **   IT_EVENT_EXIT                     =
    **   IS_PRINT_LVC                      =
    **   IS_REPREP_ID_LVC                  =
    **   I_SCREEN_START_COLUMN             = 0
    **   I_SCREEN_START_LINE               = 0
    **   I_SCREEN_END_COLUMN               = 0
    **   I_SCREEN_END_LINE                 = 0
    **   I_HTML_HEIGHT_TOP                 =
    **   I_HTML_HEIGHT_END                 =
    **   IT_ALV_GRAPHICS                   =
    **   IT_EXCEPT_QINFO_LVC               =
    **   IR_SALV_FULLSCREEN_ADAPTER        =
    ** IMPORTING
    **   E_EXIT_CAUSED_BY_CALLER           =
    **   ES_EXIT_CAUSED_BY_USER            =
    *    TABLES
    *      T_OUTTAB                          =
    ** EXCEPTIONS
    **   PROGRAM_ERROR                     = 1
    **   OTHERS                            = 2
    *            .
    *  IF SY-SUBRC <> 0.
    ** Implement suitable error handling here
    *  ENDIF.
  • 相关阅读:
    js里的稀疏数组
    JS中二进制与十进制的相互转换
    【leetcode-03】给定一个字符串,请你找出其中不含有重复字符的最长子串的长度
    JavaScipt30(第二十二个案例)(主要知识点:getBoundingClientRect)
    JavaScipt30(第十八个案例)(主要知识点:Array.prototype.map)
    JavaScipt30(第十个案例)(主要知识点:选中一个数组中间相连部分进行操作的一种思路)
    JavaScipt30(第八个案例)(主要知识点:canvas)
    Lydsy2017省队十连测
    几个多项式的题
    poj3294Life Forms
  • 原文地址:https://www.cnblogs.com/rainysblog/p/6491627.html
Copyright © 2011-2022 走看看