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 program

Former Member
0 Likes
441

how to use REUSE_ALV_BLOCK_LIST_APPEND in alv programme.

in need of sample programme

with thanks ,

durga

Message was edited by:

durga bhavani gurram

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
407

Hai,

See the below code:

REPORT ZALVTEST.

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

*REPORT ZFIGALV .

*******Declare Data Areas for List Viewer (Begin)***********

TYPE-POOLS: SLIS.

DATA: FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,

FIELDCAT_LN LIKE LINE OF FIELDCAT,

SORTCAT TYPE SLIS_T_SORTINFO_ALV,

SORTCAT_LN LIKE LINE OF SORTCAT,

EVENTCAT TYPE SLIS_T_EVENT,

EVENTCAT_LN LIKE LINE OF EVENTCAT.

DATA: COL_POS TYPE I.

******Declare Data Areas for List Viewer (End)**************

******Declare Internal Table to Store Selected Data (Begin)*

DATA: BEGIN OF IVBAP OCCURS 0,

VBELN LIKE VBAP-VBELN,

POSNR LIKE VBAP-POSNR,

MATNR LIKE VBAP-MATNR,

MATKL LIKE VBAP-MATKL,

CHARG LIKE VBAP-CHARG,

KWMENG LIKE VBAP-KWMENG,

VRKME LIKE VBAP-VRKME,

ARKTX LIKE VBAP-ARKTX,

END OF IVBAP.

******Declare Internal Table to Store Selected Data (End)***

*******Select Data into Internal Table (Begin) ***************

SELECT VBELN POSNR MATNR MATKL KWMENG VRKME

INTO CORRESPONDING FIELDS OF TABLE IVBAP

FROM VBAP WHERE VBELN NE 0.

              • Select Data into Internal Table (End) ****************

              • Build Field Catalogs (Begin)**************************

PERFORM BUILD_FIELDCAT.

PERFORM BUILD_FIELDCAT2.

PERFORM BUILD_FIELDCAT3.

PERFORM BUILD_SORTCAT.

PERFORM BUILD_SORTCAT2.

******Build Field Catalogs (End)*****************************

******Build Event Catalog (Begin)****************************

PERFORM BUILD_EVENTCAT.

******Build Event Catalog (End)******************************

******Start List Viewer (Begin)******************************

PERFORM START_LIST_VIEWER.

******Start List Viewer (End)********************************

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

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

********FORM ROUTINES (Begin)********************************

FORM BUILD_FIELDCAT.

ADD 1 TO COL_POS.

FIELDCAT_LN-REF_TABNAME = 'VBAP'.

FIELDCAT_LN-FIELDNAME = 'VBELN'.

FIELDCAT_LN-KEY = 'X'.

FIELDCAT_LN-DO_SUM = SPACE.

FIELDCAT_LN-COL_POS = COL_POS.

FIELDCAT_LN-NO_OUT = SPACE.

FIELDCAT_LN-QFIELDNAME = SPACE.

FIELDCAT_LN-HOTSPOT = 'X'.

APPEND FIELDCAT_LN TO FIELDCAT.

ENDFORM.

FORM BUILD_FIELDCAT2.

ADD 1 TO COL_POS.

FIELDCAT_LN-REF_TABNAME = 'VBAP'.

FIELDCAT_LN-FIELDNAME = 'MATNR'.

FIELDCAT_LN-KEY = SPACE.

FIELDCAT_LN-DO_SUM = SPACE.

FIELDCAT_LN-COL_POS = COL_POS.

FIELDCAT_LN-NO_OUT = SPACE.

FIELDCAT_LN-QFIELDNAME = SPACE.

FIELDCAT_LN-HOTSPOT = SPACE.

APPEND FIELDCAT_LN TO FIELDCAT.

ENDFORM.

FORM BUILD_FIELDCAT3.

ADD 1 TO COL_POS.

FIELDCAT_LN-REF_TABNAME = 'VBAP'.

FIELDCAT_LN-FIELDNAME = 'MATKL'.

FIELDCAT_LN-KEY = SPACE.

FIELDCAT_LN-DO_SUM = 'X'.

FIELDCAT_LN-COL_POS = COL_POS.

FIELDCAT_LN-NO_OUT = SPACE.

FIELDCAT_LN-QFIELDNAME = SPACE.

FIELDCAT_LN-HOTSPOT = SPACE.

APPEND FIELDCAT_LN TO FIELDCAT.

ENDFORM.

FORM BUILD_SORTCAT.

SORTCAT_LN-SPOS = '1'.

SORTCAT_LN-FIELDNAME = 'MATNR'.

SORTCAT_LN-UP = 'X'.

SORTCAT_LN-DOWN = SPACE.

SORTCAT_LN-SUBTOT = 'X'.

