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

Problem In Block ALV

Former Member
0 Likes
756

Dear Friends,

I am using Block ALV. I need diffrent labels (headings) before each block of alv. Is there any way?

Regards,

Bhavin

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
722

Hi,

Did you Check the samples..<b>BALVBT01 , BALVBT02</b>, if not check it.

Regards

vijay

7 REPLIES 7
Read only

Former Member
0 Likes
722

Hi bhavin,

1. EVENTS

2. For that, just like normal ALV,

u will have to use EVENT concepts

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

is_layout = alvly

it_fieldcat = alvfc

i_tabname = 'PTAB'

<b>it_events = alvev</b>

3. eg. TOP_OF_PAGE

regards,

amit m.

Read only

Former Member
0 Likes
722

Hi,

Check the following standard programs, this might give a clue,

BALVBT01

BALVBT02

Rgds,

Read only

Former Member
0 Likes
723

Hi,

Did you Check the samples..<b>BALVBT01 , BALVBT02</b>, if not check it.

Regards

vijay

Read only

0 Likes
722

Thanks for your reply.

I have written below code. Lists are appended properly. But still in the output only first block comes. If first block is initial then it displays second block otherwise displays only first block.

Can you suggest me what can be my mistake in the below code.

&----


*& Form APPEND_FOR_DAY

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM APPEND_FOR_DAY .

IF NOT IT_FOR_DAY IS INITIAL.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

IT_FIELDCAT = IT_FIELDCAT_FOR_DAY

IS_LAYOUT = IS_LAYOUT_FOR_DAY

I_TABNAME = 'IT_FOR_DAY'

IT_EVENTS = IT_EVENT_FOR_DAY[]

TABLES

T_OUTTAB = IT_FOR_DAY[].

IF SY-SUBRC <> 0.

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

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

ENDIF.

ENDIF.

ENDFORM. " APPEND_FOR_DAY

&----


*& Form APPEND_FOR_MONTH

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM APPEND_FOR_MONTH .

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

IT_FIELDCAT = IT_FIELDCAT_FOR_MONTH

IS_LAYOUT = IS_LAYOUT_FOR_MONTH

I_TABNAME = 'IT_FOR_MONTH'

IT_EVENTS = IT_EVENT_FOR_MONTH[]

TABLES

T_OUTTAB = IT_FOR_MONTH[].

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. " APPEND_FOR_MONTH

&----


*& Form LIST_DISPLAY

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM LIST_DISPLAY .

DATA: GT_PRINT TYPE SLIS_PRINT_ALV.

GT_PRINT-RESERVE_LINES = 2.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'

EXPORTING

IS_PRINT = GT_PRINT.

.

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. " LIST_DISPLAY

Read only

0 Likes
722

Hi,

can you give your complete coding.so that i will run and see what is wrong with it.

Regards

vijay

Read only

0 Likes
722

&----


*& Report ZSD_DESPATCH

*&

&----


*&

*&

&----


REPORT ZSD_DESPATCH NO STANDARD PAGE HEADING.

&----


*& Type Pool Declaration

*&

&----


TYPE-POOLS: SLIS.

&----


*& External Table Declaration

*&

&----


TABLES: VBRK, VBRP.

&----


*& Types Declaration

*&

&----


TYPES: BEGIN OF ST_VBRKVBRP,

SORTL LIKE KNA1-SORTL, "Customer Sort Name

SALE(15),

BISMT LIKE MARA-BISMT, "Size

VBELN LIKE VBRK-VBELN, "Billing Doc Number

KUNAG LIKE VBRK-KUNAG, "Customer

VTWEG LIKE VBRK-VTWEG, "Distribution Channel

FKART LIKE VBRK-FKART, "Billing Doc Type

KNUMV LIKE VBRK-KNUMV, "Condition Record Number

VKORG LIKE VBRK-VKORG, "Sales Organization

KURRF LIKE VBRK-KURRF, "Billing Exchange Rate

WAERK LIKE VBRK-WAERK, "SD document currency

MATNR LIKE VBRP-MATNR, "Material Number

