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 interactive report

Former Member
0 Likes
1,333

Hi,

I developed interactive report, when i am going from second screen to first screen .

I want to do validation. but under case sy-ucomm

written statment eventhough its not triggering.

Thanks,'

Asha

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,298

Can you show what you are doing..? and what is exactly you want to validate..?

14 REPLIES 14
Read only

naimesh_patel
Active Contributor
0 Likes
1,298

You need to implement the DATA_CHANGED event for the Second ALV.

Regards,

Naimesh Patel

Read only

Former Member
0 Likes
1,299

Can you show what you are doing..? and what is exactly you want to validate..?

Read only

0 Likes
1,298

Under ALV report ,

I am going to second screen and coming to first screen by pressing back button.

when i putbreakpoint for back button, its notstopping..\

Here my question, how should i trigger back button in alv send report.

Thanks,

Asha

Read only

0 Likes
1,298

is it a normal ALV or OO ALV.

Read only

0 Likes
1,298

normal ALV

Read only

0 Likes
1,298

post your code here..

Read only

0 Likes
1,298

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

i_callback_program = v_repid

  • I_CALLBACK_PF_STATUS_SET = 'PFF_STATUS'

i_callback_user_command = 'F_USER_COMMAND'

i_callback_top_of_page = 'TOP_OF_PAGE'

i_grid_title = i_title_ekpo

it_fieldcat = i_fieldcat1[]

TABLES

t_outtab = GT_RADIO

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 user_command USING ucomm TYPE sy-ucomm

rs_selfield2 TYPE slis_selfield.

CASE ucomm.

WHEN '&F03'.

Perform logic.

WHEN '&IC1'.

READ TABLE GT_RADIO INTO wt_radio INDEX rs_selfield2-tabindex.

CASE rs_selfield2-fieldname.

WHEN 'RADIO1'.

IF wt_radio-radio1 = icon_radiobutton.

wt_radio-radio2 = icon_wd_radio_button_empty.

wt_radio-radio3 = icon_wd_radio_button_empty.

MODIFY GT_RADIO FROM wt_radio INDEX rs_selfield2-tabindex

TRANSPORTING radio1 radio2 radio3.

ELSE.

wt_radio-radio1 = icon_radiobutton.

wt_radio-radio2 = icon_wd_radio_button_empty.

wt_radio-radio3 = icon_wd_radio_button_empty.

MODIFY GT_RADIO FROM wt_radio INDEX rs_selfield2-tabindex

TRANSPORTING radio1 radio2 radio3.

ENDIF.

WHEN 'RADIO2'.

IF wt_radio-radio2 = icon_radiobutton.

wt_radio-radio1 = icon_wd_radio_button_empty.

wt_radio-radio3 = icon_wd_radio_button_empty.

MODIFY GT_RADIO FROM wt_radio INDEX rs_selfield2-tabindex

TRANSPORTING radio1 radio2 radio3.

ELSE.

wt_radio-radio2 = icon_radiobutton.

wt_radio-radio1 = icon_wd_radio_button_empty.

wt_radio-radio3 = icon_wd_radio_button_empty.

MODIFY GT_RADIO FROM wt_radio INDEX rs_selfield2-tabindex

TRANSPORTING radio1 radio2 radio3.

ENDIF.

WHEN 'RADIO3'.

IF wt_radio-radio3 = icon_radiobutton.

wt_radio-radio1 = icon_wd_radio_button_empty.

wt_radio-radio2 = icon_wd_radio_button_empty.

MODIFY GT_RADIO FROM wt_radio INDEX rs_selfield2-tabindex

TRANSPORTING radio1 radio2 radio3.

ELSE.

wt_radio-radio3 = icon_radiobutton.

wt_radio-radio1 = icon_wd_radio_button_empty.

wt_radio-radio2 = icon_wd_radio_button_empty.

MODIFY GT_RADIO FROM wt_radio INDEX rs_selfield2-tabindex

TRANSPORTING radio1 radio2 radio3.

ENDIF.

PERFORM display_alv_ekpof.

ENDCASE.

ENDCASE.

rs_selfield2-refresh = 'X'.

Read only

0 Likes
1,298

PERFORM display_alv_ekpof. " what is there in this..?

Read only

0 Likes
1,298

I supposed to comment that statement.

Read only

0 Likes
1,298

Since you are trying to stop your program at the Standard ALV button. You need to implement the EVENTS_EXIT .


  ls_event_exit-ucomm = '&F03'.
  ls_event_exit-after = 'X'.   "<< it will stop after the code execution
  APPEND ls_event_exit TO it_event_exit.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
...
      it_event_exit           = it_event_exit     "<< 
    TABLES
      t_outtab                = it_bkpf.
.

It will stop now in your USER COMMAND.

Regards,

Naimesh Patel

Read only

0 Likes
1,298

when I press back arrow button , break point is not triggering.

Thanks,

Asha

Read only

0 Likes
1,298

Do not give the fcode value for the BACK button as "BACK" or "&F03". Give it some other value like "BACK1", then it will stop.

Read only

0 Likes
1,298

It seems that you are setting up the USER COMMAND using the Events. For the EVENTS EXIT, you have to pass the USER COMMAND in the I_CALLBACK_USER_COMMAND .


  ls_event_exit-ucomm = '&F03'.
  ls_event_exit-after = 'X'.   "<< it will stop after the code execution
  APPEND ls_event_exit TO it_event_exit.
 
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      I_CALLBACK_USER_COMMAND = 'USER_COMMAND'   "<< Subroutine of your user command

...
      it_event_exit           = it_event_exit     "<< 
    TABLES
      t_outtab                = it_bkpf.
.

Regards,

Naimesh Patel

Read only

0 Likes
1,298

Thank you!!

I got the same problem and your response on this treat was very helpfull for me