APPEND SORTCAT_LN TO SORTCAT.

ENDFORM.

FORM BUILD_SORTCAT2.

SORTCAT_LN-SPOS = '2'.

SORTCAT_LN-FIELDNAME = 'VRKME'.

SORTCAT_LN-UP = SPACE.

SORTCAT_LN-DOWN = 'X'.

SORTCAT_LN-SUBTOT = SPACE.

APPEND SORTCAT_LN TO SORTCAT.

ENDFORM.

FORM BUILD_EVENTCAT.

EVENTCAT_LN-NAME = 'TOP_OF_PAGE'.

EVENTCAT_LN-FORM = 'PAGE_HEADER'.

APPEND EVENTCAT_LN TO EVENTCAT.

ENDFORM.

FORM START_LIST_VIEWER.

DATA: PGM LIKE SY-REPID.

PGM = SY-REPID.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

I_CALLBACK_PROGRAM = PGM

  • i_callback_pf_status_set = ' '

I_CALLBACK_USER_COMMAND = 'USER_COMMAND'

  • I_STRUCTURE_NAME =

  • IS_LAYOUT =

IT_FIELDCAT = FIELDCAT

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

IT_SORT = SORTCAT

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

I_SAVE = 'A'

  • IS_VARIANT = ' '

  • IT_EVENTS =

  • IT_EVENT_EXIT =

  • IS_PRINT =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • es_exit_caused_by_user =

TABLES

T_OUTTAB = IVBAP

EXCEPTIONS

PROGRAM_ERROR = 1

OTHERS = 2.

ENDFORM.

*******Process Call Back Events (Begin)**************************

FORM USER_COMMAND USING UCOMM LIKE SY-UCOMM

SELFIELD TYPE SLIS_SELFIELD.

READ TABLE IVBAP INDEX SELFIELD-TABINDEX.

CHECK SY-SUBRC = 0.

CASE UCOMM.

WHEN '&IC1'.

CASE SELFIELD-SEL_TAB_FIELD.

WHEN 'IVBAP-VBELN'.

SET PARAMETER ID 'AUN' FIELD IVBAP-VBELN.

CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.

WHEN 'IVBAP-MATNR'.

SET PARAMETER ID 'MAT' FIELD IVBAP-MATNR.

CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.

ENDCASE.

ENDCASE.

ENDFORM.

Reward points if it helps you.

Regds,

Rama chary.Pammi

2 REPLIES 2
Read only

Former Member
0 Likes
407

BALVBT01

BCALV_TEST_BLOCK_LIST

Read only

Former Member
0 Likes
408

Hai,

See the below code:

REPORT ZALVTEST.

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

*REPORT ZFIGALV .

*******Declare Data Areas for List Viewer (Begin)***********

TYPE-POOLS: SLIS.

DATA: FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,

FIELDCAT_LN LIKE LINE OF FIELDCAT,

SORTCAT TYPE SLIS_T_SORTINFO_ALV,

SORTCAT_LN LIKE LINE OF SORTCAT,

EVENTCAT TYPE SLIS_T_EVENT,

EVENTCAT_LN LIKE LINE OF EVENTCAT.

DATA: COL_POS TYPE I.

******Declare Data Areas for List Viewer (End)**************

******Declare Internal Table to Store Selected Data (Begin)*

DATA: BEGIN OF IVBAP OCCURS 0,

VBELN LIKE VBAP-VBELN,

POSNR LIKE VBAP-POSNR,

MATNR LIKE VBAP-MATNR,

MATKL LIKE VBAP-MATKL,

CHARG LIKE VBAP-CHARG,

KWMENG LIKE VBAP-KWMENG,

VRKME LIKE VBAP-VRKME,

ARKTX LIKE VBAP-ARKTX,

END OF IVBAP.

******Declare Internal Table to Store Selected Data (End)***

*******Select Data into Internal Table (Begin) ***************

SELECT VBELN POSNR MATNR MATKL KWMENG VRKME

INTO CORRESPONDING FIELDS OF TABLE IVBAP

FROM VBAP WHERE VBELN NE 0.

              • Select Data into Internal Table (End) ****************

              • Build Field Catalogs (Begin)**************************

PERFORM BUILD_FIELDCAT.

PERFORM BUILD_FIELDCAT2.

PERFORM BUILD_FIELDCAT3.

PERFORM BUILD_SORTCAT.

PERFORM BUILD_SORTCAT2.

******Build Field Catalogs (End)*****************************

******Build Event Catalog (Begin)****************************

PERFORM BUILD_EVENTCAT.

******Build Event Catalog (End)******************************

******Start List Viewer (Begin)******************************

PERFORM START_LIST_VIEWER.

******Start List Viewer (End)********************************

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

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

