Showing posts with label Print Purchase order Number with Top of Page and End of page. Show all posts
Showing posts with label Print Purchase order Number with Top of Page and End of page. Show all posts

22/05/2013

Print Purchase order Number with Top of Page and End of page

*&---------------------------------------------------------------------*
*& Module Pool       Z_ALV_MOD_PRINT_PURCHSE_NUMBER
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

PROGRAM  Z_ALV_MOD_PRINT_PURCHSE_NUMBER.
DATA : O_GRID TYPE REF TO CL_GUI_ALV_GRID,
       O_CONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER ,
       IT_EKKO     TYPE STANDARD TABLE OF EKKO,
       IT_EKPO     TYPE STANDARD TABLE OF EKPO,
       WA_EKKO     TYPE                   EKKO,
       WA_EKPO     TYPE                   EKPO,
       WA_PRINT    TYPE               LVC_S_PRNT.

CLASS LCL_EVENT DEFINITION.
PUBLIC SECTION.
METHODS : HANDLE_TOP_OF_PAGE  FOR EVENT PRINT_TOP_OF_PAGE OF CL_GUI_ALV_GRID,
          HANDLE_TOP_OF_LIST  FOR EVENT PRINT_TOP_OF_LIST OF CL_GUI_ALV_GRID,
          HANDLE_END_OF_PAGE  FOR EVENT PRINT_END_OF_PAGE OF CL_GUI_ALV_GRID,
          HANDLE_END_OF_LIST  FOR EVENT PRINT_END_OF_LIST OF CL_GUI_ALV_GRID.

ENDCLASS.

CLASS LCL_EVENT IMPLEMENTATION.

METHOD HANDLE_TOP_OF_PAGE.
   WRITE : 'TOP_OF_PAGE'.
ENDMETHOD.

METHOD HANDLE_TOP_OF_LIST.
  WRITE : 'END_OF_LIST'.
ENDMETHOD .

METHOD HANDLE_END_OF_LIST.
  WRITE 'END_OF_LIST'.
ENDMETHOD .

METHOD HANDLE_END_OF_PAGE.
    WRITE 'END_OF_PAGE '.
ENDMETHOD.
ENDCLASS.


*&---------------------------------------------------------------------*
*&      Module  FETCH_DATA  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE FETCH_DATA OUTPUT.
SELECT * FROM EKKO INTO TABLE IT_EKKO UP TO 100 ROWS .
ENDMODULE.                 " FETCH_DATA  OUTPUT
*&---------------------------------------------------------------------*
*&      Module  STATUS_9001  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE STATUS_9001 OUTPUT.
  SET PF-STATUS 'ZSTATUS'.
*  SET TITLEBAR 'xxx'.


  CREATE OBJECT O_CONTAINER
    EXPORTING
*      PARENT                      =
      CONTAINER_NAME               = 'CON1'
         .

  IF SY-SUBRC = 0.
    CREATE OBJECT O_GRID
      EXPORTING
*        I_SHELLSTYLE      = 0
*        I_LIFETIME        =
         I_PARENT          = O_CONTAINER
        .
    IF SY-SUBRC = 0.
      WA_PRINT-RESERVELNS =   3.

      CALL METHOD O_GRID->SET_TABLE_FOR_FIRST_DISPLAY
        EXPORTING
*          I_BUFFER_ACTIVE               =
*          I_BYPASSING_BUFFER            =
*          I_CONSISTENCY_CHECK           =
          I_STRUCTURE_NAME               = 'EKKO'
*          IS_VARIANT                    =
*          I_SAVE                        =
*          I_DEFAULT                     = 'X'
*          IS_LAYOUT                     =
*          IS_PRINT                      =
*          IT_SPECIAL_GROUPS             =
*          IT_TOOLBAR_EXCLUDING          =
*          IT_HYPERLINK                  =
*          IT_ALV_GRAPHICS               =
*          IT_EXCEPT_QINFO               =
*          IR_SALV_ADAPTER               =
        CHANGING
          IT_OUTTAB                      = IT_EKKO
*          IT_FIELDCATALOG               =
*          IT_SORT                       =
*          IT_FILTER                     =
*        EXCEPTIONS
*          INVALID_PARAMETER_COMBINATION = 1
*          PROGRAM_ERROR                 = 2
*          TOO_MANY_LINES                = 3
*          others                        = 4
              .
      IF SY-SUBRC <> 0.
*       MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*                  WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.

    ENDIF.

  ENDIF.


DATA : O_HANDLER TYPE REF TO LCL_EVENT.
CREATE OBJECT O_HANDLER .

SET HANDLER : O_HANDLER->HANDLE_TOP_OF_PAGE FOR O_GRID,
              O_HANDLER->HANDLE_TOP_OF_LIST FOR O_GRID,
              O_HANDLER->HANDLE_END_OF_LIST FOR O_GRID,
              O_HANDLER->HANDLE_END_OF_PAGE FOR O_GRID.

ENDMODULE.                 " STATUS_9001  OUTPUT
*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_9001  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE USER_COMMAND_9001 INPUT.
CASE SY-UCOMM.
  WHEN 'BACK'.
  LEAVE TO SCREEN 0.
ENDCASE.
ENDMODULE.                 " USER_COMMAND_9001  INPUT