Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Code for capex report

Former Member
0 Likes
7,482

hello abaper's,

this is my code for CAPEX report

--------------------------------------------------------

*&---------------------------------------------------------------------*

*& Report  ZCAPEX_REPORT

*&

*&---------------------------------------------------------------------*

*&

*&

*&---------------------------------------------------------------------*

REPORT  ZCAPEX_REPORT.

TYPE-POOLS: SLIS.

*&---------------------------------------------------------------------*

*&  TABLE

*&---------------------------------------------------------------------*

TABLES : ekpo, ekko, lfa1, ekkn, ekbe, anla, auaa .

*&---------------------------------------------------------------------*

*&  TYEPS

*&---------------------------------------------------------------------*

TYPES: BEGIN OF TP_EKKO,

         EBELN TYPE EKKO-EBELN"Purchasing Document Number

         BEDAT TYPE EKKO-BEDAT"Purchasing Document Date

         LIFNR TYPE EKKO-LIFNR"Vendor Account Number

       END OF TP_EKKO.

DATA: IT_EKKO TYPE STANDARD TABLE OF TP_EKKO  INITIAL SIZE 0 .

DATA: WA_EKKO TYPE TP_EKKO.

TYPES: BEGIN OF TP_EKPO,

         EBELN TYPE EKPO-EBELN"Purchasing Document Number

         EBELP TYPE EKPO-EBELP"Item Number of Purchasing Document

         MATNR TYPE EKPO-MATNR"material number

         TXZ01 TYPE EKPO-TXZ01"material description

         MENGE TYPE EKPO-MENGE"Purchase Order Quantity

         NETPR TYPE EKPO-NETPR"Net Price in Purchasing Document (in Document Currency)

         WERKS TYPE EKPO-WERKS"Plant Number

         MEINS TYPE EKPO-MEINS"Purchase Order Unit of Measure

        KNTTP TYPE EKPO-KNTTP"Account Assignment Category

       END OF TP_EKPO.

DATA: IT_EKPO TYPE STANDARD TABLE OF TP_EKPO INITIAL SIZE 0.

DATA: WA_EKPO TYPE TP_EKPO.

TYPES: BEGIN OF TP_LFA1,

         NAME1 TYPE LFA1-NAME1"Vendor name

         LIFNR TYPE LFA1-LIFNR"Vendor Account Number

       END OF TP_LFA1.

DATA: IT_LFA1 TYPE STANDARD TABLE OF TP_LFA1  INITIAL SIZE 0 .

DATA: WA_LFA1 TYPE TP_LFA1.

TYPES: BEGIN OF TP_EKBE,

           EBELN TYPE EKBE-EBELN"Purchasing Document Number

           EBELP TYPE EKPO-EBELP"Item Number of Purchasing Document

           BELNR TYPE EKBE-BELNR"Number of Material Document

           BWART TYPE EKBE-BWART"Movement Type (Inventory Management)

           LFGJA TYPE EKBE-LFGJA"Fiscal Year of a Reference Document

           GJAHR TYPE EKBE-GJAHR"Material Document Year

       END OF TP_EKBE.

DATA: IT_EKBE TYPE STANDARD TABLE OF TP_EKBE  INITIAL SIZE 0.

DATA: WA_EKBE TYPE TP_EKBE.

TYPES: BEGIN OF TP_EKKN,

         AUFNR TYPE EKKN-AUFNR"Order Number

         ANLN1 TYPE EKKN-ANLN1"Main Asset Number

         ANLN2 TYPE EKKN-ANLN2"Asset Subnumber

         EBELN TYPE EKKN-EBELN"Purchasing Document Number

    EBELp TYPE EKKN-EBELp,

       END OF TP_EKKN.

DATA: IT_EKKN TYPE STANDARD TABLE OF TP_EKKN INITIAL SIZE 0 .

DATA: WA_EKKN TYPE TP_EKKN.

TYPES: BEGIN OF TP_ANLA,

         ANLKL TYPE ANLA-ANLKL"Asset class

         ANLN1 TYPE ANLA-ANLN1"Main Asset Number

       END OF TP_ANLA.

DATA: IT_ANLA TYPE STANDARD TABLE OF TP_ANLA INITIAL SIZE 0.

DATA: WA_ANLA TYPE TP_ANLA.

TYPES: BEGIN OF TP_AUAA,

         BELNR1 TYPE AUAA-BELNR, "Number of a settlement document

         ANLN1 TYPE AUAA-ANLN1"Main Asset Number

       END OF TP_AUAA.

DATA: IT_AUAA TYPE STANDARD TABLE OF TP_AUAA INITIAL SIZE 0.

DATA: WA_AUAA TYPE TP_AUAA.

