Pages

Monday, December 21, 2009

Display Internal Table as ALV popup screen




This can be done using normal 'REUSE_ALV_GRID_DISPLAY' by mentioning the 'X' co-ordinate in the Importing parameters of the FM. Following code describes the way:

data:lt_fcat TYPE slis_t_fieldcat_alv,
lwa_fcat TYPE slis_fieldcat_alv.

CONSTANTS: c_fcat_pop TYPE lvc_tname VALUE 'IT_ERROR'.

REFRESH lt_fcat.
CLEAR lwa_fcat.

lwa_fcat-fieldname = 'PERSON'.
lwa_fcat-tabname = c_fcat_pop.
lwa_fcat-seltext_m = 'PERNR/Identifier'.
APPEND lwa_fcat TO lt_fcat.
CLEAR lwa_fcat.

lwa_fcat-fieldname = 'MESS'.
lwa_fcat-tabname = c_fcat_pop.
lwa_fcat-seltext_m = 'Error Message'.
lwa_fcat-outputlen = 100.
APPEND lwa_fcat TO lt_fcat.
CLEAR lwa_fcat.
*****************************************************
* Call ALV POP-UP FM to display table *
*****************************************************
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 = lt_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 = 30
I_SCREEN_START_LINE = 10
I_SCREEN_END_COLUMN = 100
I_SCREEN_END_LINE = 20

* 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 = p_it_error
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
.
IF sy-subrc <> 0.
MESSAGE i000 WITH 'Error calling Pop-Up screen'.
LEAVE TO TRANSACTION c_tcode.
ENDIF.

No comments:

Post a Comment