report ekko ekpo konv

19
*&---------------------------------------------------------------------* *& Report ZASALV_REPORT9 *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT zasalv_report9. TYPE-POOLS: slis. TABLES: ekko, ekpo,konv. TYPES: BEGIN OF ty_ekko, "Purchasing Document Header ebeln TYPE ekko-ebeln, "Purchasing Document Number bukrs TYPE ekko-bukrs, "Company Code bstyp TYPE ekko-bstyp, "Purchasing Document Category statu TYPE ekko-statu, "Status of Purchasing Document aedat TYPE ekko-aedat, "Date on Which Record Was Created ernam TYPE ekko-ernam, "Name of Person who Created lifnr TYPE ekko-lifnr, knumv TYPE knumv, END OF ty_ekko. TYPES: BEGIN OF ty_ekpo, "Purchasing Document Item ebeln TYPE ekpo-ebeln, "Purchasing Document Number ebelp TYPE ekpo-ebelp, "Item Number of Purchasing Document loekz TYPE ekpo-loekz, "Deletion Indicator in Purchasing Document matnr TYPE ekpo-matnr, "Material Number bukrs TYPE ekpo-bukrs, "Company Code werks TYPE ekpo-werks, "Plant lgort TYPE ekpo-lgort, menge TYPE ekpo-menge, netpr TYPE ekpo-netpr, netwr TYPE ekpo-netwr, END OF ty_ekpo. TYPES: BEGIN OF ty_ekko_ekpo, "Purchasing Document Item ebeln TYPE ekpo-ebeln, "Purchasing Document Number ebelp TYPE ekpo-ebelp, "Item Number of Purchasing Document knumv TYPE knumv, loekz TYPE ekpo-loekz, "Deletion Indicator in Purchasing Document

Upload: 143deep

Post on 24-Oct-2014

136 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Report Ekko Ekpo Konv

*&---------------------------------------------------------------------**& Report  ZASALV_REPORT9*&*&---------------------------------------------------------------------**&*&*&---------------------------------------------------------------------*

REPORT  zasalv_report9.TYPE-POOLS: slis.TABLES: ekko, ekpo,konv.

TYPES: BEGIN OF ty_ekko,      "Purchasing Document Header        ebeln TYPE ekko-ebeln,     "Purchasing Document Number        bukrs TYPE ekko-bukrs,     "Company Code        bstyp TYPE ekko-bstyp,     "Purchasing Document Category        statu TYPE  ekko-statu,    "Status of Purchasing Document        aedat TYPE  ekko-aedat,    "Date on Which Record Was Created        ernam TYPE  ekko-ernam,    "Name of Person who Created        lifnr TYPE  ekko-lifnr,        knumv TYPE  knumv,  END OF ty_ekko.

TYPES: BEGIN OF ty_ekpo,      "Purchasing Document Item        ebeln TYPE  ekpo-ebeln,    "Purchasing Document Number        ebelp TYPE  ekpo-ebelp,    "Item Number of Purchasing Document        loekz TYPE  ekpo-loekz,    "Deletion Indicator in Purchasing Document        matnr TYPE  ekpo-matnr,    "Material Number        bukrs TYPE  ekpo-bukrs,    "Company Code        werks TYPE  ekpo-werks,    "Plant        lgort TYPE  ekpo-lgort,        menge TYPE  ekpo-menge,        netpr TYPE  ekpo-netpr,        netwr TYPE  ekpo-netwr,      END OF  ty_ekpo.

TYPES: BEGIN OF ty_ekko_ekpo,      "Purchasing Document Item        ebeln TYPE  ekpo-ebeln,    "Purchasing Document Number        ebelp TYPE  ekpo-ebelp,    "Item Number of Purchasing Document        knumv TYPE  knumv,        loekz TYPE  ekpo-loekz,    "Deletion Indicator in Purchasing Document        matnr TYPE  ekpo-matnr,    "Material Number        bukrs TYPE  ekpo-bukrs,    "Company Code        werks TYPE  ekpo-werks,    "Plant        lgort TYPE  ekpo-lgort,        menge TYPE  ekpo-menge,        netpr TYPE  ekpo-netpr,        netwr TYPE  ekpo-netwr,      END OF  ty_ekko_ekpo.