MATKL LIKE VBRP-MATKL, "Material group

FKIMG LIKE VBRP-FKIMG, "Actual billed quantity

POSNR LIKE VBRP-POSNR, "Item Position Number

PR00 LIKE KONV-KWERT, "PR00 Condition Based Value

ZDRP LIKE KONV-KWERT, "ZDRP Condition Based Value

FUNEL LIKE VBRP-FKIMG, "FUNEL Quantity

PANEL LIKE VBRP-FKIMG, "PANEL Quantity

FKDAT LIKE VBRK-FKDAT, "Billing date

END OF ST_VBRKVBRP.

TYPES: BEGIN OF ST_FOR_MONTH,

SORTL LIKE KNA1-SORTL,

SALE(15),

BISMT LIKE MARA-BISMT,

PANEL LIKE VBRP-FKIMG,

FUNEL LIKE VBRP-FKIMG,

PR00 LIKE KONV-KWERT,

ZDRP LIKE KONV-KWERT,

END OF ST_FOR_MONTH.

TYPES: BEGIN OF ST_FOR_DAY,

SORTL LIKE KNA1-SORTL,

SALE(15),

BISMT LIKE MARA-BISMT,

PANEL LIKE VBRP-FKIMG,

FUNEL LIKE VBRP-FKIMG,

PR00 LIKE KONV-KWERT,

ZDRP LIKE KONV-KWERT,

END OF ST_FOR_DAY.

&----


*& Internal Table Declaration

*&

&----


DATA: IT_VBRKVBRP TYPE STANDARD TABLE OF ST_VBRKVBRP.

DATA: IT_FOR_MONTH TYPE STANDARD TABLE OF ST_FOR_MONTH.

DATA: IT_FOR_DAY TYPE STANDARD TABLE OF ST_FOR_DAY.

&----


*& Work Areas Declaration

*&

&----


DATA: WA_VBRKVBRP LIKE LINE OF IT_VBRKVBRP.

DATA: WA_FOR_MONTH LIKE LINE OF IT_FOR_MONTH.

DATA: WA_FOR_DAY LIKE LINE OF IT_FOR_DAY.

&----


*& Variables Declaration

*&

&----


DATA : VALU TYPE D,

LOWDATE TYPE D,

HIGHDATE TYPE D,

L_LOWDT TYPE D,

L_HIGHDT TYPE D,

DAY TYPE I,

MONTH TYPE I,

LMONTH TYPE I,

MODN TYPE I,

PARTY_C(9) TYPE C,

LCMON(2) TYPE C,

YEAR(4) TYPE C,

LYEAR(4) TYPE C,

MONTH_NM(4) TYPE C,

PARTY LIKE VBRK-KUNAG,

MATR LIKE VBRP-MATNR,

MATGRP LIKE VBRP-MATKL.

DATA: COUNTER TYPE I.

&----


*& ALV Data Declaration

*&

&----


DATA: IT_FIELDCAT_FOR_DAY TYPE SLIS_T_FIELDCAT_ALV.

DATA: IT_FIELDCAT_FOR_MONTH TYPE SLIS_T_FIELDCAT_ALV.

DATA: WA_FIELDCAT_FOR_DAY LIKE LINE OF IT_FIELDCAT_FOR_DAY.

DATA: IT_EVENT_FOR_DAY TYPE SLIS_T_EVENT WITH HEADER LINE.

DATA: IT_EVENT_FOR_MONTH TYPE SLIS_T_EVENT WITH HEADER LINE.

DATA: TOP_OF_LIST_FOR_DAY TYPE SLIS_FORMNAME VALUE 'TOP_OF_LIST_FOR_DAY'.

DATA: TOP_OF_LIST_FOR_MON TYPE SLIS_FORMNAME VALUE 'TOP_OF_LIST_FOR_MONTH'.

DATA: IS_LAYOUT_FOR_DAY TYPE SLIS_LAYOUT_ALV.

DATA: IS_LAYOUT_FOR_MONTH TYPE SLIS_LAYOUT_ALV.