TYPES: BEGIN OF TP_NEW,

         EBELN TYPE EKKO-EBELN,

         BEDAT TYPE EKKO-BEDAT,

         LIFNR TYPE EKKO-LIFNR,

         MATNR TYPE EKPO-MATNR,

         TXZ01 TYPE EKPO-TXZ01,

         MENGE TYPE EKPO-MENGE,

         NETPR TYPE EKPO-NETPR,

         WERKS TYPE EKPO-WERKS,

         EBELP TYPE EKPO-EBELP,

         MEINS TYPE EKPO-MEINS,

         NAME1 TYPE LFA1-NAME1,

         BELNR TYPE EKBE-BELNR,

         BWART TYPE EKBE-BWART,

         LFGJA TYPE EKBE-LFGJA,

         GJAHR TYPE EKBE-GJAHR,

         AUFNR TYPE EKKN-AUFNR,

         ANLN1 TYPE EKKN-ANLN1,

         ANLN2 TYPE EKKN-ANLN2,

         ANLKL TYPE ANLA-ANLKL,

         BELNR1 TYPE AUAA-BELNR,

       END OF TP_NEW.

DATA: IT_NEW TYPE STANDARD TABLE OF TP_NEW INITIAL SIZE 0.

DATA: WA_NEW TYPE TP_NEW.

DATA : IT_FCAT TYPE slis_t_fieldcat_alv.

DATA : WA_FCAT LIKE LINE OF IT_FCAT.

*&---------------------------------------------------------------------*

*&  LAYOUT

*&---------------------------------------------------------------------*

SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE title101.

SELECT-OPTIONS: S_EBELN FOR EKKO-EBELN.     "Purchase Order

SELECT-OPTIONS: S_BEDAT FOR EKKO-BEDAT"Purchasing Document Date

SELECTION-SCREEN END OF BLOCK B1.

INITIALIZATION.

title101 = 'Input Parameters'.

*&---------------------------------------------------------------------*

*&  MAIN PROGRAM

*&---------------------------------------------------------------------*

START-OF-SELECTION.

PERFORM DATAFETCH.

PERFORM FIELCAT.

PERFORM GRID.

*&---------------------------------------------------------------------*

*&  TOP OF PAGE

*&---------------------------------------------------------------------*

TOP-OF-PAGE.

WRITE : 30 'CAPEX STATUS REPORT'

  INVERSE OFF.

WRITE: SY-ULINE .

*&---------------------------------------------------------------------*

*&      Form  DATAFETCH

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM DATAFETCH .

SELECT EBELN

        BEDAT

        LIFNR

   FROM EKKO

   INTO TABLE IT_EKKO WHERE EBELN IN S_EBELN AND BEDAT IN S_BEDAT.

IF IT_EKKO IS NOT INITIAL.

   SELECT NAME1

          LIFNR

     FROM LFA1

     INTO TABLE IT_LFA1

     FOR ALL ENTRIES IN IT_EKKO WHERE LIFNR EQ IT_EKKO-LIFNR.

   SELECT  EBELN

           EBELP

           MATNR

           TXZ01

           MENGE

           NETPR

           WERKS

           MEINS

           KNTTP

     FROM EKPO

     INTO TABLE IT_EKPO

     FOR ALL ENTRIES IN IT_EKKO WHERE EBELN EQ IT_EKKO-EBELN AND KNTTP = 'A'.

   SELECT EBELN

          EBELP

          BELNR

          BWART

          LFGJA

          GJAHR

     FROM EKBE

     INTO TABLE IT_EKBE

     FOR ALL ENTRIES IN IT_EKPO WHERE EBELN EQ IT_EKPO-EBELN AND EBELP EQ IT_EKPO-EBELP.

    SELECT AUFNR

           ANLN1

           ANLN2

           EBELN

           ebelp

     FROM EKKN

     INTO TABLE IT_EKKN

     FOR ALL ENTRIES IN IT_EKKO WHERE EBELN EQ IT_EKKO-EBELN .

IF IT_EKKN IS NOT INITIAL.

     SELECT ANLKL

            ANLN1

     FROM ANLA

     INTO TABLE IT_ANLA

     FOR ALL ENTRIES IN IT_EKKN WHERE ANLN1 EQ IT_EKKN-ANLN1.

     SELECT BELNR

            ANLN1

     FROM AUAA

     INTO TABLE IT_AUAA

     FOR ALL ENTRIES IN IT_EKKN WHERE ANLN1 EQ IT_EKKN-ANLN1.

Loop at it_EKbe INTO WA_EKbe.

     MOVE WA_EKBE-BELNR TO WA_NEW-BELNR.

     MOVE WA_EKBE-BWART TO WA_NEW-BWART.

     MOVE WA_EKBE-LFGJA TO WA_NEW-LFGJA.

     MOVE WA_EKBE-GJAHR TO WA_NEW-GJAHR.

