2007 Oct 01 8:17 AM
Hi expert ,
i want to disply sum in report regarding (seatsocc,seatmax) .but sum is not diaply at end of cityfrom.
report is sort by cityfrom .
&----
*& Report ZFLIGHT_01 *
*& *
&----
*& *
*& *
&----
REPORT ZFLIGHT_01 .
TABLES : SPFLI, SBOOK, SFLIGHT.
*=========================================================================================
*initialization
*========================================================================================
PARAMETERS : P_CITY TYPE SPFLI-CITYFROM.
TYPES : BEGIN OF STR_FLI ,
CARRID LIKE SPFLI-CARRID,
CONNID LIKE SPFLI-CONNID,
CITYFROM LIKE SPFLI-CITYFROM,
CITYTO LIKE SPFLI-CITYTO,
PLANETYPE LIKE SFLIGHT-PLANETYPE,
FLDATE LIKE SFLIGHT-FLDATE,
SEATSMAX LIKE SFLIGHT-SEATSMAX,
SEATSOCC LIKE SFLIGHT-SEATSOCC,
BOOKID LIKE SBOOK-BOOKID,
CUSTOMID LIKE SBOOK-CUSTOMID,
ORDER_DATE LIKE SBOOK-ORDER_DATE,
END OF STR_FLI.
DATA : ITAB TYPE STR_FLI OCCURS 0 WITH HEADER LINE.
DATA :BEGIN OF PTAB OCCURS 0,
BOOKID LIKE SBOOK-BOOKID,
CUSTOMID LIKE SBOOK-CUSTOMID,
ORDER_DATE LIKE SBOOK-ORDER_DATE,
END OF PTAB.
DATA: WA TYPE STR_FLI,
SUM1 TYPE C VALUE '0' .
DATA LINE LIKE SY-LILLI.
SELECT ACARRID ACONNID ACITYFROM ACITYTO BSEATSMAX BFLDATE BSEATSOCC BPLANETYPE INTO CORRESPONDING FIELDS OF TABLE ITAB
FROM SPFLI AS A INNER JOIN SFLIGHT AS B ON ( ACARRID = BCARRID )." where cityfrom = p_city.
*SET PF-STATUS 'GRU'.
*SET TITLEBAR 'GRU' .
*=========================================================================================
*LOOP AT ITAB
*=========================================================================================
SORT ITAB BY CITYFROM CARRID CONNID.
LOOP AT ITAB.
AT FIRST .
WRITE :/60 ' OUTPUT OF PROGRAM '.
ULINE.
ENDAT.
ON CHANGE OF ITAB-CITYFROM.
WRITE :/10 ITAB-CITYFROM COLOR 6.
ULINE.
WRITE :/20 'FLIGHT ID :', ITAB-CARRID COLOR 4,
/20 'FLIGHT NO:', ITAB-CONNID COLOR 4.
ULINE.
ENDON.
WRITE :/30 ITAB-FLDATE ,ITAB-SEATSOCC COLOR COL_NORMAL,ITAB-SEATSMAX COLOR COL_NORMAL.
*========================================================================================
*DEFINE SUM .
*=========================================================================================
AT END OF CITYFROM.
SUM.
WRITE 😕 ITAB-SEATSOCC COLOR 5 UNDER ITAB-SEATSOCC .
ENDAT.
ENDLOOP.
thanks
ashish
2007 Oct 01 8:30 AM
Hi Ashish..
Note: both AT NEW and AT END OF will work based on the Field position in ITAB
Change the code like this: then it will work..
REPORT ZFLIGHT_01 .
TABLES : SPFLI, SBOOK, SFLIGHT.
*=========================================================================================
*initialization
*========================================================================================
PARAMETERS : P_CITY TYPE SPFLI-CITYFROM.
TYPES : BEGIN OF STR_FLI ,
<b>CITYFROM LIKE SPFLI-CITYFROM, "Declare these fields in the Beginning
CITYTO LIKE SPFLI-CITYTO,
</b>CARRID LIKE SPFLI-CARRID,
CONNID LIKE SPFLI-CONNID,
PLANETYPE LIKE SFLIGHT-PLANETYPE,
FLDATE LIKE SFLIGHT-FLDATE,
SEATSMAX LIKE SFLIGHT-SEATSMAX,
SEATSOCC LIKE SFLIGHT-SEATSOCC,
BOOKID LIKE SBOOK-BOOKID,
CUSTOMID LIKE SBOOK-CUSTOMID,
ORDER_DATE LIKE SBOOK-ORDER_DATE,
END OF STR_FLI.
DATA : ITAB TYPE STR_FLI OCCURS 0 WITH HEADER LINE.
DATA :BEGIN OF PTAB OCCURS 0,
BOOKID LIKE SBOOK-BOOKID,
CUSTOMID LIKE SBOOK-CUSTOMID,
ORDER_DATE LIKE SBOOK-ORDER_DATE,
END OF PTAB.
DATA: WA TYPE STR_FLI,
SUM1 TYPE C VALUE '0' .
DATA LINE LIKE SY-LILLI.
<b>SELECT ACITYFROM ACITYTO ACARRID ACONNID </b> BSEATSMAX BFLDATE BSEATSOCC BPLANETYPE INTO CORRESPONDING FIELDS OF TABLE ITAB
FROM SPFLI AS A INNER JOIN SFLIGHT AS B ON ( ACARRID = BCARRID )." where cityfrom = p_city.
*SET PF-STATUS 'GRU'.
*SET TITLEBAR 'GRU' .
*=========================================================================================
*LOOP AT ITAB
*=========================================================================================
SORT ITAB BY CITYFROM CARRID CONNID.
LOOP AT ITAB.
AT FIRST .
WRITE :/60 ' OUTPUT OF PROGRAM '.
ULINE.
ENDAT.
ON CHANGE OF ITAB-CITYFROM.
WRITE :/10 ITAB-CITYFROM COLOR 6.
ULINE.
WRITE :/20 'FLIGHT ID :', ITAB-CARRID COLOR 4,
/20 'FLIGHT NO:', ITAB-CONNID COLOR 4.
ULINE.
ENDON.
WRITE :/30 ITAB-FLDATE ,ITAB-SEATSOCC COLOR COL_NORMAL,ITAB-SEATSMAX COLOR COL_NORMAL.
*========================================================================================
*DEFINE SUM .
*=========================================================================================
AT END OF CITYFROM.
SUM.
WRITE 😕 ITAB-SEATSOCC COLOR 5 UNDER ITAB-SEATSOCC .
ENDAT.
ENDLOOP.
Reward if Helpful.
Hi Ashish..
Note: both AT NEW and AT END OF will work based on the Field position in ITAB
Change the code like this: then it will work..
REPORT ZFLIGHT_01 .
TABLES : SPFLI, SBOOK, SFLIGHT.
*=========================================================================================
*initialization
*========================================================================================
PARAMETERS : P_CITY TYPE SPFLI-CITYFROM.
TYPES : BEGIN OF STR_FLI ,
<b>CITYFROM LIKE SPFLI-CITYFROM, "Declare these fields in the Beginning
CITYTO LIKE SPFLI-CITYTO,
</b>CARRID LIKE SPFLI-CARRID,
CONNID LIKE SPFLI-CONNID,
PLANETYPE LIKE SFLIGHT-PLANETYPE,
FLDATE LIKE SFLIGHT-FLDATE,
SEATSMAX LIKE SFLIGHT-SEATSMAX,
SEATSOCC LIKE SFLIGHT-SEATSOCC,
BOOKID LIKE SBOOK-BOOKID,
CUSTOMID LIKE SBOOK-CUSTOMID,
ORDER_DATE LIKE SBOOK-ORDER_DATE,
END OF STR_FLI.
DATA : ITAB TYPE STR_FLI OCCURS 0 WITH HEADER LINE.
DATA :BEGIN OF PTAB OCCURS 0,
BOOKID LIKE SBOOK-BOOKID,
CUSTOMID LIKE SBOOK-CUSTOMID,
ORDER_DATE LIKE SBOOK-ORDER_DATE,
END OF PTAB.
DATA: WA TYPE STR_FLI,
SUM1 TYPE C VALUE '0' .
DATA LINE LIKE SY-LILLI.
<b>SELECT ACITYFROM ACITYTO ACARRID ACONNID </b> BSEATSMAX BFLDATE BSEATSOCC BPLANETYPE INTO CORRESPONDING FIELDS OF TABLE ITAB
FROM SPFLI AS A INNER JOIN SFLIGHT AS B ON ( ACARRID = BCARRID )." where cityfrom = p_city.
*SET PF-STATUS 'GRU'.
*SET TITLEBAR 'GRU' .
*=========================================================================================
*LOOP AT ITAB
*=========================================================================================
SORT ITAB BY CITYFROM CARRID CONNID.
LOOP AT ITAB.
AT FIRST .
WRITE :/60 ' OUTPUT OF PROGRAM '.
ULINE.
ENDAT.
ON CHANGE OF ITAB-CITYFROM.
WRITE :/10 ITAB-CITYFROM COLOR 6.
ULINE.
WRITE :/20 'FLIGHT ID :', ITAB-CARRID COLOR 4,
/20 'FLIGHT NO:', ITAB-CONNID COLOR 4.
ULINE.
ENDON.
WRITE :/30 ITAB-FLDATE ,ITAB-SEATSOCC COLOR COL_NORMAL,ITAB-SEATSMAX COLOR COL_NORMAL.
*========================================================================================
*DEFINE SUM .
*=========================================================================================
AT END OF CITYFROM.
SUM.
WRITE 😕 ITAB-SEATSOCC COLOR 5 UNDER ITAB-SEATSOCC .
ENDAT.
ENDLOOP.
Reward if Helpful.
2007 Oct 01 8:28 AM
2007 Oct 01 8:30 AM
Hi Ashish..
Note: both AT NEW and AT END OF will work based on the Field position in ITAB
Change the code like this: then it will work..
REPORT ZFLIGHT_01 .
TABLES : SPFLI, SBOOK, SFLIGHT.
*=========================================================================================
*initialization
*========================================================================================
PARAMETERS : P_CITY TYPE SPFLI-CITYFROM.
TYPES : BEGIN OF STR_FLI ,
<b>CITYFROM LIKE SPFLI-CITYFROM, "Declare these fields in the Beginning
CITYTO LIKE SPFLI-CITYTO,
</b>CARRID LIKE SPFLI-CARRID,
CONNID LIKE SPFLI-CONNID,
PLANETYPE LIKE SFLIGHT-PLANETYPE,
FLDATE LIKE SFLIGHT-FLDATE,
SEATSMAX LIKE SFLIGHT-SEATSMAX,
SEATSOCC LIKE SFLIGHT-SEATSOCC,
BOOKID LIKE SBOOK-BOOKID,
CUSTOMID LIKE SBOOK-CUSTOMID,
ORDER_DATE LIKE SBOOK-ORDER_DATE,
END OF STR_FLI.
DATA : ITAB TYPE STR_FLI OCCURS 0 WITH HEADER LINE.
DATA :BEGIN OF PTAB OCCURS 0,
BOOKID LIKE SBOOK-BOOKID,
CUSTOMID LIKE SBOOK-CUSTOMID,
ORDER_DATE LIKE SBOOK-ORDER_DATE,
END OF PTAB.
DATA: WA TYPE STR_FLI,
SUM1 TYPE C VALUE '0' .
DATA LINE LIKE SY-LILLI.
<b>SELECT ACITYFROM ACITYTO ACARRID ACONNID </b> BSEATSMAX BFLDATE BSEATSOCC BPLANETYPE INTO CORRESPONDING FIELDS OF TABLE ITAB
FROM SPFLI AS A INNER JOIN SFLIGHT AS B ON ( ACARRID = BCARRID )." where cityfrom = p_city.
*SET PF-STATUS 'GRU'.
*SET TITLEBAR 'GRU' .
*=========================================================================================
*LOOP AT ITAB
*=========================================================================================
SORT ITAB BY CITYFROM CARRID CONNID.
LOOP AT ITAB.
AT FIRST .
WRITE :/60 ' OUTPUT OF PROGRAM '.
ULINE.
ENDAT.
ON CHANGE OF ITAB-CITYFROM.
WRITE :/10 ITAB-CITYFROM COLOR 6.
ULINE.
WRITE :/20 'FLIGHT ID :', ITAB-CARRID COLOR 4,
/20 'FLIGHT NO:', ITAB-CONNID COLOR 4.
ULINE.
ENDON.
WRITE :/30 ITAB-FLDATE ,ITAB-SEATSOCC COLOR COL_NORMAL,ITAB-SEATSMAX COLOR COL_NORMAL.
*========================================================================================
*DEFINE SUM .
*=========================================================================================
AT END OF CITYFROM.
SUM.
WRITE 😕 ITAB-SEATSOCC COLOR 5 UNDER ITAB-SEATSOCC .
ENDAT.
ENDLOOP.
Reward if Helpful.
2007 Oct 01 8:43 AM
Thanks Dear Varma@infyTree ,
But wat is funda .means explane it with brief ,how did it .
thanks a lot.
Regards ,
ashish
2007 Oct 04 10:38 AM
hi
code like below:,
the city from should be the firstfield in the internal table:
TYPES : BEGIN OF STR_FLI ,
CITYFROM LIKE SPFLI-CITYFROM,
CITYTO LIKE SPFLI-CITYTO,
CARRID LIKE SPFLI-CARRID ,
CONNID LIKE SPFLI-CONNID,
PLANETYPE LIKE SFLIGHT-PLANETYPE,
FLDATE LIKE SFLIGHT-FLDATE,
SEATSMAX LIKE SFLIGHT-SEATSMAX,
SEATSOCC LIKE SFLIGHT-SEATSOCC,
END OF STR_FLI.
code like below:
AT NEW Cityfrom.
WRITE:/ WA-CITYFROM COLOR COL_KEY.
endat.
WRITE :/20 'FLIGHT ID :', WA-CARRID COLOR 5,
/20 'FLIGHT NO:', WA-CONNID COLOR 5.
WRITE :/30 WA-FLDATE ,WA-SEATSOCC COLOR COL_NORMAL,WA-SEATSMAX COLOR
COL_NORMAL,SY-VLINE,WA-PLANETYPE.
**======================================================================
*==================
**DEFINE SUM .
**======================================================================
*===================
*
AT end of cITYFROM.
sum .
WRITE:/ WA-SEATSOCC COLOR COL_TOTAL UNDER WA-SEATSOCC,
WA-SEATSMAX COLOR COL_TOTAL.
ENDAT.
| User | Count |
|---|---|
| 3 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |