(map brain '(thoughts)) =>

article header h1

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam sodales urna non odio egestas tempor. Nunc vel vehicula ante. Etiam bibendum iaculis libero, eget molestie nisl pharetra in. In semper consequat est, eu porta velit mollis nec.

article section h2

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam sodales urna non odio egestas tempor. Nunc vel vehicula ante. Etiam bibendum iaculis libero, eget molestie nisl pharetra in. In semper consequat est, eu porta velit mollis nec. Curabitur posuere enim eget turpis feugiat tempor. Etiam ullamcorper lorem dapibus velit suscipit ultrices. Proin in est sed erat facilisis pharetra.

Code

DATA : BEGIN OF IT_PLANT OCCURS 0,
        MATNR LIKE MARA-MATNR,
        WERKS LIKE MARC-WERKS, "comment
        PSTAT LIKE MARC-PSTAT,
        EKGRP LIKE MARC-EKGRP,
       END OF IT_PLANT.

DATA : BEGIN OF IT_PONO OCCURS 0,
        EBELN LIKE EKKO-EBELN,
        EBELP LIKE EKPO-EBELP,
        MATNR LIKE EKPO-MATNR,
        WERKS LIKE EKPO-WERKS,
        LGORT LIKE EKPO-LGORT,
       END OF IT_PONO.

TABLES EKKO.
*********END OF DATA DECLARATIONS**********

********SELECTION SCREEN DESIGN ***********

SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.

PARAMETER : P_WERKS LIKE MARC-WERKS MODIF ID S1.
SELECT-OPTIONS : S_EBELN FOR EKKO-EBELN NO INTERVALS MODIF ID S2.

SELECTION-SCREEN END OF BLOCK B1.

SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-004.

SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS : R1 RADIOBUTTON GROUP G1 DEFAULT 'X'.
SELECTION-SCREEN COMMENT 5(20) TEXT-002 FOR FIELD R1.
SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS : R2 RADIOBUTTON GROUP G1.
SELECTION-SCREEN COMMENT 5(20) TEXT-003 FOR FIELD R2.
SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN END OF BLOCK B2.


*******END OF SELECTION SCREEN DESIGN*****************

**********INITIALIZATION OF SELECTION SCREEN ELEMENTS.******

INITIALIZATION.

P_WERKS = '1000'.

S_EBELN-LOW = '4500016926'.
S_EBELN-OPTION = 'EQ'.
S_EBELN-SIGN = 'I'.
APPEND S_EBELN.
CLEAR S_EBELN.

*************END OF INITIALIZATION************************

************SCREEN MODIFICATIONS********************

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.

    IF R1 EQ 'X' AND SCREEN-GROUP1 EQ 'S2'.
      SCREEN-INPUT = 0.
      MODIFY SCREEN.
    ENDIF.

    IF R2 EQ 'X' AND SCREEN-GROUP1 EQ 'S1'.
      SCREEN-INPUT = 0.
      MODIFY SCREEN.
    ENDIF.

  ENDLOOP.



*********END OF SCREEN MODIFICATIONS******************

***************SCREEN VALIDATIONS *****************
at selection-screen.
  SELECT SINGLE *
           FROM EKKO
           INTO EKKO
           WHERE EBELN IN S_EBELN.

  IF SY-SUBRC <> 0.
    SET CURSOR FIELD 'S_EBELN-LOW'.
    MESSAGE E999 WITH TEXT-005.
  ENDIF.
*********end of screen validation******************

START-OF-SELECTION.
*set pf-status '100'.
  IF R1 EQ 'X'.

    SELECT MATNR
           WERKS
           PSTAT
           EKGRP
       FROM MARC
       INTO TABLE IT_PLANT
       WHERE WERKS = P_WERKS.

    LOOP AT IT_PLANT.


      WRITE : SY-VLINE , 2 IT_PLANT-MATNR COLOR COL_KEY,
             21 SY-VLINE , 22  IT_PLANT-WERKS COLOR COL_KEY,
             27 SY-VLINE ,28 IT_PLANT-PSTAT COLOR COL_NORMAL,
             43 SY-VLINE ,44 IT_PLANT-EKGRP COLOR COL_NORMAL.


    ENDLOOP.

  ENDIF.

  IF R2 EQ 'X'.

    SELECT EBELN EBELP MATNR WERKS LGORT
           FROM EKPO
           INTO TABLE IT_PONO
           WHERE EBELN IN S_EBELN.

    LOOP AT IT_PONO.

      WRITE : SY-VLINE , 2 IT_PONO-EBELN COLOR COL_KEY,
             12 SY-VLINE , 13 IT_PONO-EBELP COLOR COL_KEY,
             18 SY-VLINE , 19 IT_PONO-MATNR COLOR COL_NORMAL,
             37 SY-VLINE , 38 IT_PONO-WERKS COLOR COL_NORMAL,
             44 SY-VLINE , 45 IT_PONO-LGORT COLOR COL_NORMAL, 49 SY-VLINE..
    ENDLOOP.
  ENDIF.

TOP-OF-PAGE.

  IF R1 EQ 'X'.

*ULINE AT /1(48).

    WRITE : SY-VLINE ,2 'MATERIAL NUMBER',
            21 SY-VLINE , 22 'PLANT',
            27 SY-VLINE , 28 'STATUS',
            43 SY-VLINE , 44 'GRUP', 48 SY-VLINE.

    ULINE AT /1(48).

  ENDIF.

  IF R2 EQ 'X'.

    WRITE : SY-VLINE , 2 'PO NUMBER',
           12 SY-VLINE, 13 'ITEM',
           18 SY-VLINE,19 'MATERIAL NUMBER',
           37 SY-VLINE, 38 'PLANT',
           44 SY-VLINE, 45 'GRUP',
           49 SY-VLINE.
    ULINE AT /1(50).
  ENDIF.

END-OF-PAGE.

  ULINE AT /1(50).
  WRITE :/10 'PAGE NUMBER', SY-PAGNO.
 REPORT ztest.
 
  CLASS demo DEFINITION.
    PUBLIC SECTION.
      CLASS-METHODS main.
  ENDCLASS.
 
  CLASS demo IMPLEMENTATION.
    METHOD main.
      DATA tstc_tab TYPE STANDARD TABLE OF tstc WITH NON-UNIQUE DEFAULT KEY.
      DATA alv      TYPE REF TO cl_salv_table.
      DATA exc      TYPE REF TO cx_salv_msg.
      SELECT *
        FROM tstc
        INTO TABLE tstc_tab.
      TRY.
        cl_salv_table=>factory(
          IMPORTING r_salv_table = alv
          CHANGING t_table = tstc_tab ).
        alv->display( ).
      CATCH cx_salv_msg INTO exc.
          MESSAGE exc TYPE 'I'
              DISPLAY LIKE 'E'.
      ENDTRY.
    ENDMETHOD.
  ENDCLASS.
 
  START-OF-SELECTION.
    demo=>main( ).