Read table it_EKKN INTO WA_EKKN with key ebeln = wa_EKBE-EBELN

                                          ebelp = wa_EKBE-EBELP.

     MOVE WA_EKKN-AUFNR TO WA_NEW-AUFNR.

     MOVE WA_EKKN-ANLN1 TO WA_NEW-ANLN1.

     MOVE WA_EKKN-ANLN2 TO WA_NEW-ANLN2.

Read table it_EKKO into wa_ekko with key ebeln = wa_ekbe-ebeln.

     MOVE WA_EKKO-EBELN TO WA_NEW-EBELN.

     MOVE WA_EKKO-BEDAT TO WA_NEW-BEDAT.

Read table it_LFA1 INTO WA_LFA1 with key lifnr = wa_ekko-LIFNR .

     MOVE WA_LFA1-LIFNR to WA_NEW-LIFNR.

     MOVE WA_LFA1-NAME1 TO WA_NEW-NAME1.

Read table it_EKPO INTO WA_EKPO with key ebeln = wa_EKbe-EBELN

                                          ebelp = wa_ekbe-ebelp.

     MOVE WA_EKPO-WERKS TO WA_NEW-WERKS.

     MOVE WA_EKPO-MATNR TO WA_NEW-MATNR.

     MOVE WA_EKPO-TXZ01 TO WA_NEW-TXZ01.

     MOVE WA_EKPO-MEINS TO WA_NEW-MEINS.

     MOVE WA_EKPO-MENGE TO WA_NEW-MENGE.

     MOVE WA_EKPO-NETPR TO WA_NEW-NETPR.

     MOVE WA_EKPO-EBELP TO WA_NEW-EBELP.

READ TABLE it_anla INTO wa_anla WITH KEY anln1 wa_ekkn-anln1.

     MOVE WA_ANLA-ANLKL TO WA_NEW-ANLKL.

READ TABLE it_auaa INTO wa_auaa WITH KEY anln1 wa_ekkn-anln1.

     MOVE WA_AUAA-BELNR1 TO WA_NEW-BELNR1.

append WA_NEW to IT_NEW.

CLEAR: WA_new, WA_ekko.

endloop.

   ENDIF.

ENDIF.

ENDFORM.                    " DATAFETCH

*&---------------------------------------------------------------------*

*&      Form  FIELCAT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM FIELCAT .

* ----------------WERKS

WA_FCAT-COL_POS   = '1'.

WA_FCAT-FIELDNAME = 'WERKS'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'PLANT NO'.

WA_FCAT-OUTPUTLEN = '9'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- BELNR

WA_FCAT-COL_POS   = '2'.

WA_FCAT-FIELDNAME = 'BELNR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'MATERIAL DOC'.

WA_FCAT-OUTPUTLEN = '13'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- BEDAT

WA_FCAT-COL_POS   = '3'.

WA_FCAT-FIELDNAME = 'BEDAT'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'POSTING DATE'.

WA_FCAT-OUTPUTLEN = '13'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- LIFNR

WA_FCAT-COL_POS   = '4'.

WA_FCAT-FIELDNAME = 'LIFNR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'VENDOR NO'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- NAME1

WA_FCAT-COL_POS   = '5'.

WA_FCAT-FIELDNAME = 'NAME1'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'VENDOR NAME'.

WA_FCAT-OUTPUTLEN = '40'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- MATNR

WA_FCAT-COL_POS   = '6'.

WA_FCAT-FIELDNAME = 'MATNR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'MATERIAL NO'.

WA_FCAT-OUTPUTLEN = '20'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- TXZ01

WA_FCAT-COL_POS   = '7'.

WA_FCAT-FIELDNAME = 'TXZ01'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'MATERIAL DESCRIPTION'.

WA_FCAT-OUTPUTLEN = '40'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- MEINS

WA_FCAT-COL_POS   = '8'.

WA_FCAT-FIELDNAME = 'MEINS'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'UNIT MEASURE'.

WA_FCAT-OUTPUTLEN = '13'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- MENGE

WA_FCAT-COL_POS   = '9'.

WA_FCAT-FIELDNAME = 'MENGE'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'P.O. QTY'.

WA_FCAT-OUTPUTLEN = '9'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- NETPR

WA_FCAT-COL_POS   = '10'.

WA_FCAT-FIELDNAME = 'NETPR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'NET PRICE'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- GJAHR

WA_FCAT-COL_POS   = '11'.

WA_FCAT-FIELDNAME = 'GJAHR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'DOC YEAR'.

WA_FCAT-OUTPUTLEN = '9'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- LFGJA

WA_FCAT-COL_POS   = '12'.

WA_FCAT-FIELDNAME = 'LFGJA'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'FISCAL YEAR'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- BWART

