alv_oo_1d

2
REPORT zgktst1 . TABLES : ekpo . * Purchasing document item TYPES : BEGIN OF ty_ekpo , ebeln TYPE ekpo - ebeln , "PO # ebelp TYPE ekpo - ebelp , "PO item # matnr TYPE ekpo - matnr , "Material # menge TYPE ekpo - menge , "Quantity meins TYPE ekpo - meins , "Unit END OF ty_ekpo . DATA : it_ekpo TYPE STANDARD TABLE OF ty_ekpo INITIAL SIZE 0 , wa_ekpo TYPE ty_ekpo , gr_alv TYPE REF TO cl_salv_table , gr_err TYPE REF TO cx_salv_error . SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text - 001 . SELECT-OPTIONS : so_ebeln FOR ekpo - ebeln , so_ebelp FOR ekpo - ebelp . SELECTION-SCREEN END OF BLOCK b1 . START-OF-SELECTION . SELECT ebeln ebelp matnr menge meins FROM ekpo INTO TABLE it_ekpo WHERE ebeln IN so_ebeln AND ebelp IN so_ebelp . TRY . CALL METHOD cl_salv_table => factory EXPORTING list_display = if_salv_c_bool_sap => false IMPORTING r_salv_table = gr_alv CHANGING t_table = it_ekpo . CATCH cx_salv_msg INTO gr_err . PERFORM display_error USING gr_err . ENDTRY . CALL METHOD gr_alv -> display ( ) . * CALL METHOD gr_alv->refresh * EXPORTING ** refresh_mode = if_salv_c_refresh=>soft * refresh_mode = if_salv_c_refresh=>full . * * CALL METHOD gr_alv->set_data * CHANGING * t_table = it_ekko. * .

Upload: nickhansen

Post on 24-Dec-2015

215 views

Category:

Documents


0 download

DESCRIPTION

ddd

TRANSCRIPT

Page 1: ALV_OO_1d

REPORT zgktst1.

TABLES: ekpo.

* Purchasing document itemTYPES: BEGIN OF ty_ekpo,        ebeln TYPE ekpo-ebeln,  "PO #        ebelp TYPE ekpo-ebelp,  "PO item #        matnr TYPE ekpo-matnr,  "Material #        menge TYPE ekpo-menge,  "Quantity        meins TYPE ekpo-meins,  "Unit       END OF ty_ekpo.

DATA: it_ekpo TYPE STANDARD TABLE OF ty_ekpo INITIAL SIZE 0,      wa_ekpo TYPE ty_ekpo,      gr_alv  TYPE REF TO cl_salv_table,      gr_err  TYPE REF TO cx_salv_error.

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.SELECT-OPTIONS: so_ebeln FOR ekpo-ebeln,                so_ebelp FOR ekpo-ebelp.SELECTION-SCREEN END OF BLOCK b1.

START-OF-SELECTION.  SELECT ebeln         ebelp         matnr         menge         meins    FROM ekpo    INTO TABLE it_ekpo   WHERE ebeln IN so_ebeln     AND ebelp IN so_ebelp.

  TRY.      CALL METHOD cl_salv_table=>factory        EXPORTING          list_display = if_salv_c_bool_sap=>false        IMPORTING          r_salv_table = gr_alv        CHANGING          t_table      = it_ekpo.    CATCH cx_salv_msg INTO gr_err.      PERFORM display_error USING gr_err.  ENDTRY.

  CALL METHOD gr_alv->display( )    .

*  CALL METHOD gr_alv->refresh*      EXPORTING**      refresh_mode = if_salv_c_refresh=>soft*      refresh_mode = if_salv_c_refresh=>full      .**  CALL METHOD gr_alv->set_data*    CHANGING*      t_table = it_ekko.*  .

*&---------------------------------------------------------------------**&      Form  DISPLAY_ERROR*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**      -->P_GR_ERR  text*----------------------------------------------------------------------*FORM display_error  USING    p_gr_err TYPE REF TO cx_salv_error.

Page 2: ALV_OO_1d

  DATA: msg TYPE bal_s_msg.

  msg = p_gr_err->get_message( ).

  MESSAGE ID msg-msgid          TYPE msg-msgty          NUMBER msg-msgno          WITH msg-msgv1               msg-msgv2               msg-msgv3               msg-msgv4.

ENDFORM.                    " DISPLAY_ERROR