&----


*& Selection Screen

*&

&----


SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT_001.

SELECTION-SCREEN: BEGIN OF LINE.

SELECTION-SCREEN: COMMENT 1(20) TEXT_003.

SELECT-OPTIONS: S_WERKS FOR VBRP-WERKS OBLIGATORY.

SELECTION-SCREEN: END OF LINE.

SELECTION-SCREEN: BEGIN OF LINE.

SELECTION-SCREEN: COMMENT 1(20) TEXT_004.

SELECT-OPTIONS: S_VKORG FOR VBRK-VKORG OBLIGATORY.

SELECTION-SCREEN: END OF LINE.

SELECTION-SCREEN: BEGIN OF LINE.

SELECTION-SCREEN: COMMENT 1(20) TEXT_005.

SELECT-OPTIONS: S_VTWEG FOR VBRK-VTWEG OBLIGATORY.

SELECTION-SCREEN: END OF LINE.

SELECTION-SCREEN: BEGIN OF LINE.

SELECTION-SCREEN: COMMENT 1(23) TEXT_006.

PARAMETERS : DATE LIKE VBRK-FKDAT OBLIGATORY.

SELECTION-SCREEN: END OF LINE.

SELECTION-SCREEN END OF BLOCK B1.

SELECTION-SCREEN : BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT_002.

SELECTION-SCREEN: BEGIN OF LINE.

SELECTION-SCREEN: COMMENT 1(20) TEXT_007.

PARAMETERS : G1 RADIOBUTTON GROUP 1.

SELECTION-SCREEN: END OF LINE.

SELECTION-SCREEN: BEGIN OF LINE.

SELECTION-SCREEN: COMMENT 1(20) TEXT_008.

PARAMETERS : CH1 AS CHECKBOX DEFAULT 'X'.

SELECTION-SCREEN: END OF LINE.

SELECTION-SCREEN: BEGIN OF LINE.

SELECTION-SCREEN: COMMENT 1(20) TEXT_009.

PARAMETERS : CH2 AS CHECKBOX DEFAULT 'X'.

SELECTION-SCREEN: END OF LINE.

SELECTION-SCREEN: BEGIN OF LINE.

SELECTION-SCREEN: COMMENT 1(20) TEXT_010.

PARAMETERS : CH3 AS CHECKBOX DEFAULT 'X'.

SELECTION-SCREEN: END OF LINE.

SELECTION-SCREEN: BEGIN OF LINE.

SELECTION-SCREEN: COMMENT 1(20) TEXT_011.

PARAMETERS : CH4 AS CHECKBOX DEFAULT 'X'.

SELECTION-SCREEN: END OF LINE.

SELECTION-SCREEN: BEGIN OF LINE.

SELECTION-SCREEN: COMMENT 1(20) TEXT_012.

PARAMETERS : G2 RADIOBUTTON GROUP 1.

SELECTION-SCREEN: END OF LINE.

SELECTION-SCREEN : END OF BLOCK B2.

&----


*& Initialization Event

*&

&----


INITIALIZATION.

TEXT_001 = 'Despatch details report'.

TEXT_002 = 'Data selection criteria'.

TEXT_003 = 'Plant'.

TEXT_004 = 'Sales Organization'.

TEXT_005 = 'Distribution Channel'.

TEXT_006 = 'Date'.

TEXT_007 = 'Daily'.

TEXT_008 = 'Monthly Despatch'.

TEXT_009 = 'Plan Vs Despatch'.

TEXT_010 = 'Total Basic Value'.

TEXT_011 = 'Despatch Report'.

TEXT_012 = 'Despatch Rep with only basic'.

&----


*& Start of Selection

*&

&----


START-OF-SELECTION.

PERFORM GET_LYEAR.

PERFORM GET_DATA.

PERFORM FILL_FOR_DAY.

PERFORM FILL_FOR_MONTH.

PERFORM FIELDCAT_FOR_DAY.

PERFORM FIELDCAT_FOR_MONTH.

PERFORM EVENTS_FOR_DAY.