WA_FCAT-COL_POS   = '13'.

WA_FCAT-FIELDNAME = 'BWART'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'MOVEMENT TYPE'.

WA_FCAT-OUTPUTLEN = '15'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*-------------------EBELN

WA_FCAT-COL_POS   = '14'.

WA_FCAT-FIELDNAME = 'EBELN'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'P.O. NO'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- EBELP

WA_FCAT-COL_POS   = '15'.

WA_FCAT-FIELDNAME = 'EBELP'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'ITEM NO'.

WA_FCAT-OUTPUTLEN = '9'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- AUFNR

WA_FCAT-COL_POS   = '16'.

WA_FCAT-FIELDNAME = 'AUFNR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'INTERNAL ORDER'.

WA_FCAT-OUTPUTLEN = '15'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- ANLN1

WA_FCAT-COL_POS   = '17'.

WA_FCAT-FIELDNAME = 'ANLN1'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'MAIN ASSET NO'.

WA_FCAT-OUTPUTLEN = '20'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

**------------------- ANLN2

WA_FCAT-COL_POS   = '18'.

WA_FCAT-FIELDNAME = 'ANLN2'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'SUBASSET NO'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- BELNR

WA_FCAT-COL_POS   = '19'.

WA_FCAT-FIELDNAME = 'BELNR1'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'SETTLE DOC NO'.

WA_FCAT-OUTPUTLEN = '15'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*-------------------ANLKL

WA_FCAT-COL_POS   = '20'.

WA_FCAT-FIELDNAME = 'ANLKL'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'ASSET CLASS'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

ENDFORM.                    " FIELCAT

*&---------------------------------------------------------------------*

*&      Form  GRID

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM GRID .

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

  EXPORTING

*   I_INTERFACE_CHECK                 = ' '

*   I_BYPASSING_BUFFER                = ' '

*   I_BUFFER_ACTIVE                   = ' '

    I_CALLBACK_PROGRAM                = 'ZCAPEX_REPORT'

*   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_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_NEW

* EXCEPTIONS

*   PROGRAM_ERROR                     = 1

*   OTHERS                            = 2

           .

IF sy-subrc <> 0.

* Implement suitable error handling here

ENDIF.

ENDFORM.                    " GRID

--------------------------------------------------------

i need one more favour from you all,

now i am taking main asset number from Table EKKN

i want the (fixed setteled) main asset number in my report from ANLA table

for which i can take condition from table BSIS field BSCHL ie posting key =70

now what should i do?

to get fixed final main asset number in my report

please reply

thank you,

in adavance

4 REPLIES 4
Read only

Former Member
0 Likes
5,150

Hi Nilesh,

If you are trying to join BSIS and ANLA tables then check how they are associated via t-code SQVI. Sample for you is,

If your requirement is something else do let us know.

BR,

Ankit.

Read only

0 Likes
5,150

thanks for reply,

but i need the rest all fields in my report

specially (AUAA-BELNR ---Number of a settlement document ) this one.

the auaa is cluster table .so, i cant take it in SQVI

Read only

Former Member
0 Likes
5,150

hello abaper's

i need to add the below fields in my code

Table ANEK & Fields name ANLU1 & ANLU2

Table ANEP  field BELNR(accounting document no).

can anyone please suggest me, i am new in apab

thank you


Read only

Former Member
0 Likes
5,150

I have done the below changes for the nesessory changes

the changes i made are in bold letters

pls somebody help mi out in this code

-------------------------------

*&---------------------------------------------------------------------*

*& Report  ZCAPEX_REPORT

*&

*&---------------------------------------------------------------------*

*&

*&

*&---------------------------------------------------------------------*

REPORT  ZCAPEX_REPORT.

TYPE-POOLS: SLIS.

*&---------------------------------------------------------------------*

*&  TABLE

*&---------------------------------------------------------------------*

TABLES : ekpo, ekko, lfa1, ekkn, ekbe, anla, auaa, anek, anep .

*&---------------------------------------------------------------------*

*&  TYEPS

*&---------------------------------------------------------------------*

TYPES: BEGIN OF TP_EKKO,

         EBELN TYPE EKKO-EBELN"Purchasing Document Number

         BEDAT TYPE EKKO-BEDAT"Purchasing Document Date

         LIFNR TYPE EKKO-LIFNR"Vendor Account Number

       END OF TP_EKKO.

DATA: IT_EKKO TYPE STANDARD TABLE OF TP_EKKO  INITIAL SIZE 0 .

DATA: WA_EKKO TYPE TP_EKKO.

