Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

alv events error

Former Member
0 Likes
1,028

hi,

plz take some time.

i am having some prb with my events block , when i exeute, it is showing short dump

i am unable to identify the prob.

plz help me

here is the code.

&----


*& Report ZALV_PRACTICE1_OWN *

*& *

&----


*& *

*& *

&----


REPORT ZALV_PRACTICE1_OWN .

TABLES: LFA1, EKKO.

DATA: BEGIN OF ITAB OCCURS 0,

LIFNR LIKE LFA1-LIFNR,

NAME1 LIKE LFA1-NAME1,

LAND1 LIKE LFA1-LAND1,

EBELN LIKE EKKO-EBELN,

END OF ITAB.

SELECT-OPTIONS: VEND FOR LFA1-LIFNR.

TYPE-POOLS: SLIS.

DATA: S_REPID TYPE SY-REPID,

LD_LINES TYPE i,

LD_LINESC(15) TYPE C,

F_LFA1 TYPE SLIS_T_FIELDCAT_ALV,

F_SORT TYPE SLIS_SORTINFO_ALV OCCURS 1,

WA_SORT LIKE LINE OF F_SORT,

F_HEAD TYPE SLIS_T_LISTHEADER,

W_HEAD TYPE SLIS_LISTHEADER,

F_EVENTS TYPE SLIS_T_EVENT,

F_PRINT TYPE SLIS_PRINT_ALV,

F_LAYOUT TYPE SLIS_LAYOUT_ALV_SPEC.

SELECT LIFNR NAME1 LAND1 FROM LFA1 INTO TABLE ITAB

WHERE LIFNR IN VEND.

PERFORM BUILD_SORTCAT.

PERFORM BUILD_EVENTS.

PERFORM BUILD_PRINT.

S_REPID = SY-REPID.

*LOOP AT ITAB.

  • WRITE: / ITAB-LIFNR, ITAB-EBELN.

*ENDLOOP.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

I_PROGRAM_NAME = S_REPID

I_INTERNAL_TABNAME = 'ITAB'

  • I_STRUCTURE_NAME =

  • I_CLIENT_NEVER_DISPLAY = 'X'

I_INCLNAME = S_REPID

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

CHANGING

CT_FIELDCAT = F_LFA1

  • EXCEPTIONS

  • INCONSISTENT_INTERFACE = 1

  • PROGRAM_ERROR = 2

  • OTHERS = 3

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

I_CALLBACK_PROGRAM = S_REPID

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

I_CALLBACK_TOP_OF_PAGE = '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 = F_LFA1

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

IT_SORT = F_SORT

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

  • I_SAVE = 'A'

  • IS_VARIANT =

IT_EVENTS = F_EVENTS

IT_EVENT_EXIT = F_PRINT

  • IS_PRINT =

  • IS_REPREP_ID =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IT_ALV_GRAPHICS =

  • IT_HYPERLINK =

  • IT_ADD_FIELDCAT =

  • IT_EXCEPT_QINFO =

  • I_HTML_HEIGHT_TOP =

  • I_HTML_HEIGHT_END =

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

TABLES

T_OUTTAB = ITAB

  • EXCEPTIONS

  • PROGRAM_ERROR = 1

  • OTHERS = 2

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

*&----


*& Form BUILD_SORTCAT

*&----


  • text

*----


  • --> p1 text

  • <-- p2 text

*----


FORM BUILD_SORTCAT .

  • WA_SORT-SPOS = 1.

  • WA_SORT-FIELDNAME = 'LIFNR'.

  • WA_SORT-TABNAME = 'LFA1'.

  • APPEND WA_SORT TO F_SORT.

WA_SORT-SPOS = 2.

WA_SORT-FIELDNAME = 'LAND1'.

WA_SORT-TABNAME = 'LFA1'.

APPEND WA_SORT TO F_SORT.

ENDFORM. " BUILD_SORTCAT

&----


*& Form TOP_OF_PAGE

&----


  • text

----


FORM TOP_OF_PAGE.

w_head-typ = 'H'.

W_HEAD-INFO = 'VENDER DETAILS'.

APPEND W_HEAD TO F_HEAD.

w_head-typ = 'S'.

W_HEAD-KEY = 'DATE'.

W_HEAD-INFO = SY-DATUM.

CONCATENATE sy-datum+6(2) '.'

sy-datum+4(2) '.'

sy-datum(4) INTO w_head-info. "todays date

append w_head to F_head.

clear: w_head.

data: t_line like w_head-info.

Describe table itab lines ld_lines.

ld_linesc = ld_lines.

concatenate 'Total No. of Records Selected BY AMAR:' ld_linesc

Into t_line separated by space.

w_head-typ = 'A'.

w_head-info = t_line.

append w_head to f_head.

clear: w_head, t_line.