Page 2: Report Ekko Ekpo Konv

TYPES: BEGIN OF ty_konv,        knumv TYPE  konv-knumv,        kposn TYPE  konv-kposn,        kappl TYPE  konv-kappl,        kschl TYPE  konv-kschl,        kdatu TYPE  konv-kdatu,        kawrt TYPE  konv-kawrt,        kbetr TYPE  konv-kbetr,        waers TYPE konv-waers,      END OF  ty_konv.

TYPES: BEGIN OF ty_final1,          ebeln TYPE ekko-ebeln,     "Purchasing Document Number        bukrs TYPE ekko-bukrs,     "Company Code        bstyp TYPE ekko-bstyp,     "Purchasing Document Category        statu TYPE  ekko-statu,    "Status of Purchasing Document        aedat TYPE  ekko-aedat,    "Date on Which Record Was Created        ernam TYPE  ekko-ernam,    "Name of Person who Created        lifnr TYPE  ekko-lifnr,        knumv TYPE  ekko-knumv,

        ebelp TYPE  ebelp,    "Item Number of Purchasing Document        loekz TYPE  eloek,    "Deletion Indicator in Purchasing Document        matnr TYPE  matnr,    "Material Number        werks TYPE  ewerk,    "Plant        lgort TYPE lgort_d,        menge TYPE bstmg,        netpr TYPE bprei,        netwr TYPE bwert,  END OF ty_final1.

TYPES: BEGIN OF ty_final2,        ebeln TYPE ekko-ebeln,     "Purchasing Document Number        bukrs TYPE ekko-bukrs,     "Company Code        bstyp TYPE ekko-bstyp,     "Purchasing Document Category        statu TYPE  ekko-statu,    "Status of Purchasing Document        aedat TYPE  ekko-aedat,    "Date on Which Record Was Created        ernam TYPE  ekko-ernam,    "Name of Person who Created        lifnr TYPE  elifn,        knumv TYPE  ekko-knumv,

        kposn TYPE  kposn,        kappl TYPE  kappl,        kschl TYPE  kscha,        kdatu TYPE  kdatu,        kawrt TYPE  kawrt,        kbetr TYPE kbetr,        waers TYPE waers,

Page 3: Report Ekko Ekpo Konv

  END OF ty_final2.

TYPES:  BEGIN OF ty_final3,      ebeln TYPE  ebeln,    "Purchasing Document Number      ebelp TYPE  ebelp,    "Item Number of Purchasing Document      loekz TYPE  eloek,    "Deletion Indicator in Purchasing Document      matnr TYPE  matnr,    "Material Number      bukrs TYPE  bukrs,    "Company Code      werks TYPE  ewerk,    "Plant      lgort TYPE lgort_d,      menge TYPE bstmg,      netpr TYPE bprei,      netwr TYPE bwert,

      kposn TYPE  kposn,      kappl TYPE  kappl,      kschl TYPE  kscha,      kdatu TYPE  kdatu,      kawrt TYPE  kawrt,      kbetr TYPE kbetr,      waers TYPE waers,  END OF ty_final3.

DATA: it_ekko TYPE STANDARD TABLE OF ty_ekko,      wa_ekko TYPE ty_ekko,      it_ekpo TYPE STANDARD TABLE OF ty_ekpo,      wa_ekpo TYPE ty_ekpo,      it_ekko_ekpo TYPE STANDARD TABLE OF ty_ekko_ekpo,      wa_ekko_ekpo TYPE ty_ekko_ekpo,      it_konv TYPE STANDARD TABLE OF ty_konv,      wa_konv TYPE ty_konv,      sel,      i TYPE int4,

      wa_lay   TYPE slis_layout_alv,                               "LAYOUT DECLARATION via 'SLIS'.      wa_lay1  TYPE slis_layout_alv,                               "LAYOUT DECLARATION via 'SLIS'.      wa_lay2  TYPE slis_layout_alv,                               "LAYOUT DECLARATION via 'SLIS'.

      it_fcat  TYPE slis_t_fieldcat_alv,      it_fcat1 TYPE slis_t_fieldcat_alv,      it_fcat2 TYPE slis_t_fieldcat_alv,      it_fcat3 TYPE slis_t_fieldcat_alv,

      wa_fcat  TYPE slis_fieldcat_alv,      wa_fcat1 TYPE slis_fieldcat_alv,      wa_fcat2  TYPE slis_fieldcat_alv,