TYPES: BEGIN OF TP_EKPO,

         EBELN TYPE EKPO-EBELN"Purchasing Document Number

         EBELP TYPE EKPO-EBELP"Item Number of Purchasing Document

         MATNR TYPE EKPO-MATNR"material number

         TXZ01 TYPE EKPO-TXZ01"material description

         MENGE TYPE EKPO-MENGE"Purchase Order Quantity

         NETPR TYPE EKPO-NETPR"Net Price in Purchasing Document (in Document Currency)

         WERKS TYPE EKPO-WERKS"Plant Number

         MEINS TYPE EKPO-MEINS"Purchase Order Unit of Measure

        KNTTP TYPE EKPO-KNTTP"Account Assignment Category

       END OF TP_EKPO.

DATA: IT_EKPO TYPE STANDARD TABLE OF TP_EKPO INITIAL SIZE 0.

DATA: WA_EKPO TYPE TP_EKPO.

TYPES: BEGIN OF TP_LFA1,

         NAME1 TYPE LFA1-NAME1"Vendor name

         LIFNR TYPE LFA1-LIFNR"Vendor Account Number

       END OF TP_LFA1.

DATA: IT_LFA1 TYPE STANDARD TABLE OF TP_LFA1  INITIAL SIZE 0 .

DATA: WA_LFA1 TYPE TP_LFA1.

TYPES: BEGIN OF TP_EKBE,

           EBELN TYPE EKBE-EBELN"Purchasing Document Number

           EBELP TYPE EKPO-EBELP"Item Number of Purchasing Document

           BELNR TYPE EKBE-BELNR"Number of Material Document

           BWART TYPE EKBE-BWART"Movement Type (Inventory Management)

           LFGJA TYPE EKBE-LFGJA"Fiscal Year of a Reference Document

           GJAHR TYPE EKBE-GJAHR"Material Document Year

       END OF TP_EKBE.

DATA: IT_EKBE TYPE STANDARD TABLE OF TP_EKBE  INITIAL SIZE 0.

DATA: WA_EKBE TYPE TP_EKBE.

TYPES: BEGIN OF TP_EKKN,

         AUFNR TYPE EKKN-AUFNR"Order Number

         ANLN1 TYPE EKKN-ANLN1"Main Asset Number

         ANLN2 TYPE EKKN-ANLN2"Asset Subnumber

         EBELN TYPE EKKN-EBELN"Purchasing Document Number

    EBELp TYPE EKKN-EBELp,

       END OF TP_EKKN.

DATA: IT_EKKN TYPE STANDARD TABLE OF TP_EKKN INITIAL SIZE 0 .

DATA: WA_EKKN TYPE TP_EKKN.

TYPES: BEGIN OF TP_ANLA,

         ANLKL TYPE ANLA-ANLKL"Asset class

         ANLN1 TYPE ANLA-ANLN1"Main Asset Number

         AIBN1 TYPE ANLA-AIBN1"Original asset that was transferred

       END OF TP_ANLA.

DATA: IT_ANLA TYPE STANDARD TABLE OF TP_ANLA INITIAL SIZE 0.

DATA: WA_ANLA TYPE TP_ANLA.

TYPES: BEGIN OF TP_AUAA,

         BELNR1 TYPE AUAA-BELNR, "Number of a settlement document

         ANLN1 TYPE AUAA-ANLN1"Main Asset Number

       END OF TP_AUAA.

DATA: IT_AUAA TYPE STANDARD TABLE OF TP_AUAA INITIAL SIZE 0.

DATA: WA_AUAA TYPE TP_AUAA.

TYPES: BEGIN OF TP_ANEK,

         ANLU1 TYPE ANEK-ANLU1"Asset number acquiring/retiring asset in transfer

         ANLU2 TYPE ANEK-ANLU2"Subnumber of receiving/sending asset in transfer

         EBELN TYPE ANEK-EBELN,

         EBELP TYPE ANEK-EBELP,

         ANLN1 TYPE ANEK-ANLN1,

         BUKRS TYPE ANEk-BUKRS,

         GJAHR TYPE ANEk-GJAHR,

         LNRAN TYPE ANEk-LNRAN,

       END OF TP_ANEK.

DATA: IT_ANEK TYPE STANDARD TABLE OF TP_ANEK INITIAL SIZE 0.

DATA: WA_ANEK TYPE TP_ANEK.

TYPES: BEGIN OF TP_ANEP,

         BELNR2 TYPE ANEP-BELNR, "Accounting Document Number

         ANLN1 TYPE ANEP-ANLN1"Main Asset Number

         BUKRS TYPE ANEP-BUKRS,

         GJAHR TYPE ANEP-GJAHR,

         LNRAN TYPE ANEP-LNRAN,

       END OF TP_ANEP.

DATA: IT_ANEP TYPE STANDARD TABLE OF TP_ANEP INITIAL SIZE 0.

DATA: WA_ANEP TYPE TP_ANEP.