PERFORM EVENTS_FOR_MONTH.

PERFORM APPEND_FOR_DAY.

PERFORM APPEND_FOR_MONTH.

PERFORM LIST_DISPLAY.

&----


*& Form GET_LYEAR

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM GET_LYEAR.

VALU = DATE.

DAY = ( VALU+6(2) ) - 1.

MONTH = VALU+4(2).

YEAR = VALU+0(4).

IF MONTH = 1.

LMONTH = 12.

LYEAR = VALU+0(4) - 1.

ELSE.

LMONTH = VALU+4(2) - 1.

LYEAR = YEAR.

ENDIF.

LCMON = LMONTH.

MODN = LYEAR MOD 4.

IF LMONTH < 10 .

CONCATENATE LYEAR '0' LCMON '01' INTO L_LOWDT.

IF LMONTH = 01 OR LMONTH = 03 OR

LMONTH = 05 OR LMONTH = 07 OR

LMONTH = 08.

CONCATENATE LYEAR '0' LCMON '31' INTO L_HIGHDT.

ELSEIF LMONTH = 2.

IF MODN = 0.

CONCATENATE LYEAR '0' LCMON '29' INTO L_HIGHDT.

ELSE.

CONCATENATE LYEAR '0' LCMON '28' INTO L_HIGHDT.

ENDIF.

ELSE.

CONCATENATE LYEAR '0' LCMON '30' INTO L_HIGHDT.

ENDIF.

ELSE.

CONCATENATE LYEAR LCMON '01' INTO L_LOWDT.

IF LMONTH = 10 OR LMONTH = 12.

CONCATENATE LYEAR LCMON '31' INTO L_HIGHDT.

ELSE.

CONCATENATE LYEAR LCMON '30' INTO L_HIGHDT.

ENDIF.

ENDIF.

LOWDATE = DATE - ( DAY ).

HIGHDATE = DATE.

&----


*& At the of this form following date we get

&----


*& L_HIGHDT - Last Month Hight Date

*& L_LOWDT - Last Month Low Date

*& LOWDATE - Current Month Low Date

*& HIGHDATE - Current Month High Date

&----


ENDFORM. " GET_LYEAR

&----


*& Form get_data

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM GET_DATA.

SELECT VBRKVBELN VBRKKUNAG VBRK~VTWEG

VBRKFKART VBRKKNUMV VBRP~MATNR

VBRPMATKL VBRPFKIMG VBRK~VKORG

VBRKWAERK VBRKKURRF VBRP~POSNR

VBRK~FKDAT

INTO CORRESPONDING FIELDS OF WA_VBRKVBRP

FROM VBRK INNER JOIN VBRP ON

VBRKVBELN = VBRPVBELN

WHERE VBRP~WERKS IN S_WERKS AND

VBRP~VKORG_AUFT IN S_VKORG AND

VBRP~VTWEG_AUFT IN S_VTWEG AND

VBRK~FKDAT BETWEEN LOWDATE AND DATE AND

( VBRP~MATKL = 'GLASS SHE' OR

VBRP~MATKL = 'GLASS FNL' OR

VBRP~MATKL = 'GLASS PNL') AND

VBRK~RFBSK = 'C'.

  • ORDER BY VBRKVBELN VBRPMATNR.

*& Select PR00 based value

SELECT SINGLE KWERT INTO WA_VBRKVBRP-PR00

FROM KONV

WHERE KNUMV = WA_VBRKVBRP-KNUMV AND

KPOSN = WA_VBRKVBRP-POSNR AND

KSCHL = 'PR00'.

*& Select ZDRP based value

SELECT SINGLE KWERT INTO WA_VBRKVBRP-ZDRP

FROM KONV

WHERE KNUMV = WA_VBRKVBRP-KNUMV AND

KPOSN = WA_VBRKVBRP-POSNR AND

KSCHL = 'ZDRP'.

*& Select Sort name of the party

SELECT SINGLE SORTL INTO WA_VBRKVBRP-SORTL

FROM KNA1

WHERE KUNNR = WA_VBRKVBRP-KUNAG.

