05-29-2007 12:20 PM
hi friends,
i am using pf-status in an alv report.i want to display kunnr name1 land1 in the first list and when i click in the sod icon set using pf-status it displays 2nd list and when i press on the vbeln it should take me to 3rd list.but both icons are getting displayed on the first screen.how could i avoid both the icons on the first screen.
05-29-2007 12:23 PM
Hi
You have set the PF-STATUS for the first screen itself in the main program , check whether it might be there for the Second List/screen also.
Reward points if useful
Regards
Anji
05-29-2007 12:24 PM
In order modify PF_STATUS of ALV grid report you need to perform the following steps:
1. Update 'REUSE_ALV_GRID_DISPLAY' FM call to include:
i_callback_pf_status_set = 'SET_PF_STATUS' statement.
2. Create 'SET_PF_STATUS' FORM
3. Create pf_status (i.e. 'ZNEWSTATUS').
- It is recommend that you copy standard status'STANDARD' from function group SALV
and modify it accordingly. ALV standard function codes always start with '&'.
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_callback_program = gd_repid
i_callback_top_of_page = 'TOP-OF-PAGE'
i_callback_pf_status_set = 'SET_PF_STATUS' "see FORM
is_layout = gd_layout
it_fieldcat = fieldcatalog[]
i_save = 'X'
tables
t_outtab = it_ekko
exceptions
program_error = 1
others = 2.
*------------------------------------------------------------------*
* FORM SET_PF_STATUS *
*------------------------------------------------------------------*
FORM set_pf_status USING rt_extab TYPE slis_t_extab.
SET PF-STATUS 'ZNEWSTATUS'.
"Copy of 'STANDARD' pf_status from fgroup SALV
ENDFORM.
girish
05-29-2007 12:25 PM
while filling pf status in ALV Function module,i think you gave pf-status same for all ALV Function module..
05-29-2007 12:27 PM
Caution!!!!!! Use this line only if you want to show the save button
*on your screen.
i_callback_pf_status_set = 'PF_STATUS_SET'
****
i_callback_user_command = 'LINE_CLICK'
i_callback_top_of_page = 'TOP_ROUTINE'
i_grid_title = text-h01
is_layout = my_layout
it_fieldcat = it_fieldcatalog
it_sort = it_sort
i_save = g_save
is_variant = lh_variant
TABLES
t_outtab = itab_d " need to be changed
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.
ENDFORM. " output
&----
*& Form PF_STATUS_SET
&----
FORM pf_status_set USING rt_extab TYPE slis_t_extab.
SET PF-STATUS 'STANDARD_FULLSCREEN' OF PROGRAM 'SAPLKKBL'.
ENDFORM. " pf_status_set
05-29-2007 12:31 PM
Hi,
You have created only one status which contains both the icons in it. So for any screen to which you will assign this status, it will show both the icons whatever contained in that Status.
Now if u need that, that only one icon shud apper on one screen and 2 icons on another screen then u have to create 2 different status. One status with one icon and set it in ur main screen, Create another status with 2 icons and set it in the secondary list.
Reward if useful.
Regards,
Harsha