Page 4: Report Ekko Ekpo Konv

      wa_fcat3  TYPE slis_fieldcat_alv,

      lv_ebeln TYPE char16,      lv_ebeln1 TYPE char16,      lv_ebeln2.

START-OF-SELECTION.  PERFORM get_data.  PERFORM create_field_catalog.  PERFORM display.

  SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.  SELECT-OPTIONS: s_ebeln FOR ekko-ebeln.  SELECTION-SCREEN : END OF BLOCK b1.

*&---------------------------------------------------------------------**&      Form  GET_DATA*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text*----------------------------------------------------------------------*FORM get_data .

  SELECT      ebeln      bukrs      bstyp      statu      aedat      ernam      lifnr      knumv    FROM  ekko  INTO TABLE it_ekko      UP TO 20 ROWS WHERE ebeln IN  s_ebeln .

  LOOP AT it_ekko  INTO wa_ekko.    IF wa_ekko-ebeln IS INITIAL.      DELETE it_ekko.    ENDIF.  ENDLOOP.

Page 5: Report Ekko Ekpo Konv

ENDFORM.                    " GET_DATA*&---------------------------------------------------------------------**&      Form  CREATE_FIELD_CATALOG*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text*----------------------------------------------------------------------*FORM create_field_catalog .

  wa_fcat-fieldname = 'EBELN'.  wa_fcat-tabname   =  'IT_EKKO'.  wa_fcat-seltext_l = 'PURCHASING DOC NO'.  wa_fcat-col_pos    = 1.  wa_fcat-hotspot   = 'X'.  wa_lay-box_fieldname = 'SEL'.  APPEND wa_fcat  TO  it_fcat.  CLEAR wa_fcat.

  wa_fcat-fieldname = 'BUKRS'.  wa_fcat-tabname   =  'IT_EKKO'.  wa_fcat-seltext_l = 'COMPANY CODE'.  wa_fcat-col_pos    = 2.  APPEND wa_fcat  TO  it_fcat.  CLEAR wa_fcat.

*  wa_fcat-fieldname = 'KNUMV'.*  wa_fcat-seltext_l = 'NO OF DOC CONDITION'.*  wa_fcat-col_pos    = 3.*  APPEND wa_fcat  TO  it_fcat.*  CLEAR wa_fcat.

  wa_fcat-fieldname = 'BSTYP'.  wa_fcat-tabname   =  'IT_EKKO'.  wa_fcat-seltext_l = 'PURCHASING DOC NO'.  wa_fcat-col_pos    = 3.  APPEND wa_fcat  TO  it_fcat.  CLEAR wa_fcat.

  wa_fcat-fieldname = 'STATU'.  wa_fcat-tabname   =  'IT_EKKO'.  wa_fcat-seltext_l = 'STATUS OF PURCHASING DOC'.  wa_fcat-col_pos    = 4.  APPEND wa_fcat  TO  it_fcat.  CLEAR wa_fcat.

  wa_fcat-fieldname = 'AEDAT'.

Page 6: Report Ekko Ekpo Konv

  wa_fcat-tabname   =  'IT_EKKO'.  wa_fcat-seltext_l = 'DATE ON WHICH RECORD Created'.  wa_fcat-col_pos    = 5.  APPEND wa_fcat  TO  it_fcat.  CLEAR wa_fcat.

  wa_fcat-fieldname = 'ERNAM'.  wa_fcat-tabname   =  'IT_EKKO'.  wa_fcat-seltext_l = 'NAME OF Person who Created the Object'.  wa_fcat-col_pos    = 6.  APPEND wa_fcat  TO  it_fcat.  CLEAR wa_fcat.

  wa_fcat-fieldname = 'LIFNR'.  wa_fcat-tabname   =  'IT_EKKO'.  wa_fcat-seltext_l = 'VENDOR ACCOUNT NO'.  wa_fcat-col_pos    = 7.  APPEND wa_fcat  TO  it_fcat.  CLEAR wa_fcat.

  wa_fcat-fieldname = 'KNUMV'.  wa_fcat-tabname   =  'IT_EKKO'.  wa_fcat-seltext_l = 'NO OF THE DOC condition'.  wa_fcat-col_pos    = 8.  APPEND wa_fcat  TO  it_fcat.  CLEAR wa_fcat.