********FORM ROUTINES (Begin)********************************

FORM BUILD_FIELDCAT.

ADD 1 TO COL_POS.

FIELDCAT_LN-REF_TABNAME = 'VBAP'.

FIELDCAT_LN-FIELDNAME = 'VBELN'.

FIELDCAT_LN-KEY = 'X'.

FIELDCAT_LN-DO_SUM = SPACE.

FIELDCAT_LN-COL_POS = COL_POS.

FIELDCAT_LN-NO_OUT = SPACE.

FIELDCAT_LN-QFIELDNAME = SPACE.

FIELDCAT_LN-HOTSPOT = 'X'.

APPEND FIELDCAT_LN TO FIELDCAT.

ENDFORM.

FORM BUILD_FIELDCAT2.

ADD 1 TO COL_POS.

FIELDCAT_LN-REF_TABNAME = 'VBAP'.

FIELDCAT_LN-FIELDNAME = 'MATNR'.

FIELDCAT_LN-KEY = SPACE.

FIELDCAT_LN-DO_SUM = SPACE.

FIELDCAT_LN-COL_POS = COL_POS.

FIELDCAT_LN-NO_OUT = SPACE.

FIELDCAT_LN-QFIELDNAME = SPACE.

FIELDCAT_LN-HOTSPOT = SPACE.

APPEND FIELDCAT_LN TO FIELDCAT.

ENDFORM.

FORM BUILD_FIELDCAT3.

ADD 1 TO COL_POS.

FIELDCAT_LN-REF_TABNAME = 'VBAP'.

FIELDCAT_LN-FIELDNAME = 'MATKL'.

FIELDCAT_LN-KEY = SPACE.

FIELDCAT_LN-DO_SUM = 'X'.

FIELDCAT_LN-COL_POS = COL_POS.

FIELDCAT_LN-NO_OUT = SPACE.

FIELDCAT_LN-QFIELDNAME = SPACE.

FIELDCAT_LN-HOTSPOT = SPACE.

APPEND FIELDCAT_LN TO FIELDCAT.

ENDFORM.

FORM BUILD_SORTCAT.

SORTCAT_LN-SPOS = '1'.

SORTCAT_LN-FIELDNAME = 'MATNR'.

SORTCAT_LN-UP = 'X'.

SORTCAT_LN-DOWN = SPACE.

SORTCAT_LN-SUBTOT = 'X'.

APPEND SORTCAT_LN TO SORTCAT.

ENDFORM.

FORM BUILD_SORTCAT2.

SORTCAT_LN-SPOS = '2'.

SORTCAT_LN-FIELDNAME = 'VRKME'.

SORTCAT_LN-UP = SPACE.

SORTCAT_LN-DOWN = 'X'.

SORTCAT_LN-SUBTOT = SPACE.

APPEND SORTCAT_LN TO SORTCAT.

ENDFORM.

FORM BUILD_EVENTCAT.

EVENTCAT_LN-NAME = 'TOP_OF_PAGE'.

EVENTCAT_LN-FORM = 'PAGE_HEADER'.

APPEND EVENTCAT_LN TO EVENTCAT.

ENDFORM.

FORM START_LIST_VIEWER.

DATA: PGM LIKE SY-REPID.

PGM = SY-REPID.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

I_CALLBACK_PROGRAM = PGM

  • i_callback_pf_status_set = ' '

I_CALLBACK_USER_COMMAND = 'USER_COMMAND'

  • I_STRUCTURE_NAME =

  • IS_LAYOUT =

IT_FIELDCAT = FIELDCAT

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

IT_SORT = SORTCAT

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

I_SAVE = 'A'

  • IS_VARIANT = ' '

  • IT_EVENTS =

  • IT_EVENT_EXIT =

  • IS_PRINT =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • es_exit_caused_by_user =

TABLES

T_OUTTAB = IVBAP

EXCEPTIONS

PROGRAM_ERROR = 1

OTHERS = 2.

ENDFORM.

*******Process Call Back Events (Begin)**************************

FORM USER_COMMAND USING UCOMM LIKE SY-UCOMM

SELFIELD TYPE SLIS_SELFIELD.

READ TABLE IVBAP INDEX SELFIELD-TABINDEX.

CHECK SY-SUBRC = 0.

CASE UCOMM.

WHEN '&IC1'.

CASE SELFIELD-SEL_TAB_FIELD.

WHEN 'IVBAP-VBELN'.

SET PARAMETER ID 'AUN' FIELD IVBAP-VBELN.

CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.

WHEN 'IVBAP-MATNR'.

SET PARAMETER ID 'MAT' FIELD IVBAP-MATNR.

CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.

ENDCASE.

ENDCASE.

ENDFORM.

Reward points if it helps you.

Regds,

Rama chary.Pammi