TYPES: BEGIN OF TP_NEW,

         EBELN TYPE EKKO-EBELN,

         BEDAT TYPE EKKO-BEDAT,

         LIFNR TYPE EKKO-LIFNR,

         MATNR TYPE EKPO-MATNR,

         TXZ01 TYPE EKPO-TXZ01,

         MENGE TYPE EKPO-MENGE,

         NETPR TYPE EKPO-NETPR,

         WERKS TYPE EKPO-WERKS,

         EBELP TYPE EKPO-EBELP,

         MEINS TYPE EKPO-MEINS,

         NAME1 TYPE LFA1-NAME1,

         BELNR TYPE EKBE-BELNR,

         BWART TYPE EKBE-BWART,

         LFGJA TYPE EKBE-LFGJA,

         GJAHR TYPE EKBE-GJAHR,

         AUFNR TYPE EKKN-AUFNR,

         ANLN1 TYPE EKKN-ANLN1,

         ANLN2 TYPE EKKN-ANLN2,

         ANLKL TYPE ANLA-ANLKL,

         AIBN1 TYPE ANLA-AIBN1,

         ANLU1 TYPE ANEK-ANLU1,

         ANLU2 TYPE ANEK-ANLU2,

         BELNR2 TYPE ANEP-BELNR,

         BELNR1 TYPE AUAA-BELNR,

       END OF TP_NEW.

DATA: IT_NEW TYPE STANDARD TABLE OF TP_NEW INITIAL SIZE 0.

DATA: WA_NEW TYPE TP_NEW.

DATA : IT_FCAT TYPE slis_t_fieldcat_alv.

DATA : WA_FCAT LIKE LINE OF IT_FCAT.

*&---------------------------------------------------------------------*

*&  LAYOUT

*&---------------------------------------------------------------------*

SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE title101.

SELECT-OPTIONS: S_EBELN FOR EKKO-EBELN.     "Purchase Order

SELECT-OPTIONS: S_BEDAT FOR EKKO-BEDAT"Purchasing Document Date

SELECTION-SCREEN END OF BLOCK B1.

INITIALIZATION.

title101 = 'Input Parameters'.

*&---------------------------------------------------------------------*

*&  MAIN PROGRAM

*&---------------------------------------------------------------------*

START-OF-SELECTION.

PERFORM DATAFETCH.

PERFORM FIELCAT.

PERFORM GRID.

*&---------------------------------------------------------------------*

*&  TOP OF PAGE

*&---------------------------------------------------------------------*

TOP-OF-PAGE.

WRITE : 30 'CAPEX STATUS REPORT'

  INVERSE OFF.

WRITE: SY-ULINE .

*&---------------------------------------------------------------------*

*&      Form  DATAFETCH

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM DATAFETCH .

SELECT EBELN

        BEDAT

        LIFNR

   FROM EKKO

   INTO TABLE IT_EKKO WHERE EBELN IN S_EBELN AND BEDAT IN S_BEDAT.

IF IT_EKKO IS NOT INITIAL.

   SELECT NAME1

          LIFNR

     FROM LFA1

     INTO TABLE IT_LFA1

     FOR ALL ENTRIES IN IT_EKKO WHERE LIFNR EQ IT_EKKO-LIFNR.

   SELECT  EBELN

           EBELP

           MATNR

           TXZ01

           MENGE

           NETPR

           WERKS

           MEINS

           KNTTP

     FROM EKPO

     INTO TABLE IT_EKPO

     FOR ALL ENTRIES IN IT_EKKO WHERE EBELN EQ IT_EKKO-EBELN AND KNTTP = 'A'.

   SELECT EBELN

          EBELP

          BELNR

          BWART

          LFGJA

          GJAHR

     FROM EKBE

     INTO TABLE IT_EKBE

     FOR ALL ENTRIES IN IT_EKPO WHERE EBELN EQ IT_EKPO-EBELN AND EBELP EQ IT_EKPO-EBELP.

    SELECT AUFNR

           ANLN1

           ANLN2

           EBELN

           ebelp

     FROM EKKN

     INTO TABLE IT_EKKN

     FOR ALL ENTRIES IN IT_EKKO WHERE EBELN EQ IT_EKKO-EBELN .

     SELECT ANLU1

            ANLU2

            EBELN

            EBELP

            ANLN1

            BUKRS

            GJAHR

            LNRAN

     FROM ANEK

     INTO TABLE IT_ANEK

     FOR ALL ENTRIES IN IT_EKKO WHERE EBELN EQ IT_EKKO-EBELN." AND EBELP EQ IT_EKBE-EBELP AND

     SELECT BELNR

            ANLN1

            BUKRS

            GJAHR

            LNRAN

     FROM ANEP

     INTO TABLE IT_ANEP

     FOR ALL ENTRIES IN IT_ANEK WHERE ANLN1 EQ IT_ANEk-ANLN1 and BUKRS EQ IT_ANEk-BUKRS and GJAHR EQ IT_ANEk-GJAHR and LNRAN EQ IT_ANEk-LNRAN.