ENDFORM.                    " CREATE_FIELD_CATALOG*&---------------------------------------------------------------------**&      Form  DISPLAY*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text*----------------------------------------------------------------------*FORM display .

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'   EXPORTING*   I_INTERFACE_CHECK                 = ' '*   I_BYPASSING_BUFFER                = ' '*   I_BUFFER_ACTIVE                   = ' '     i_callback_program                = sy-repid*   I_CALLBACK_PF_STATUS_SET          = ' '   i_callback_user_command           = 'USER_COMMAND'*   I_CALLBACK_TOP_OF_PAGE            = ' '*   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '*   I_CALLBACK_HTML_END_OF_LIST       = ' '

Page 7: Report Ekko Ekpo Konv

*   I_STRUCTURE_NAME                  =*   I_BACKGROUND_ID                   = ' '*   I_GRID_TITLE                      =*   I_GRID_SETTINGS                   =*   IS_LAYOUT                         =     it_fieldcat                       = it_fcat*   IT_EXCLUDING                      =*   IT_SPECIAL_GROUPS                 =*   IT_SORT                           =*   IT_FILTER                         =*   IS_SEL_HIDE                       =*   I_DEFAULT                         = 'X'*   I_SAVE                            = ' '*   IS_VARIANT                        =*   IT_EVENTS                         =*   IT_EVENT_EXIT                     =*   IS_PRINT                          =*   IS_REPREP_ID                      =*   I_SCREEN_START_COLUMN             = 0*   I_SCREEN_START_LINE               = 0*   I_SCREEN_END_COLUMN               = 0*   I_SCREEN_END_LINE                 = 0*   I_HTML_HEIGHT_TOP                 = 0*   I_HTML_HEIGHT_END                 = 0*   IT_ALV_GRAPHICS                   =*   IT_HYPERLINK                      =*   IT_ADD_FIELDCAT                   =*   IT_EXCEPT_QINFO                   =*   IR_SALV_FULLSCREEN_ADAPTER        =* IMPORTING*   E_EXIT_CAUSED_BY_CALLER           =*   ES_EXIT_CAUSED_BY_USER            =    TABLES      t_outtab                          = it_ekko   EXCEPTIONS     program_error                     = 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.                    " DISPLAY*&---------------------------------------------------------------------**&      Form  user_command*&---------------------------------------------------------------------**       text

Page 8: Report Ekko Ekpo Konv

*----------------------------------------------------------------------**      -->V_UCOMM    text*      -->SEL_FLD    text*----------------------------------------------------------------------*FORM user_command  USING v_ucomm LIKE sy-ucomm                                   sel_fld TYPE slis_selfield.  CASE v_ucomm.    WHEN '&IC1'.      IF sel_fld-fieldname = 'EBELN'.        lv_ebeln = sel_fld-value.        REFRESH it_ekpo.        PERFORM get_data1.        PERFORM prepare_final_data.**  CASE v_ucomm.**WHEN 'BACK' or 'EXIT' or 'CANCEL'.        PERFORM create_field_catalog1.*        clear it_ekpo.        PERFORM display1.        CLEAR wa_ekpo.

      ENDIF.  ENDCASE.ENDFORM.                    " USER_COMMAND*&---------------------------------------------------------------------**&      Form  GET_DATA1*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text*----------------------------------------------------------------------*FORM get_data1 .

  SELECT  ebeln           ebelp           loekz           matnr           bukrs           werks           lgort           menge           netpr           netwr    FROM ekpo  INTO TABLE it_ekpo    WHERE ebeln = lv_ebeln .

*  LOOP AT it_ekko  INTO wa_ekko.*    IF wa_ekko-ebeln IS INITIAL.*      DELETE it_ekko.

Page 9: Report Ekko Ekpo Konv

*    ENDIF.*  ENDLOOP.

