You are on page 1of 2

FORM BUILD_FIELDLIST.

IT_CHAR_FLDS-FIELDNAME = 'KOKRS'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.


IT_CHAR_FLDS-FIELDNAME = 'BUDAT'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'VRGAR'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'VALUTYP'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'RKAUFNR'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'BUKRS'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
* IT_CHAR_FLDS-FIELDNAME = 'FRWAE'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
* IT_CHAR_FLDS-FIELDNAME = 'KURSF'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'FKART'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'ARTNR'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'WERKS'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'PRCTR'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'WWTER'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'MVGR2'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'BZIRK'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'KUNWE'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'WWCHN'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'WWMKT'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'WWRAG'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'WWSPD'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'KMVTNR'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'WWPRM'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'WWPRY'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
IT_CHAR_FLDS-FIELDNAME = 'WWMNR'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.
* IT_CHAR_FLDS-FIELDNAME = 'WWCUR'. APPEND IT_CHAR_FLDS. CLEAR IT_CHAR_FLDS.

ENDFORM. " BUILD_FIELDLIST

*&---------------------------------------------------------------------*
*& Form PRINT_RESULTS
*&---------------------------------------------------------------------*
FORM PRINT_RESULTS.

* Data needed to support ALV


DATA: R_TABLE TYPE REF TO CL_SALV_TABLE,
R_FUNCTIONS TYPE REF TO CL_SALV_FUNCTIONS,
R_DISPLAY TYPE REF TO CL_SALV_DISPLAY_SETTINGS,
R_COLUMNS TYPE REF TO CL_SALV_COLUMNS_TABLE,
R_COLUMN TYPE REF TO CL_SALV_COLUMN_TABLE,
R_SORTS TYPE REF TO CL_SALV_SORTS,
R_LAYOUT TYPE REF TO CL_SALV_LAYOUT,
R_EVENTS TYPE REF TO CL_SALV_EVENTS_TABLE,
R_SELECTIONS TYPE REF TO CL_SALV_SELECTIONS,
R_AGG TYPE REF TO CL_SALV_AGGREGATIONS,
X_KEY TYPE SALV_S_LAYOUT_KEY.

TRY.
CL_SALV_TABLE=>FACTORY( IMPORTING R_SALV_TABLE = R_TABLE
CHANGING T_TABLE = IT_RESULTS ).
R_FUNCTIONS = R_TABLE->GET_FUNCTIONS( ).
R_FUNCTIONS->SET_ALL( ABAP_TRUE ).
R_DISPLAY = R_TABLE->GET_DISPLAY_SETTINGS( ).
R_DISPLAY->SET_STRIPED_PATTERN( CL_SALV_DISPLAY_SETTINGS=>TRUE ).
R_DISPLAY->SET_LIST_HEADER( SY-TITLE ).
R_COLUMNS = R_TABLE->GET_COLUMNS( ).
R_COLUMNS->SET_OPTIMIZE( ABAP_TRUE ).
* Setup column texts
R_COLUMN ?= R_COLUMNS->GET_COLUMN( 'WWMNR' ).
R_COLUMN->SET_SHORT_TEXT( ' ' ).

R_COLUMN ?= R_COLUMNS->GET_COLUMN( 'FKART' ).


R_COLUMN->SET_SHORT_TEXT( ' ' ).

R_COLUMN ?= R_COLUMNS->GET_COLUMN( 'WWPRY' ).


R_COLUMN->SET_SHORT_TEXT( ' ' ).

R_COLUMN ?= R_COLUMNS->GET_COLUMN( 'WWPRM' ).


R_COLUMN->SET_SHORT_TEXT( ' ' ).

R_COLUMN ?= R_COLUMNS->GET_COLUMN( 'WWCUR' ).


R_COLUMN->SET_LONG_TEXT( ' ' ).
R_COLUMN->SET_MEDIUM_TEXT( 'CoCd Curr'(016) ).
R_COLUMN->SET_SHORT_TEXT( ' ' ).

R_COLUMN ?= R_COLUMNS->GET_COLUMN( 'VALUE' ).


R_COLUMN->SET_LONG_TEXT( ' ' ).
R_COLUMN->SET_MEDIUM_TEXT( 'Value'(017) ).
R_COLUMN->SET_SHORT_TEXT( ' ' ).

R_COLUMN ?= R_COLUMNS->GET_COLUMN( 'CCVALUE' ).


R_COLUMN->SET_LONG_TEXT( ' ' ).
R_COLUMN->SET_MEDIUM_TEXT( 'CoCd Value'(018) ).
R_COLUMN->SET_SHORT_TEXT( ' ' ).

R_COLUMN ?= R_COLUMNS->GET_COLUMN( 'VALCONV' ).


R_COLUMN->SET_LONG_TEXT( ' ' ).
R_COLUMN->SET_MEDIUM_TEXT( 'SAP Value'(020) ).
R_COLUMN->SET_SHORT_TEXT( ' ' ).
* field will only be populated if no validation errors
* so if error, do not show
IF V_ERR_FLAG EQ 'X'.
R_COLUMN->SET_VISIBLE( ' ' ).
ENDIF.

* Allow Layout
R_LAYOUT = R_TABLE->GET_LAYOUT( ).
X_KEY-REPORT = SY-REPID.
R_LAYOUT->SET_KEY( X_KEY ).
R_LAYOUT->SET_SAVE_RESTRICTION( CL_SALV_LAYOUT=>RESTRICT_NONE ).

* Display ALV Grid


R_TABLE->DISPLAY( ).
CATCH CX_SALV_MSG.
CATCH CX_SALV_NOT_FOUND.
CATCH CX_SALV_DATA_ERROR.
CATCH CX_SALV_EXISTING.
ENDTRY.

You might also like