*& Select size of the product

SELECT SINGLE BISMT INTO WA_VBRKVBRP-BISMT

FROM MARA

WHERE MATNR = WA_VBRKVBRP-MATNR.

*& Multiply with exchange Rate

WA_VBRKVBRP-PR00 = WA_VBRKVBRP-PR00 * WA_VBRKVBRP-KURRF.

WA_VBRKVBRP-ZDRP = WA_VBRKVBRP-ZDRP * WA_VBRKVBRP-KURRF.

*& Deciding Return and Fresh Sale

IF WA_VBRKVBRP-VKORG = '1200' AND

WA_VBRKVBRP-VTWEG = '40'.

IF WA_VBRKVBRP-FKART = 'ZVRO' OR

WA_VBRKVBRP-FKART = 'ZVRW'.

WA_VBRKVBRP-SALE = 'Return'.

ELSE.

WA_VBRKVBRP-SALE = 'Fresh Sale'.

ENDIF.

ENDIF.

*& Deciding Export Sale

IF WA_VBRKVBRP-VKORG = '1202' AND

WA_VBRKVBRP-VTWEG = '45'.

WA_VBRKVBRP-SALE = 'Export'.

ENDIF.

*& Deciding Panel Quantity for the billing

IF WA_VBRKVBRP-MATKL = 'GLASS SHE' OR

WA_VBRKVBRP-MATKL = 'GLASS PNL'.

WA_VBRKVBRP-PANEL = WA_VBRKVBRP-FKIMG.

ENDIF.

*& Deciding Funel Quantity for the billing

IF WA_VBRKVBRP-MATKL = 'GLASS FNL'.

WA_VBRKVBRP-FUNEL = WA_VBRKVBRP-FKIMG.

ENDIF.

*& Indicating Minus Price and quantity for the Return Sale

IF WA_VBRKVBRP-FKART = 'ZVRO' OR

WA_VBRKVBRP-FKART = 'ZVRW'.

WA_VBRKVBRP-PANEL = WA_VBRKVBRP-PANEL * -1.

WA_VBRKVBRP-FUNEL = WA_VBRKVBRP-FUNEL * -1.

WA_VBRKVBRP-PR00 = WA_VBRKVBRP-PR00 * -1.

WA_VBRKVBRP-ZDRP = WA_VBRKVBRP-ZDRP * -1.

ENDIF.

APPEND WA_VBRKVBRP TO IT_VBRKVBRP.

CLEAR: WA_VBRKVBRP.

ENDSELECT.

SORT IT_VBRKVBRP BY SORTL SALE BISMT.

ENDFORM. " get_data

&----


*& Form FILL_FOR_DAY

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM FILL_FOR_DAY.

LOOP AT IT_VBRKVBRP INTO WA_VBRKVBRP WHERE FKDAT = HIGHDATE.

AT NEW BISMT.

WA_FOR_DAY-SORTL = WA_VBRKVBRP-SORTL.

WA_FOR_DAY-SALE = WA_VBRKVBRP-SALE.

WA_FOR_DAY-BISMT = WA_VBRKVBRP-BISMT+0(3).

ENDAT.

WA_FOR_DAY-PANEL = WA_FOR_DAY-PANEL + WA_VBRKVBRP-PANEL.

WA_FOR_DAY-FUNEL = WA_FOR_DAY-FUNEL + WA_VBRKVBRP-FUNEL.

WA_FOR_DAY-PR00 = WA_FOR_DAY-PR00 + WA_VBRKVBRP-PR00.

WA_FOR_DAY-ZDRP = WA_FOR_DAY-ZDRP + WA_VBRKVBRP-ZDRP.

AT END OF BISMT.

APPEND WA_FOR_DAY TO IT_FOR_DAY.

CLEAR: WA_FOR_DAY.

ENDAT.

CLEAR: WA_VBRKVBRP.

ENDLOOP.

ENDFORM. " FILL_FOR_DAY

&----


*& Form FILL_FOR_MONTH

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM FILL_FOR_MONTH.