ENDFORM.                                                    " GET_DATA1*&---------------------------------------------------------------------**&      Form  CREATE_FIELD_CATALOG1*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text*----------------------------------------------------------------------*FORM create_field_catalog1 .  REFRESH it_fcat1.

  wa_fcat1-fieldname = 'EBELN'.  wa_fcat1-tabname   =  'IT_EKPO'.  wa_fcat1-seltext_l = 'PURCHASING DOCUMENT NUMBER'.  wa_fcat1-col_pos    = 1.*  wa_fcat1-hotspot   = 'X'.*  wa_lay-box_fieldname = 'SEL'.  APPEND wa_fcat1  TO  it_fcat1.  CLEAR wa_fcat1.

  wa_fcat1-fieldname = 'EBELP'.  wa_fcat1-tabname   =  'IT_EKPO'.  wa_fcat1-seltext_l = 'ITEM NUMBER'.  wa_fcat1-col_pos    = 2.  APPEND wa_fcat1  TO  it_fcat1.  CLEAR wa_fcat1.

  wa_fcat1-fieldname = 'KNUMV'.  wa_fcat1-tabname   =  'IT_EKPO'.  wa_fcat1-seltext_l = 'NO OF DOC CONDITION'.  wa_fcat1-col_pos    = 3.  wa_fcat1-hotspot   = 'X'.  wa_lay-box_fieldname = 'SEL'.  APPEND wa_fcat1  TO  it_fcat1.  CLEAR wa_fcat1.

  wa_fcat1-fieldname = 'LOEKZ'.  wa_fcat1-tabname   =  'IT_EKPO'.  wa_fcat1-seltext_l = 'DELETION INDICATOR'.  wa_fcat1-col_pos    = 4.  APPEND wa_fcat1  TO  it_fcat1.  CLEAR wa_fcat1.

  wa_fcat1-fieldname = 'MATNR'.  wa_fcat1-tabname   =  'IT_EKPO'.

Page 10: Report Ekko Ekpo Konv

  wa_fcat1-seltext_l = 'MAT NUMBER'.  wa_fcat1-col_pos    = 5.  APPEND wa_fcat1  TO  it_fcat1.  CLEAR wa_fcat1.

  wa_fcat1-fieldname = 'BUKRS'.  wa_fcat1-tabname   =  'IT_EKPO'.  wa_fcat1-seltext_l = 'C CODE'.  wa_fcat1-col_pos    = 6.  APPEND wa_fcat1  TO  it_fcat1.  CLEAR wa_fcat1.

  wa_fcat1-fieldname = 'WERKS'.  wa_fcat1-tabname   =  'IT_EKPO'.  wa_fcat1-seltext_l = 'PLANT'.  wa_fcat1-col_pos    = 7.  APPEND wa_fcat1  TO  it_fcat1.  CLEAR wa_fcat1.

  wa_fcat1-fieldname = 'LGORT'.  wa_fcat1-tabname   =  'IT_EKPO'.  wa_fcat1-seltext_l = 'STORAGE LOCATION'.  wa_fcat1-col_pos    = 8.  APPEND wa_fcat1  TO  it_fcat1.  CLEAR wa_fcat1.

  wa_fcat1-fieldname = 'MENGE'.  wa_fcat1-tabname   =  'IT_EKPO'.  wa_fcat1-seltext_l = 'PO QUANTITY'.  wa_fcat1-col_pos    = 9.  APPEND wa_fcat1  TO  it_fcat1.  CLEAR wa_fcat1.

  wa_fcat1-fieldname = 'NETPR'.  wa_fcat1-tabname   =  'IT_EKPO'.  wa_fcat1-seltext_l = 'NET PRICE'.  wa_fcat1-col_pos    = 10.  APPEND wa_fcat1  TO  it_fcat1.  CLEAR wa_fcat1.

  wa_fcat1-fieldname = 'NETWR'.  wa_fcat1-tabname   =  'IT_EKPO'.  wa_fcat1-seltext_l = 'NET ORDER VALUE'.  wa_fcat1-col_pos    = 11.  APPEND wa_fcat1  TO  it_fcat1.  CLEAR wa_fcat1.*  CLEAR it_fcat1.

ENDFORM.                    " CREATE_FIELD_CATALOG1

Page 11: Report Ekko Ekpo Konv