IF IT_EKKN IS NOT INITIAL.

     SELECT ANLKL

            ANLN1

            AIBN1

     FROM ANLA

     INTO TABLE IT_ANLA

     FOR ALL ENTRIES IN IT_EKKN WHERE ANLN1 EQ IT_EKKN-ANLN1.

     SELECT BELNR

            ANLN1

     FROM AUAA

     INTO TABLE IT_AUAA

     FOR ALL ENTRIES IN IT_EKKN WHERE ANLN1 EQ IT_EKKN-ANLN1.

Loop at it_EKbe INTO WA_EKbe.

     MOVE WA_EKBE-BELNR TO WA_NEW-BELNR.

     MOVE WA_EKBE-BWART TO WA_NEW-BWART.

     MOVE WA_EKBE-LFGJA TO WA_NEW-LFGJA.

     MOVE WA_EKBE-GJAHR TO WA_NEW-GJAHR.

Read table it_EKKN INTO WA_EKKN with key ebeln = wa_EKBE-EBELN

                                          ebelp = wa_EKBE-EBELP.

     MOVE WA_EKKN-AUFNR TO WA_NEW-AUFNR.

     MOVE WA_EKKN-ANLN1 TO WA_NEW-ANLN1.

     MOVE WA_EKKN-ANLN2 TO WA_NEW-ANLN2.

Read table it_EKKO into wa_ekko with key ebeln = wa_ekbe-ebeln.

     MOVE WA_EKKO-EBELN TO WA_NEW-EBELN.

     MOVE WA_EKKO-BEDAT TO WA_NEW-BEDAT.

Read table it_LFA1 INTO WA_LFA1 with key lifnr = wa_ekko-LIFNR .

     MOVE WA_LFA1-LIFNR to WA_NEW-LIFNR.

     MOVE WA_LFA1-NAME1 TO WA_NEW-NAME1.

Read table it_EKPO INTO WA_EKPO with key ebeln = wa_EKbe-EBELN

                                          ebelp = wa_ekbe-ebelp.

     MOVE WA_EKPO-WERKS TO WA_NEW-WERKS.

     MOVE WA_EKPO-MATNR TO WA_NEW-MATNR.

     MOVE WA_EKPO-TXZ01 TO WA_NEW-TXZ01.

     MOVE WA_EKPO-MEINS TO WA_NEW-MEINS.

     MOVE WA_EKPO-MENGE TO WA_NEW-MENGE.

     MOVE WA_EKPO-NETPR TO WA_NEW-NETPR.

     MOVE WA_EKPO-EBELP TO WA_NEW-EBELP.

READ TABLE it_anla INTO wa_anla WITH KEY anln1 wa_ekkn-anln1.

     MOVE WA_ANLA-ANLKL TO WA_NEW-ANLKL.

     MOVE WA_ANLA-AIBN1 TO WA_NEW-AIBN1.

READ TABLE it_auaa INTO wa_auaa WITH KEY anln1 wa_ekkn-anln1.

     MOVE WA_AUAA-BELNR1 TO WA_NEW-BELNR1.

READ TABLE it_anek INTO wa_anek WITH KEY anln1 wa_ekkn-anln1.

     MOVE WA_ANEk-ANLU1 TO WA_NEW-ANLU1.

     MOVE WA_ANEK-ANLU2 TO WA_NEW-ANLU2.

READ TABLE it_anep INTO wa_anep WITH KEY anln1 wa_ekkn-anln1.

     MOVE WA_ANEP-BELNR2 TO WA_NEW-BELNR2.

append WA_NEW to IT_NEW.

CLEAR: WA_new, WA_ekko.

endloop.

   ENDIF.

ENDIF.

ENDFORM.                    " DATAFETCH

*&---------------------------------------------------------------------*

*&      Form  FIELCAT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM FIELCAT .

* ----------------WERKS

WA_FCAT-COL_POS   = '1'.

WA_FCAT-FIELDNAME = 'WERKS'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'PLANT NO'.

WA_FCAT-OUTPUTLEN = '9'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- BELNR

WA_FCAT-COL_POS   = '2'.

WA_FCAT-FIELDNAME = 'BELNR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'MATERIAL DOC'.

WA_FCAT-OUTPUTLEN = '13'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- BEDAT

WA_FCAT-COL_POS   = '3'.

WA_FCAT-FIELDNAME = 'BEDAT'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'POSTING DATE'.

WA_FCAT-OUTPUTLEN = '13'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- LIFNR

