Skip to end of metadata
Go to start of metadata
Error rendering macro 'code': Invalid value specified for parameter 'com.atlassian.confluence.ext.code.render.InvalidValueException'
 TABLES VBAK.

 TYPE-POOLS SLIS.

 TYPES: BEGIN OF T_VBAK,
 VBELN TYPE VBAK-VBELN,
 ERDAT TYPE VBAK-ERDAT,
 ERNAM TYPE VBAK-ERNAM,
 AUDAT TYPE VBAK-AUDAT,
 VBTYP TYPE VBAK-VBTYP,
 NETWR TYPE VBAK-NETWR,
 VKORG TYPE VBAK-VKORG,
 VKGRP TYPE VBAK-VKGRP,
 END OF T_VBAK.

 DATA IT_VBAK TYPE STANDARD TABLE OF T_VBAK INITIAL SIZE 0.
 DATA: FLDCAT TYPE SLIS_T_FIELDCAT_ALV,
       W_FLDCAT TYPE SLIS_FIELDCAT_ALV,
       GD_LAYOUT TYPE SLIS_LAYOUT_ALV,
       GD_REPID TYPE SY-REPID.

 DATA: DATE1(10).


 DATA: LT_TAB        TYPE REF TO CL_DD_TABLE_ELEMENT,
       LD_COL1       TYPE REF TO CL_DD_AREA,
       LD_COL2       TYPE REF TO CL_DD_AREA,
       LD_COL3       TYPE REF TO CL_DD_AREA,
       LD_COL4       TYPE REF TO CL_DD_AREA,
       LD_TEXT       TYPE SDYDO_TEXT_ELEMENT,
       LD_TEXT2       TYPE SDYDO_TEXT_ELEMENT,
       LD_TEXT3       TYPE SDYDO_TEXT_ELEMENT,
       LD_TEXT4       TYPE SDYDO_TEXT_ELEMENT,
       LD_TEXT5       TYPE SDYDO_TEXT_ELEMENT,
       LD_TEXT6       TYPE SDYDO_TEXT_ELEMENT,
       LD_PER1(3)    TYPE C,
       LD_PER2(3)    TYPE C,
       LD_SETTEXT_KS LIKE KMAS_D-SETTXT_KST,
       LD_SETTEXT_BP LIKE KMAS_D-SETTXT_PRZ.

 DATA: GS_VERSION LIKE TKT09.
 * selection screen design
 SELECT-OPTIONS: VBELN FOR VBAK-VBELN.
 * start of selection
 START-OF-SELECTION.
   PERFORM DATA_RETRIEVAL.
   PERFORM BLD_FLDCAT.
   PERFORM BLD_LAYOUT.
   PERFORM DISPLAY_ALV_REPORT.
 *-----------------------------------------------------------------------

 * build catalog

 *-----------------------------------------------------------------------
 *Build Field Catalog for ALV Report

 FORM BLD_FLDCAT.
   W_FLDCAT-FIELDNAME = 'VBELN'.
   W_FLDCAT-SELTEXT_M = 'Sales_Document'.
   W_FLDCAT-COL_POS = 0.
   W_FLDCAT-OUTPUTLEN = 15.
   W_FLDCAT-KEY = 'X'.
   W_FLDCAT-ICON = 'X'.
   APPEND W_FLDCAT TO FLDCAT.
   CLEAR W_FLDCAT.
   W_FLDCAT-FIELDNAME = 'ERDAT'.
   W_FLDCAT-SELTEXT_L = 'Record_Date_created'.
   W_FLDCAT-COL_POS = 1.
   W_FLDCAT-KEY = 'X'.
   APPEND W_FLDCAT TO FLDCAT.
   CLEAR W_FLDCAT.
   W_FLDCAT-FIELDNAME = 'ERNAM'.
   W_FLDCAT-SELTEXT_L = 'Cteated_Person_Name'.
   W_FLDCAT-COL_POS = 2.
   W_FLDCAT-EMPHASIZE = 'C011'.
   APPEND W_FLDCAT TO FLDCAT.
   CLEAR W_FLDCAT.
   W_FLDCAT-FIELDNAME = 'AUDAT'.
   W_FLDCAT-SELTEXT_M = 'Document_Date'.
   W_FLDCAT-COL_POS = 3.
   W_FLDCAT-EMPHASIZE = 'C110'.
   APPEND W_FLDCAT TO FLDCAT.
   CLEAR W_FLDCAT.
   W_FLDCAT-FIELDNAME = 'VBTYP'.
   W_FLDCAT-SELTEXT_L = 'SDDocument_category'.
   W_FLDCAT-COL_POS = 4.
   APPEND W_FLDCAT TO FLDCAT.
   CLEAR W_FLDCAT.
   W_FLDCAT-FIELDNAME = 'NETWR'.
   W_FLDCAT-SELTEXT_L = 'Net_Value'.
   W_FLDCAT-COL_POS = 5.
   W_FLDCAT-OUTPUTLEN = 10.
   W_FLDCAT-DO_SUM = 'X'.
   W_FLDCAT-DATATYPE = 'CURR'.
   APPEND W_FLDCAT TO FLDCAT.
   CLEAR W_FLDCAT.
   W_FLDCAT-FIELDNAME = 'VKORG'.
   W_FLDCAT-SELTEXT_L = 'Sales_Organization'.
   W_FLDCAT-COL_POS = 6.
   APPEND W_FLDCAT TO FLDCAT.
   CLEAR W_FLDCAT.
   W_FLDCAT-FIELDNAME = 'VKGRP'.
   W_FLDCAT-SELTEXT_M = 'Sales_Group'.
   W_FLDCAT-COL_POS = 7.
   W_FLDCAT-EMPHASIZE = 'C801'.
   APPEND W_FLDCAT TO FLDCAT.
   CLEAR W_FLDCAT.

 ENDFORM. "BLD_FLDCAT

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

 * display fatalog

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

 *Build Layout for ALV Grid Report

 FORM BLD_LAYOUT.
   GD_LAYOUT-NO_INPUT = 'X'.
   GD_LAYOUT-BOX_FIELDNAME = 'VBELN'.

 ENDFORM. "BLD_LAYOUT

 *Display report using ALV grid

 FORM DISPLAY_ALV_REPORT.
   GD_REPID = SY-REPID.
   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
     EXPORTING
       I_CALLBACK_PROGRAM          = GD_REPID
       IS_LAYOUT                   = GD_LAYOUT
       I_CALLBACK_HTML_TOP_OF_PAGE = 'TOP_OF_PAGE_SPLIT'
       IT_FIELDCAT                 = FLDCAT[]
     TABLES
       T_OUTTAB                    = IT_VBAK.

 ENDFORM. "DISPLAY_ALV_REPORT

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

 * get data

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

 *Retrieve data from VBAK table and populate itab IT_VBAK

 FORM DATA_RETRIEVAL.
   SELECT VBELN
   ERDAT
   ERNAM
   AUDAT
   VBTYP
   NETWR
   VKORG
   FROM VBAK
   INTO TABLE IT_VBAK
   WHERE VBELN IN VBELN.

 ENDFORM. "DATA_RETRIEVAL

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

 * build header for alv

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

 FORM TOP_OF_PAGE_SPLIT USING R_TOP TYPE REF TO CL_DD_DOCUMENT.
   DATA: S_TAB TYPE SDYDO_TEXT_TABLE,
   C_AREA TYPE REF TO CL_DD_AREA,
   TEXT TYPE SDYDO_TEXT_ELEMENT.
   CALL METHOD R_TOP->ADD_TABLE
     EXPORTING
       NO_OF_COLUMNS = 2
       BORDER        = '1'
     IMPORTING
       TABLE         = LT_TAB.
   CALL METHOD LT_TAB->ADD_COLUMN
     EXPORTING
       WIDTH  = '33%'
     IMPORTING
       COLUMN = LD_COL1.
   CALL METHOD LT_TAB->ADD_COLUMN
     EXPORTING
       WIDTH  = '33%'
     IMPORTING
       COLUMN = LD_COL2.
   LD_TEXT = 'Months'.
   LD_TEXT2 = 'Savings'.
   LD_TEXT3 = 'January'.
   LD_TEXT4 = '$100'.
   LD_TEXT5 = 'February'.
   LD_TEXT6 = '$80'.
   CALL METHOD LD_COL1->ADD_TEXT
     EXPORTING
       TEXT         = LD_TEXT
       SAP_COLOR    = CL_DD_AREA=>LIST_BACKGROUND_INT
       SAP_EMPHASIS = 'STRONG'.

   CALL METHOD LD_COL2->ADD_TEXT
     EXPORTING
       TEXT         = LD_TEXT2
       SAP_COLOR    = CL_DD_AREA=>LIST_BACKGROUND_INT
       SAP_EMPHASIS = 'STRONG'.

   CALL METHOD LT_TAB->NEW_ROW.

   CALL METHOD LD_COL1->ADD_TEXT
     EXPORTING
       TEXT      = LD_TEXT3
       SAP_COLOR = CL_DD_AREA=>LIST_BACKGROUND_INT.

   CALL METHOD LD_COL2->ADD_TEXT
     EXPORTING
       TEXT      = LD_TEXT4
       SAP_COLOR = CL_DD_AREA=>LIST_BACKGROUND_INT.

   CALL METHOD LT_TAB->NEW_ROW.

   CALL METHOD LD_COL1->ADD_TEXT
     EXPORTING
       TEXT      = LD_TEXT5
       SAP_COLOR = CL_DD_AREA=>LIST_BACKGROUND_INT.


   CALL METHOD LD_COL2->ADD_TEXT
     EXPORTING
       TEXT      = LD_TEXT6
       SAP_COLOR = CL_DD_AREA=>LIST_BACKGROUND_INT.

   CALL METHOD LT_TAB->NEW_ROW.

 ENDFORM. "TOP_OF_PAGE_SPLIT