*WRITE: 'TOTAL NO OF LINES:' , LD_LINES.

  • CLEAR W_HEAD.

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

EXPORTING

IT_LIST_COMMENTARY = F_HEAD

I_LOGO = 'IDES_LOGO'

  • I_END_OF_LIST_GRID = 'END_OF_LIST'

.

ENDFORM. "TOP_OF_PAGE

&----


*& Form BUILD_EVENTS

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM BUILD_EVENTS .

DATA: W_EVENTS TYPE SLIS_ALV_EVENT.

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

EXPORTING

I_LIST_TYPE = 0

IMPORTING

ET_EVENTS = F_EVENTS.

READ TABLE F_EVENTS WITH KEY NAME = 'SLIS_EV_END_OF_PAGE'

INTO W_EVENTS.

IF SY-SUBRC = 0.

MOVE 'END_OF_PAGE' TO W_EVENTS-FORM.

APPEND W_EVENTS TO F_EVENTS.

ENDIF.

  • EXCEPTIONS

  • LIST_TYPE_WRONG = 1

  • OTHERS = 2

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDFORM. " BUILD_EVENTS

&----


*& Form END_OF_PAGE

&----


  • text

----


FORM END_OF_PAGE.

data: listwidth type i,

ld_pagepos(10) type c,

ld_page(10) type c.

write: sy-uline(50).

skip.

write:/40 'Page:', sy-pagno .

ENDFORM. "END_OF_PAGE

&----


*& Form BUILD_PRINT

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM BUILD_PRINT .

F_PRINT-reserve_lines = '3'. "Lines reserved for footer

F_PRINT-no_coverpage = 'X'.

ENDFORM. " BUILD_PRINT

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,010

change the 2 lines of code below in FM REUSE_ALV_GRID_DISPLAY

it_event_exit =

IS_PRINT = f_print "<----- assign f_print here , not to abaove line

change the 2 lines of code below in FM REUSE_ALV_GRID_DISPLAY

it_event_exit =

IS_PRINT = f_print "<----- assign f_print here , not to abaove line

7 REPLIES 7
Read only

Former Member
0 Likes
1,010

.Hi,

What error is the program showing?

I can tell you to go in debug mode and run your program.. You will find yourself the problem..

else please paste the error so that we can rectify it.

regards,

nazeer

Read only

0 Likes
1,010

it is showing short dump,

function module wass incorrectly called.

Read only

Former Member
0 Likes
1,011

change the 2 lines of code below in FM REUSE_ALV_GRID_DISPLAY

it_event_exit =

IS_PRINT = f_print "<----- assign f_print here , not to abaove line

Read only

Former Member
0 Likes
1,010

HI,

U change the fallowing data declaration as below

f_print TYPE slis_print_alv, " wrong declaration

f_print TYPE SLIS_T_EVENT_EXIT " Correct declaration

Regards,

Kasi S

Read only

Former Member
0 Likes
1,010

Hi,

Read only

Former Member
0 Likes
1,010

HI,

check this code its working

&----


*& Report ZALV_PRACTICE1_OWN *

*& *

&----


*& *

*& *

&----


REPORT ZALV_PRACTICE1_OWN .

TABLES: LFA1, EKKO.

DATA: BEGIN OF ITAB OCCURS 0,

LIFNR LIKE LFA1-LIFNR,

NAME1 LIKE LFA1-NAME1,

LAND1 LIKE LFA1-LAND1,

EBELN LIKE EKKO-EBELN,

END OF ITAB.

SELECT-OPTIONS: VEND FOR LFA1-LIFNR.

TYPE-POOLS: SLIS.

DATA: S_REPID TYPE SY-REPID,

LD_LINES TYPE i,

LD_LINESC(15) TYPE C,

F_LFA1 TYPE SLIS_T_FIELDCAT_ALV,

F_SORT TYPE SLIS_SORTINFO_ALV OCCURS 1,

WA_SORT LIKE LINE OF F_SORT,

F_HEAD TYPE SLIS_T_LISTHEADER,

W_HEAD TYPE SLIS_LISTHEADER,

F_EVENTS TYPE SLIS_T_EVENT,

F_PRINT TYPE SLIS_PRINT_ALV,

F_LAYOUT TYPE SLIS_LAYOUT_ALV_SPEC.

SELECT LIFNR NAME1 LAND1 FROM LFA1 INTO TABLE ITAB

WHERE LIFNR IN VEND.

PERFORM BUILD_SORTCAT.

PERFORM BUILD_EVENTS.

PERFORM BUILD_PRINT.

S_REPID = SY-REPID.

*LOOP AT ITAB.

  • WRITE: / ITAB-LIFNR, ITAB-EBELN.

*ENDLOOP.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

I_PROGRAM_NAME = S_REPID