*&---------------------------------------------------------------------**&      Form  DISPLAY1*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text*----------------------------------------------------------------------*FORM display1 .  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'    EXPORTING*   I_INTERFACE_CHECK                 = ' '*   I_BYPASSING_BUFFER                = ' '*   I_BUFFER_ACTIVE                   = ' '      i_callback_program                = sy-repid*   I_CALLBACK_PF_STATUS_SET          = ' '   i_callback_user_command           = 'USER_COMMAND1'*   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                         = WA_LAYOUT      it_fieldcat                       = it_fcat1*   IT_EXCLUDING                      =*   IT_SPECIAL_GROUPS                 =*   IT_SORT                           =*   IT_FILTER                         =*   IS_SEL_HIDE                       =*   I_DEFAULT                         = 'X'*   I_SAVE                            = ' '*   IS_VARIANT                        =*   IT_EVENTS                         =*   IT_EVENT_EXIT                     =*   IS_PRINT                          =*   IS_REPREP_ID                      =*   I_SCREEN_START_COLUMN             = 0*   I_SCREEN_START_LINE               = 0*   I_SCREEN_END_COLUMN               = 0*   I_SCREEN_END_LINE                 = 0*   I_HTML_HEIGHT_TOP                 = 0*   I_HTML_HEIGHT_END                 = 0*   IT_ALV_GRAPHICS                   =*   IT_HYPERLINK                      =*   IT_ADD_FIELDCAT                   =*   IT_EXCEPT_QINFO                   =

Page 12: Report Ekko Ekpo Konv

*   IR_SALV_FULLSCREEN_ADAPTER        =* IMPORTING*   E_EXIT_CAUSED_BY_CALLER           =*   ES_EXIT_CAUSED_BY_USER            =     TABLES       t_outtab                          = it_ekko_ekpo EXCEPTIONS   program_error                     = 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.                                                    " DISPLAY1

*&---------------------------------------------------------------------**&      Form  user_command1*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**      -->V_UCOMM1   text*      -->SEL_FLD1   text*----------------------------------------------------------------------*FORM user_command1  USING v_ucomm1 LIKE sy-ucomm                                   sel_fld1 TYPE slis_selfield.

  CASE v_ucomm1.    WHEN '&IC1'.      IF sel_fld1-fieldname = 'KNUMV'.        lv_ebeln1 = sel_fld1-value.*        REFRESH it_konv.        PERFORM get_data2.        PERFORM create_field_catalog2.        PERFORM display2.        CLEAR wa_konv.

      ENDIF.  ENDCASE.ENDFORM.                    " USER_COMMAND

*&---------------------------------------------------------------------**&      Form  CREATE_FIELD_CATALOG2*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text

Page 13: Report Ekko Ekpo Konv

*----------------------------------------------------------------------*FORM create_field_catalog2 .

  REFRESH it_fcat2.

  wa_fcat2-fieldname = 'KNUMV'.  wa_fcat2-tabname   =  'IT_KONV'.  wa_fcat2-seltext_l = 'Number of the document condition'.  wa_fcat2-col_pos    = 3.  wa_fcat2-hotspot   = 'X'.  wa_lay-box_fieldname = 'SEL'.  APPEND wa_fcat2  TO  it_fcat2.  CLEAR wa_fcat2.

  wa_fcat2-fieldname = 'KPOSN'.  wa_fcat2-tabname   =  'IT_KONV'.  wa_fcat2-seltext_l = 'Application'.  wa_fcat2-col_pos    = 2.  APPEND wa_fcat2  TO  it_fcat2.  CLEAR wa_fcat2.

  wa_fcat2-fieldname = 'KAPPL'.  wa_fcat2-tabname   =  'IT_KONV'.  wa_fcat2-seltext_l = 'Application'.  wa_fcat2-col_pos    = 1.*  wa_fcat2-hotspot    = 'X'.*  wa_lay-box_fieldname ='SEL'.  APPEND wa_fcat2  TO  it_fcat2.  CLEAR wa_fcat2.

  wa_fcat2-fieldname = 'KSCHL'.  wa_fcat2-tabname   =  'IT_KONV'.  wa_fcat2-seltext_l = 'Condition type'.  wa_fcat2-col_pos    = 4.  APPEND wa_fcat2  TO  it_fcat2.  CLEAR wa_fcat2.

  wa_fcat2-fieldname = 'KDATU'.  wa_fcat2-tabname   =  'IT_KONV'.  wa_fcat2-seltext_l = 'Condition pricing date'.  wa_fcat2-col_pos    = 5.  APPEND wa_fcat2  TO  it_fcat2.  CLEAR wa_fcat2.

  wa_fcat2-fieldname = 'KAWRT'.  wa_fcat2-tabname   =  'IT_KONV'.  wa_fcat2-seltext_l = 'Condition base value'.  wa_fcat2-col_pos    = 6.

