Display company logo in the top of ALV report

This is a demo program which includes company logo in the top of SAP ALV report.View the following source code.

*&———————————————————————*

*& Report ZFM_ALV_LOGO

*&

*&———————————————————————*

*&

*&

*&———————————————————————*

REPORT ZFM_ALV_LOGO.

DATA ITAB LIKE TABLE OF mara.

TYPE-POOLS SLIS.

************DECLARATIONS*********************************

DATA LIST_TOP TYPE SLIS_T_LISTHEADER.

DATA LIST_LINE TYPE SLIS_LISTHEADER.

DATA EVENTS TYPE SLIS_T_EVENT.

DATA FORMNAME_E_USER_COMMAND TYPE SLIS_FORMNAME VALUE ‘USER_COMMAND’.

DATA PTESTRUN(1).

DATA REPNAME LIKE SY-REPID.

CONSTANTS: FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE ‘TOP_OF_PAGE’.

DATA LAYOUT TYPE SLIS_LAYOUT_ALV.

**************INITIALIZATION***************************

INITIALIZATION.

REPNAME = SY-REPID.

PERFORM BUILD_EVENTTAB USING EVENTS[].

CLEAR LIST_LINE.

LIST_LINE-TYP = ‘H’.

LIST_LINE-INFO = SY-TITLE.

APPEND LIST_LINE TO LIST_TOP.

CLEAR LIST_LINE.

LIST_LINE-TYP = ‘S’.

LIST_LINE-KEY = ‘PROGRAM NAME’.

LIST_LINE-INFO = SY-REPID.

APPEND LIST_LINE TO LIST_TOP.

CLEAR LIST_LINE.

LIST_LINE-TYP = ‘S’.

LIST_LINE-KEY = ‘USER’.

LIST_LINE-INFO = SY-UNAME.

APPEND LIST_LINE TO LIST_TOP.

CLEAR LIST_LINE.

LIST_LINE-TYP = ‘S’.

LIST_LINE-KEY = ‘DATE’.

LIST_LINE-INFO = SY-DATUM.

APPEND LIST_LINE TO LIST_TOP.

CLEAR LIST_LINE.

LIST_LINE-TYP = ‘S’.

LIST_LINE-KEY = ‘TIME’.

LIST_LINE-INFO = sy-uzeit.

APPEND LIST_LINE TO LIST_TOP.

*******************************************************

SELECT * FROM mara INTO TABLE ITAB.

*******************************************************

CALL FUNCTION ‘REUSE_ALV_GRID_DISPLAY’

EXPORTING

I_CALLBACK_PROGRAM = REPNAME

I_STRUCTURE_NAME = ‘mara’

IT_EVENTS = EVENTS[]

TABLES

T_OUTTAB = ITAB.

******FORM FOR TOP OF PAGE*******************

FORM TOP_OF_PAGE.

CALL FUNCTION ‘REUSE_ALV_COMMENTARY_WRITE’

EXPORTING

I_LOGO = ‘ENJOYSAP_LOGO’

IT_LIST_COMMENTARY = LIST_TOP.

ENDFORM.

*****************************************************

*****************FORM EVENT************************

FORM BUILD_EVENTTAB USING P1_EVENTS TYPE SLIS_T_EVENT.

DATA: LS_EVENT TYPE SLIS_ALV_EVENT.

CALL FUNCTION ‘REUSE_ALV_EVENTS_GET’

EXPORTING

I_LIST_TYPE = 0

IMPORTING

ET_EVENTS = P1_EVENTS.

READ TABLE P1_EVENTS WITH KEY NAME = FORMNAME_TOP_OF_PAGE

INTO LS_EVENT.

IF SY-SUBRC = 0.

MOVE FORMNAME_TOP_OF_PAGE TO LS_EVENT-FORM.

APPEND LS_EVENT TO P1_EVENTS.

ENDIF.

ENDFORM.

*****************************************************