I_INTERNAL_TABNAME = 'ITAB'

  • I_STRUCTURE_NAME =

  • I_CLIENT_NEVER_DISPLAY = 'X'

I_INCLNAME = S_REPID

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

CHANGING

CT_FIELDCAT = F_LFA1

  • EXCEPTIONS

  • INCONSISTENT_INTERFACE = 1

  • PROGRAM_ERROR = 2

  • OTHERS = 3

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

I_CALLBACK_PROGRAM = S_REPID

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

I_CALLBACK_TOP_OF_PAGE = '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 = F_LFA1

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

IT_SORT = F_SORT

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

  • I_SAVE = 'A'

  • IS_VARIANT =

IT_EVENTS = F_EVENTS

*IT_EVENT_EXIT = F_PRINT

  • IS_PRINT = F_PRINT

  • IS_REPREP_ID =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IT_ALV_GRAPHICS =

  • IT_HYPERLINK =

  • IT_ADD_FIELDCAT =

  • IT_EXCEPT_QINFO =

  • I_HTML_HEIGHT_TOP =

  • I_HTML_HEIGHT_END =

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

TABLES

T_OUTTAB = ITAB

  • EXCEPTIONS

  • PROGRAM_ERROR = 1

  • OTHERS = 2

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

*&----


*& Form BUILD_SORTCAT

*&----


  • text

*----


  • --> p1 text

  • <-- p2 text

*----


FORM BUILD_SORTCAT .

  • WA_SORT-SPOS = 1.

  • WA_SORT-FIELDNAME = 'LIFNR'.

  • WA_SORT-TABNAME = 'LFA1'.

  • APPEND WA_SORT TO F_SORT.

WA_SORT-SPOS = 2.

WA_SORT-FIELDNAME = 'LAND1'.

WA_SORT-TABNAME = 'LFA1'.

APPEND WA_SORT TO F_SORT.

ENDFORM. " BUILD_SORTCAT

&----


*& Form TOP_OF_PAGE

&----


  • text

----


FORM TOP_OF_PAGE.

w_head-typ = 'H'.

W_HEAD-INFO = 'VENDER DETAILS'.

APPEND W_HEAD TO F_HEAD.

w_head-typ = 'S'.

W_HEAD-KEY = 'DATE'.

W_HEAD-INFO = SY-DATUM.

CONCATENATE sy-datum+6(2) '.'

sy-datum+4(2) '.'

sy-datum(4) INTO w_head-info. "todays date

append w_head to F_head.

clear: w_head.

data: t_line like w_head-info.

Describe table itab lines ld_lines.

ld_linesc = ld_lines.

concatenate 'Total No. of Records Selected BY AMAR:' ld_linesc

Into t_line separated by space.

w_head-typ = 'A'.

w_head-info = t_line.

append w_head to f_head.

clear: w_head, t_line.

*WRITE: 'TOTAL NO OF LINES:' , LD_LINES.

  • CLEAR W_HEAD.

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

EXPORTING

IT_LIST_COMMENTARY = F_HEAD

I_LOGO = 'IDES_LOGO'

  • I_END_OF_LIST_GRID = 'END_OF_LIST'

.

ENDFORM. "TOP_OF_PAGE

&----


*& Form BUILD_EVENTS

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM BUILD_EVENTS .

DATA: W_EVENTS TYPE SLIS_ALV_EVENT.

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

EXPORTING

I_LIST_TYPE = 0

IMPORTING

ET_EVENTS = F_EVENTS.

READ TABLE F_EVENTS WITH KEY NAME = 'SLIS_EV_END_OF_PAGE'

INTO W_EVENTS.

IF SY-SUBRC = 0.

MOVE 'END_OF_PAGE' TO W_EVENTS-FORM.

APPEND W_EVENTS TO F_EVENTS.

ENDIF.

  • EXCEPTIONS

  • LIST_TYPE_WRONG = 1

  • OTHERS = 2

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDFORM. " BUILD_EVENTS

&----


*& Form END_OF_PAGE

&----


  • text

----


FORM END_OF_PAGE.

data: listwidth type i,

ld_pagepos(10) type c,

ld_page(10) type c.

write: sy-uline(50).

skip.

write:/40 'Page:', sy-pagno .

ENDFORM. "END_OF_PAGE

&----


*& Form BUILD_PRINT

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM BUILD_PRINT .

F_PRINT-reserve_lines = '3'. "Lines reserved for footer

F_PRINT-no_coverpage = 'X'.

ENDFORM. " BUILD_PRINT

Read only

Former Member
0 Likes
1,010

chk is:

*IT_EVENT_EXIT = F_PRINT

IS_PRINT = F_PRINT

you had pased F_PRINT to IT_ENENT_EXIT it should be passed to IS_PRINT

teh dump you go tbecouse of the conflicting sturcutres!!!

above pasted code it the corrected one so you can use it.