Page 14: Report Ekko Ekpo Konv

  APPEND wa_fcat2  TO  it_fcat2.  CLEAR wa_fcat2.

  wa_fcat2-fieldname = 'KBETR'.  wa_fcat2-tabname   =  'IT_KONV'.  wa_fcat2-seltext_l = 'Rate (condition amount or percentage)'.  wa_fcat2-col_pos    = 7.  APPEND wa_fcat2  TO  it_fcat2.  CLEAR wa_fcat2.

  wa_fcat2-fieldname = 'WAERS'.  wa_fcat2-tabname   =  'IT_KONV'.  wa_fcat2-seltext_l = 'Currency Key'.  wa_fcat2-col_pos    = 8.  APPEND wa_fcat2  TO  it_fcat2.  CLEAR wa_fcat2.

ENDFORM.                    " CREATE_FIELD_CATALOG2

*&---------------------------------------------------------------------**&      Form  GET_DATA2*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text*----------------------------------------------------------------------*FORM get_data2 .

  SELECT  knumv          kposn          kappl          kschl          kdatu          kawrt          kbetr          waers    FROM konv  INTO TABLE it_konv    WHERE knumv = lv_ebeln1 .

ENDFORM.                                                    " GET_DATA2

*&---------------------------------------------------------------------**&      Form  DISPLAY2*&---------------------------------------------------------------------**       text

Page 15: Report Ekko Ekpo Konv

*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text*----------------------------------------------------------------------*FORM display2 .

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'   EXPORTING*   I_INTERFACE_CHECK                 = ' '*   I_BYPASSING_BUFFER                = ' '*   I_BUFFER_ACTIVE                   = ' '     i_callback_program                = sy-repid*   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                         =     it_fieldcat                       = it_fcat2*   IT_EXCLUDING                      =*   IT_SPECIAL_GROUPS                 =*   IT_SORT                           =*   IT_FILTER                         =*   IS_SEL_HIDE                       =*   I_DEFAULT                         = 'X'*   I_SAVE                            = ' '*   IS_VARIANT                        =*   IT_EVENTS                         =*   IT_EVENT_EXIT                     =*   IS_PRINT                          =*   IS_REPREP_ID                      =*   I_SCREEN_START_COLUMN             = 0*   I_SCREEN_START_LINE               = 0*   I_SCREEN_END_COLUMN               = 0*   I_SCREEN_END_LINE                 = 0*   I_HTML_HEIGHT_TOP                 = 0*   I_HTML_HEIGHT_END                 = 0*   IT_ALV_GRAPHICS                   =*   IT_HYPERLINK                      =*   IT_ADD_FIELDCAT                   =*   IT_EXCEPT_QINFO                   =*   IR_SALV_FULLSCREEN_ADAPTER        =* IMPORTING*   E_EXIT_CAUSED_BY_CALLER           =*   ES_EXIT_CAUSED_BY_USER            =

Page 16: Report Ekko Ekpo Konv

    TABLES      t_outtab                          = it_konv   EXCEPTIONS     program_error                     = 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.                                                    " DISPLAY2

*&---------------------------------------------------------------------**&      Form  PREPARE_FINAL_DATA*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text*----------------------------------------------------------------------*FORM prepare_final_data .  CLEAR wa_ekpo.  LOOP AT it_ekpo INTO wa_ekpo.    MOVE-CORRESPONDING wa_ekpo TO wa_ekko_ekpo.

    CLEAR wa_ekko.    READ TABLE it_ekko INTO wa_ekko WITH KEY ebeln = wa_ekpo-ebeln.    IF sy-subrc EQ 0.      wa_ekko_ekpo-knumv = wa_ekko-knumv.    ENDIF.

    APPEND wa_ekko_ekpo TO it_ekko_ekpo.  ENDLOOP.

ENDFORM.                    " PREPARE_FINAL_DATA