WA_FCAT-COL_POS   = '4'.

WA_FCAT-FIELDNAME = 'LIFNR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'VENDOR NO'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- NAME1

WA_FCAT-COL_POS   = '5'.

WA_FCAT-FIELDNAME = 'NAME1'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'VENDOR NAME'.

WA_FCAT-OUTPUTLEN = '40'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- MATNR

WA_FCAT-COL_POS   = '6'.

WA_FCAT-FIELDNAME = 'MATNR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'MATERIAL NO'.

WA_FCAT-OUTPUTLEN = '20'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- TXZ01

WA_FCAT-COL_POS   = '7'.

WA_FCAT-FIELDNAME = 'TXZ01'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'MATERIAL DESCRIPTION'.

WA_FCAT-OUTPUTLEN = '40'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- MEINS

WA_FCAT-COL_POS   = '8'.

WA_FCAT-FIELDNAME = 'MEINS'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'UNIT MEASURE'.

WA_FCAT-OUTPUTLEN = '13'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- MENGE

WA_FCAT-COL_POS   = '9'.

WA_FCAT-FIELDNAME = 'MENGE'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'P.O. QTY'.

WA_FCAT-OUTPUTLEN = '9'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- NETPR

WA_FCAT-COL_POS   = '10'.

WA_FCAT-FIELDNAME = 'NETPR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'NET PRICE'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- GJAHR

WA_FCAT-COL_POS   = '11'.

WA_FCAT-FIELDNAME = 'GJAHR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'DOC YEAR'.

WA_FCAT-OUTPUTLEN = '9'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- LFGJA

WA_FCAT-COL_POS   = '12'.

WA_FCAT-FIELDNAME = 'LFGJA'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'FISCAL YEAR'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- BWART

WA_FCAT-COL_POS   = '13'.

WA_FCAT-FIELDNAME = 'BWART'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'MOVEMENT TYPE'.

WA_FCAT-OUTPUTLEN = '15'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*-------------------EBELN

WA_FCAT-COL_POS   = '14'.

WA_FCAT-FIELDNAME = 'EBELN'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'P.O. NO'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- EBELP

WA_FCAT-COL_POS   = '15'.

WA_FCAT-FIELDNAME = 'EBELP'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'ITEM NO'.

WA_FCAT-OUTPUTLEN = '9'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- AUFNR

WA_FCAT-COL_POS   = '16'.

WA_FCAT-FIELDNAME = 'AUFNR'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'INTERNAL ORDER'.

WA_FCAT-OUTPUTLEN = '15'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- ANLN1        "change

WA_FCAT-COL_POS   = '17'.

WA_FCAT-FIELDNAME = 'ANLA1'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'MAIN ASSET NO'.

WA_FCAT-OUTPUTLEN = '17'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

**------------------- ANLN2       "change

WA_FCAT-COL_POS   = '18'.

WA_FCAT-FIELDNAME = 'ANLN2'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'SUB ASSET NO'.

WA_FCAT-OUTPUTLEN = '15'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------- BELNR

WA_FCAT-COL_POS   = '19'.

WA_FCAT-FIELDNAME = 'BELNR1'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'SETTLE DOC NO'.

WA_FCAT-OUTPUTLEN = '15'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*-------------------ANLKL

WA_FCAT-COL_POS   = '20'.

WA_FCAT-FIELDNAME = 'ANLKL'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'ASSET CLASS'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*-------------------ANLU1

WA_FCAT-COL_POS   = '21'.

WA_FCAT-FIELDNAME = 'ANLU1'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'ASSET 1'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*-------------------ANLU2

WA_FCAT-COL_POS   = '22'.

WA_FCAT-FIELDNAME = 'ANLU2'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'ASSET 2'.

WA_FCAT-OUTPUTLEN = '12'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

*------------------BELNR2

WA_FCAT-COL_POS   = '23'.

WA_FCAT-FIELDNAME = 'BELNR2'.

WA_FCAT-TABNAME   = 'IT_NEW'.

WA_FCAT-SELTEXT_L = 'ACC DOC NO'.

WA_FCAT-OUTPUTLEN = '15'.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

ENDFORM.                    " FIELCAT

*&---------------------------------------------------------------------*

*&      Form  GRID

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM GRID .

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

  EXPORTING

*   I_INTERFACE_CHECK                 = ' '

*   I_BYPASSING_BUFFER                = ' '

*   I_BUFFER_ACTIVE                   = ' '

    I_CALLBACK_PROGRAM                = 'ZCAPEX_REPORT'

*   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_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_NEW

* EXCEPTIONS

*   PROGRAM_ERROR                     = 1

*   OTHERS                            = 2

           .

IF sy-subrc <> 0.

* Implement suitable error handling here

ENDIF.

ENDFORM.                    " GRID