LOOP AT IT_VBRKVBRP INTO WA_VBRKVBRP.

AT NEW BISMT.

WA_FOR_MONTH-SORTL = WA_VBRKVBRP-SORTL.

WA_FOR_MONTH-SALE = WA_VBRKVBRP-SALE.

WA_FOR_MONTH-BISMT = WA_VBRKVBRP-BISMT.

ENDAT.

WA_FOR_MONTH-PANEL = WA_FOR_MONTH-PANEL + WA_VBRKVBRP-PANEL.

WA_FOR_MONTH-FUNEL = WA_FOR_MONTH-FUNEL + WA_VBRKVBRP-FUNEL.

WA_FOR_MONTH-PR00 = WA_FOR_MONTH-PR00 + WA_VBRKVBRP-PR00.

WA_FOR_MONTH-ZDRP = WA_FOR_MONTH-ZDRP + WA_VBRKVBRP-ZDRP.

AT END OF BISMT.

APPEND WA_FOR_MONTH TO IT_FOR_MONTH.

CLEAR: WA_FOR_MONTH.

ENDAT.

CLEAR: WA_VBRKVBRP.

ENDLOOP.

ENDFORM. " FILL_FOR_MONTH

&----


*& Form FIELDCAT_FOR_DAY

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM FIELDCAT_FOR_DAY .

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'SORTL'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_DAY'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Party Name'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 10.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_DAY.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'SALE'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_DAY'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Sale 4 day'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 10.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_DAY.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'BISMT'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_DAY'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Sizes'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 5.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_DAY.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'PANEL'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_DAY'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Panel'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 10.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_DAY.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'FUNEL'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_DAY'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Funel'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 10.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_DAY.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'PR00'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_DAY'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Basic Value (Rs.)'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 15.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_DAY.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'ZDRP'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_DAY'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Disc Value (Lacs.)'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 15.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_DAY.

CLEAR WA_FIELDCAT_FOR_DAY.

ENDFORM. " FIELDCAT_FOR_DAY

&----


*& Form FIELDCAT_FOR_MONTH

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM FIELDCAT_FOR_MONTH .

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'SORTL'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_MONTH'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Party Name'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 10.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_MONTH.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'SALE'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_MONTH'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Sale'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 10.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_MONTH.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'BISMT'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_MONTH'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Sizes'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 5.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_MONTH.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'PANEL'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_MONTH'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Panel'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 10.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_MONTH.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'FUNEL'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_MONTH'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Funel'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 10.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_MONTH.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'PR00'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_MONTH'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Basic Value (Rs.)'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 15.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_MONTH.

CLEAR WA_FIELDCAT_FOR_DAY.

COUNTER = COUNTER + 1.

WA_FIELDCAT_FOR_DAY-COL_POS = COUNTER.

WA_FIELDCAT_FOR_DAY-FIELDNAME = 'ZDRP'.

WA_FIELDCAT_FOR_DAY-TABNAME = 'IT_FOR_MONTH'.

WA_FIELDCAT_FOR_DAY-SELTEXT_L = 'Disc Value (Lacs.)'.

WA_FIELDCAT_FOR_DAY-OUTPUTLEN = 15.

APPEND WA_FIELDCAT_FOR_DAY TO IT_FIELDCAT_FOR_MONTH.

CLEAR WA_FIELDCAT_FOR_DAY.

ENDFORM. " FIELDCAT_FOR_MONTH

&----


*& Form EVENTS_FOR_DAY

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM EVENTS_FOR_DAY .

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

EXPORTING

I_LIST_TYPE = 0

IMPORTING

ET_EVENTS = IT_EVENT_FOR_DAY[]

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.

READ TABLE IT_EVENT_FOR_DAY

WITH KEY NAME = SLIS_EV_TOP_OF_LIST

INTO IT_EVENT_FOR_DAY.

IF SY-SUBRC = 0.

MOVE TOP_OF_LIST_FOR_DAY TO IT_EVENT_FOR_DAY-FORM.

APPEND IT_EVENT_FOR_DAY.

