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

Function ALV Refresh Problem

Former Member
0 Likes
532

Hi, everybody!

I want change internal table data to display again using function alv. (Refresh)

Please tell me if have a alv function may implement.

No Class ALV.

Thanks Advanced!

4 REPLIES 4
Read only

Former Member
0 Likes
500

yes, it can be done. Here is the code for reference if you are using FM -

REPORT  ZSKC_TEST.
TYPE-POOLS : SLIS.
DATA : I_MARA TYPE TABLE OF MARA.

START-OF-SELECTION.

SELECT * UP TO 10 ROWS
FROM   MARA
INTO   TABLE I_MARA
WHERE  MATNR NE SPACE.

CHECK SY-SUBRC EQ 0.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
    I_CALLBACK_PROGRAM                = 'ZSKC_TEST'
    I_CALLBACK_USER_COMMAND           = 'SUB_CALL_BACK'
    I_STRUCTURE_NAME                  = 'MARA'
  TABLES
    T_OUTTAB                          = I_MARA
  EXCEPTIONS
    PROGRAM_ERROR                     = 1
    OTHERS                            = 2.


*&---------------------------------------------------------------------*
*&      Form  SUB_CALL_BACK
*&---------------------------------------------------------------------*
*      CALL BACK ROUTINE FOR ALV
*----------------------------------------------------------------------*
FORM SUB_CALL_BACK USING I_FCODE     TYPE sy-ucomm
                         IS_selfield TYPE slis_selfield.
FIELD-SYMBOLS : <FS_MARA> TYPE MARA.

  LOOP AT I_MARA ASSIGNING <FS_MARA>.
    <FS_MARA>-ERNAM = SY-UNAME.
  ENDLOOP.
  IS_SELFIELD-REFRESH = 'X'.

ENDFORM.                    " SUB_CALL_BACK

Read only

0 Likes
500

Thank you SKC.

Thank you very much!

Read only

Former Member
0 Likes
500

Refer the below code :

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

I_CALLBACK_USER_COMMAND = 'USER_COMMAND'

IT_FIELDCAT = GT_FIELDCAT

IS_LAYOUT = GS_LAYOUT

TABLES

T_OUTTAB = IT_FINAL.

FORM USER_COMMAND USING LV_UCOMM TYPE SYUCOMM

LS_SELFIELD TYPE SLIS_SELFIELD. "#EC CALLED

  • process fcodes relevant for application

CASE LV_UCOMM.

  • refresh list

WHEN 'REFRESH'.

PERFORM ALV_DISPLAY.

ENDCASE.

FORM ALV_DISPLAY.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

IT_FIELDCAT = GT_FIELDCAT1

IS_LAYOUT = GS_LAYOUT1

TABLES

T_OUTTAB = IT_FINAL1.

ENDFORM.

Read only

Former Member
0 Likes
500

Hi,

for your requirement i.e you can change the internal table data after displaying by using edit functionality

in the alv

please check the following code

{

LOOP AT IT_FIELDCAT INTO WA_FIELDCAT .

CASE: WA_FIELDCAT-FIELDNAME.

WHEN 'MATNR'.

WA_FIELDCAT-NO_OUT = ' '.

WHEN 'MEINS'.

WA_FIELDCAT-NO_OUT = ' '.

WHEN 'MTART'.

WA_FIELDCAT-NO_OUT = ' '.

WA_FIELDCAT-EDIT = 'X'.

WHEN 'MBRSH'.

WA_FIELDCAT-NO_OUT = ' '.

WHEN OTHERS.

WA_FIELDCAT-NO_OUT = 'X'.

ENDCASE.

MODIFY IT_FIELDCAT FROM WA_FIELDCAT.

ENDLOOP.

}

Thnaks & Regards,

Sateesh