ENDIF.

ENDFORM. " EVENTS_FOR_DAY

&----


*& Form EVENTS_FOR_MONTH

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM EVENTS_FOR_MONTH .

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

EXPORTING

I_LIST_TYPE = 0

IMPORTING

ET_EVENTS = IT_EVENT_FOR_MONTH[]

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.

READ TABLE IT_EVENT_FOR_MONTH

WITH KEY NAME = SLIS_EV_TOP_OF_LIST

INTO IT_EVENT_FOR_MONTH.

IF SY-SUBRC = 0.

MOVE TOP_OF_LIST_FOR_MON TO IT_EVENT_FOR_MONTH-FORM.

APPEND IT_EVENT_FOR_MONTH.

ENDIF.

CLEAR: IT_EVENT_FOR_MONTH.

ENDFORM. " EVENTS_FOR_MONTH

&----


*& Form TOP_OF_LIST_FOR_DAY

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM TOP_OF_LIST_FOR_DAY.

WRITE: / 'FOR DAY'.

ENDFORM. " EVENTS_FOR_MONTH

&----


*& Form TOP_OF_LIST_FOR_MONTH

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM TOP_OF_LIST_FOR_MONTH.

WRITE: / 'FOR MONTH'.

ENDFORM. " EVENTS_FOR_MONTH

&----


*& Form APPEND_FOR_DAY

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM APPEND_FOR_DAY .

IF NOT IT_FOR_DAY IS INITIAL.

WA_FOR_DAY-SORTL = ''.

APPEND WA_FOR_DAY TO IT_FOR_DAY.

CLEAR: WA_FOR_DAY.

ENDIF.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

IT_FIELDCAT = IT_FIELDCAT_FOR_DAY

IS_LAYOUT = IS_LAYOUT_FOR_DAY

I_TABNAME = 'IT_FOR_DAY'

IT_EVENTS = IT_EVENT_FOR_DAY[]

TABLES

T_OUTTAB = IT_FOR_DAY[].

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. " APPEND_FOR_DAY

&----


*& Form APPEND_FOR_MONTH

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM APPEND_FOR_MONTH .

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

IT_FIELDCAT = IT_FIELDCAT_FOR_MONTH

IS_LAYOUT = IS_LAYOUT_FOR_MONTH

I_TABNAME = 'IT_FOR_MONTH'

IT_EVENTS = IT_EVENT_FOR_MONTH[]

TABLES

T_OUTTAB = IT_FOR_MONTH[].

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. " APPEND_FOR_MONTH

&----


*& Form LIST_DISPLAY

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM LIST_DISPLAY .

DATA: GT_PRINT TYPE SLIS_PRINT_ALV.

GT_PRINT-RESERVE_LINES = 2.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'

EXPORTING

IS_PRINT = GT_PRINT.

.

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. " LIST_DISPLAY

Read only

0 Likes
722

Hi,

it is small mistake But it is Big one, you missed the heart of Block list.add the below bold code in the form APPEND_FOR_DAY. now every thing works fine .i checked it is working well.

FORM APPEND_FOR_DAY .

<b>call function 'REUSE_ALV_BLOCK_LIST_INIT'
  exporting
    i_callback_program             = sy-repid
*   I_CALLBACK_PF_STATUS_SET       = ' '
*   I_CALLBACK_USER_COMMAND        = ' '
*   IT_EXCLUDING                   =
          .</b>

IF NOT IT_FOR_DAY IS INITIAL.

WA_FOR_DAY-SORTL = ''.

APPEND WA_FOR_DAY TO IT_FOR_DAY.

CLEAR: WA_FOR_DAY.

ENDIF.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

IT_FIELDCAT = IT_FIELDCAT_FOR_DAY

IS_LAYOUT = IS_LAYOUT_FOR_DAY

I_TABNAME = 'IT_FOR_DAY'

IT_EVENTS = IT_EVENT_FOR_DAY[]

TABLES

T_OUTTAB = IT_FOR_DAY[].

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. " APPEND_FOR_DAY

Regards

vijay