2007 Apr 25 11:34 AM
Hi all,
when i am double clicking the any row in first list, it gives booking details of some different date and different connid. i want to get the booking details of the flight of select row.
the code is:
TYPES: BEGIN OF outtab,
carrid LIKE spfli-carrid,
connid LIKE spfli-connid,
fldate LIKE sflight-fldate,
cityfrom LIKE spfli-cityfrom,
cityto LIKE spfli-cityto,
deptime LIKE spfli-deptime,
arrtime LIKE spfli-arrtime,
price LIKE sflight-price,
CURRENCY LIKE SFLIGHT-CURRENCY,
SEATSMAX LIKE SFLIGHT-SEATSMAX,
SEATSOCC LIKE SFLIGHT-SEATSOCC,
END OF outtab.
TYPES: BEGIN OF st_sflight,
carrid LIKE sflight-carrid,
connid LIKE sflight-connid,
fldate LIKE sflight-fldate,
price LIKE sflight-price,
CURRENCY LIKE SFLIGHT-CURRENCY,
SEATSMAX LIKE SFLIGHT-SEATSMAX,
SEATSOCC LIKE SFLIGHT-SEATSOCC,
END OF st_sflight.
TYPES: BEGIN OF ST_SBOOK,
CARRID LIKE SBOOK-CARRID,
CONNID LIKE SBOOK-CONNID,
FLDATE LIKE SBOOK-FLDATE,
BOOKID LIKE SBOOK-BOOKID,
ORDER_DATE LIKE SBOOK-ORDER_DATE,
PASSNAME LIKE SBOOK-PASSNAME,
LOCCURAM LIKE SBOOK-LOCCURAM,
FORCURKEY LIKE SBOOK-FORCURKEY,
END OF ST_SBOOK.
DATA:
IT_sflight TYPE TABLE OF st_sflight,
IT_SBOOK TYPE TABLE OF ST_SBOOK,
wa_sflight TYPE st_sflight,
WA_SBOOK TYPE ST_SBOOK.
****************SELECTION SCREEN******************
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(40) TEXT-001.
SELECTION-SCREEN END OF LINE.
PARAMETERS: P_CARRID LIKE SFLIGHT-CARRID.
SELECTION-SCREEN END OF BLOCK B1.
SELECT carrid
connid
fldate
price
CURRENCY
SEATSMAX
SEATSOCC
FROM sflight
INTO table it_sflight
WHERE carrid EQ P_CARRID.
.
IF IT_SFLIGHT[] IS NOT INITIAL.
WRITE ' THE FLIGHT DETAILS ARE:'.
LOOP AT IT_SFLIGHT INTO WA_SFLIGHT.
WRITE:/ wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate,
wa_sflight-price,
WA_SFLIGHT-CURRENCY,
WA_SFLIGHT-SEATSMAX,
WA_SFLIGHT-SEATSOCC.
ENDLOOP.
ELSE.
WRITE ' NO FLIGHT IS AVAILABLE ON THIS DATE'.
ENDIF.
*********AT LINE SELECTION*******************
AT LINE-SELECTION.
IF SY-LSIND = 1 and sy-lilli gt 1.
WRITE 'THE BOOKING DETAILS AREE:'.
loop at it_sflight into wa_sflight.
SELECT CARRID
CONNID
FLDATE
BOOKID
ORDER_DATE
PASSNAME
LOCCURAM
FORCURKEY
FROM SBOOK
INTO TABLE IT_SBOOK
where carrid eq wa_sflight-carrid
and connid eq wa_sflight-connid
and fldate eq wa_sflight-fldate.
endloop.
LOOP AT IT_SBOOK INTO WA_SBOOK.
WRITE:/ WA_SBOOK-CARRID,
WA_SBOOK-CONNID,
WA_SBOOK-FLDATE,
WA_SBOOK-BOOKID,
WA_SBOOK-ORDER_DATE,
WA_SBOOK-PASSNAME,
WA_SBOOK-LOCCURAM,
WA_SBOOK-FORCURKEY.
ENDLOOP.
clear it_sbook.
ENDIF.
please help me in resolving this issue.
thanks and regards
vivek
2007 Apr 25 11:50 AM
Hi Vivek,
Check this code. It works fine.
TYPES: BEGIN OF outtab,
carrid LIKE spfli-carrid,
connid LIKE spfli-connid,
fldate LIKE sflight-fldate,
cityfrom LIKE spfli-cityfrom,
cityto LIKE spfli-cityto,
deptime LIKE spfli-deptime,
arrtime LIKE spfli-arrtime,
price LIKE sflight-price,
currency LIKE sflight-currency,
seatsmax LIKE sflight-seatsmax,
seatsocc LIKE sflight-seatsocc,
END OF outtab.
TYPES: BEGIN OF st_sflight,
carrid LIKE sflight-carrid,
connid LIKE sflight-connid,
fldate LIKE sflight-fldate,
price LIKE sflight-price,
currency LIKE sflight-currency,
seatsmax LIKE sflight-seatsmax,
seatsocc LIKE sflight-seatsocc,
END OF st_sflight.
TYPES: BEGIN OF st_sbook,
carrid LIKE sbook-carrid,
connid LIKE sbook-connid,
fldate LIKE sbook-fldate,
bookid LIKE sbook-bookid,
order_date LIKE sbook-order_date,
passname LIKE sbook-passname,
loccuram LIKE sbook-loccuram,
forcurkey LIKE sbook-forcurkey,
END OF st_sbook.
DATA:
it_sflight TYPE TABLE OF st_sflight,
it_sbook TYPE TABLE OF st_sbook,
wa_sflight TYPE st_sflight,
wa_sbook TYPE st_sbook.
****************SELECTION SCREEN******************
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(40) text-001.
SELECTION-SCREEN END OF LINE.
PARAMETERS: p_carrid LIKE sflight-carrid.
SELECTION-SCREEN END OF BLOCK b1.
SELECT carrid
connid
fldate
price
currency
seatsmax
seatsocc
FROM sflight
INTO TABLE it_sflight
WHERE carrid EQ p_carrid.
.
IF it_sflight[] IS NOT INITIAL.
WRITE ' THE FLIGHT DETAILS ARE:'.
LOOP AT it_sflight INTO wa_sflight.
WRITE:/ wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate,
wa_sflight-price,
wa_sflight-currency,
wa_sflight-seatsmax,
wa_sflight-seatsocc.
hide: wa_sflight-carrid,wa_sflight-connid, wa_sflight-fldate. " Line added
ENDLOOP.
ELSE.
WRITE ' NO FLIGHT IS AVAILABLE ON THIS DATE'.
ENDIF.
*********AT LINE SELECTION*******************
AT LINE-SELECTION.
*IF sy-lsind = 1 AND sy-lilli GT 1. "Commented
WRITE 'THE BOOKING DETAILS AREE:'.
*LOOP AT it_sflight INTO wa_sflight. "Commented
SELECT carrid
connid
fldate
bookid
order_date
passname
loccuram
forcurkey
FROM sbook
INTO TABLE it_sbook
WHERE carrid EQ wa_sflight-carrid
AND connid EQ wa_sflight-connid
AND fldate EQ wa_sflight-fldate.
*ENDLOOP. "Commented
LOOP AT it_sbook INTO wa_sbook.
WRITE:/ wa_sbook-carrid,
wa_sbook-connid,
wa_sbook-fldate,
wa_sbook-bookid,
wa_sbook-order_date,
wa_sbook-passname,
wa_sbook-loccuram,
wa_sbook-forcurkey.
ENDLOOP.
CLEAR it_sbook.
*ENDIF. "Commented
Regards,
Suresh
Message was edited by:
SureshKumar Ramamoorthy
Hi all,
when i am double clicking the any row in first list, it gives booking details of some different date and different connid. i want to get the booking details of the flight of select row.
the code is:
TYPES: BEGIN OF outtab,
carrid LIKE spfli-carrid,
connid LIKE spfli-connid,
fldate LIKE sflight-fldate,
cityfrom LIKE spfli-cityfrom,
cityto LIKE spfli-cityto,
deptime LIKE spfli-deptime,
arrtime LIKE spfli-arrtime,
price LIKE sflight-price,
CURRENCY LIKE SFLIGHT-CURRENCY,
SEATSMAX LIKE SFLIGHT-SEATSMAX,
SEATSOCC LIKE SFLIGHT-SEATSOCC,
END OF outtab.
TYPES: BEGIN OF st_sflight,
carrid LIKE sflight-carrid,
connid LIKE sflight-connid,
fldate LIKE sflight-fldate,
price LIKE sflight-price,
CURRENCY LIKE SFLIGHT-CURRENCY,
SEATSMAX LIKE SFLIGHT-SEATSMAX,
SEATSOCC LIKE SFLIGHT-SEATSOCC,
END OF st_sflight.
TYPES: BEGIN OF ST_SBOOK,
CARRID LIKE SBOOK-CARRID,
CONNID LIKE SBOOK-CONNID,
FLDATE LIKE SBOOK-FLDATE,
BOOKID LIKE SBOOK-BOOKID,
ORDER_DATE LIKE SBOOK-ORDER_DATE,
PASSNAME LIKE SBOOK-PASSNAME,
LOCCURAM LIKE SBOOK-LOCCURAM,
FORCURKEY LIKE SBOOK-FORCURKEY,
END OF ST_SBOOK.
DATA:
IT_sflight TYPE TABLE OF st_sflight,
IT_SBOOK TYPE TABLE OF ST_SBOOK,
wa_sflight TYPE st_sflight,
WA_SBOOK TYPE ST_SBOOK.
****************SELECTION SCREEN******************
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(40) TEXT-001.
SELECTION-SCREEN END OF LINE.
PARAMETERS: P_CARRID LIKE SFLIGHT-CARRID.
SELECTION-SCREEN END OF BLOCK B1.
SELECT carrid
connid
fldate
price
CURRENCY
SEATSMAX
SEATSOCC
FROM sflight
INTO table it_sflight
WHERE carrid EQ P_CARRID.
.
IF IT_SFLIGHT[] IS NOT INITIAL.
WRITE ' THE FLIGHT DETAILS ARE:'.
LOOP AT IT_SFLIGHT INTO WA_SFLIGHT.
WRITE:/ wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate,
wa_sflight-price,
WA_SFLIGHT-CURRENCY,
WA_SFLIGHT-SEATSMAX,
WA_SFLIGHT-SEATSOCC.
ENDLOOP.
ELSE.
WRITE ' NO FLIGHT IS AVAILABLE ON THIS DATE'.
ENDIF.
*********AT LINE SELECTION*******************
AT LINE-SELECTION.
IF SY-LSIND = 1 and sy-lilli gt 1.
WRITE 'THE BOOKING DETAILS AREE:'.
loop at it_sflight into wa_sflight.
SELECT CARRID
CONNID
FLDATE
BOOKID
ORDER_DATE
PASSNAME
LOCCURAM
FORCURKEY
FROM SBOOK
INTO TABLE IT_SBOOK
where carrid eq wa_sflight-carrid
and connid eq wa_sflight-connid
and fldate eq wa_sflight-fldate.
endloop.
LOOP AT IT_SBOOK INTO WA_SBOOK.
WRITE:/ WA_SBOOK-CARRID,
WA_SBOOK-CONNID,
WA_SBOOK-FLDATE,
WA_SBOOK-BOOKID,
WA_SBOOK-ORDER_DATE,
WA_SBOOK-PASSNAME,
WA_SBOOK-LOCCURAM,
WA_SBOOK-FORCURKEY.
ENDLOOP.
clear it_sbook.
ENDIF.
please help me in resolving this issue.
thanks and regards
vivek
2007 Apr 25 11:37 AM
hi,
use HIDE
HIDE <field name> .
so that for this particular field value it diplay details in the next screen. if u dont use HIDE it will display value for last record which u added to ur internal table
reward if helpful
ravi
2007 Apr 25 11:38 AM
Hi
You are not HIDING the fields in the loop.
LOOP AT IT_SFLIGHT INTO WA_SFLIGHT.
WRITE:/ wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate,
wa_sflight-price,
WA_SFLIGHT-CURRENCY,
WA_SFLIGHT-SEATSMAX,
WA_SFLIGHT-SEATSOCC.
<b>HIDE:wa_sflight-carrid,
wa_sflight-connid.</b>
ENDLOOP.
reward points
regards,
Anji
2007 Apr 25 11:46 AM
Hi,
thankyou for your quick reply. the code which you have given is not working fine.its still showing different output. can you please give the entire code.
regards
vivek
2007 Apr 25 11:38 AM
Check the chnages in bold in below code
LOOP AT IT_SFLIGHT INTO WA_SFLIGHT.
WRITE:/ wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate,
wa_sflight-price,
WA_SFLIGHT-CURRENCY,
WA_SFLIGHT-SEATSMAX,
WA_SFLIGHT-SEATSOCC.
<b>hide :wa_sfight, wa_sflight-fldate.</b>
ENDLOOP.
AT LINE-SELECTION.
IF SY-LSIND = 1 and sy-lilli gt 1.
WRITE 'THE BOOKING DETAILS AREE:'.
<b>*loop at it_sflight into wa_sflight</b>.
SELECT CARRID
CONNID
FLDATE
BOOKID
ORDER_DATE
PASSNAME
LOCCURAM
FORCURKEY
FROM SBOOK
INTO TABLE IT_SBOOK
where carrid eq wa_sflight-carrid
and connid eq wa_sflight-connid
and fldate eq wa_sflight-fldate.
<b>*endloop.</b>
2007 Apr 25 11:38 AM
Use Hide statement like below
IF IT_SFLIGHT[] IS NOT INITIAL.
WRITE ' THE FLIGHT DETAILS ARE:'.
LOOP AT IT_SFLIGHT INTO WA_SFLIGHT.
WRITE:/ wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate,
wa_sflight-price,
WA_SFLIGHT-CURRENCY,
WA_SFLIGHT-SEATSMAX,
WA_SFLIGHT-SEATSOCC.
hide : wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate.
ENDLOOP.
ELSE.
WRITE ' NO FLIGHT IS AVAILABLE ON THIS DATE'.
ENDIF.
2007 Apr 25 11:49 AM
Hi,
its not working fine. can you please help me out by giving the entire code.
regards
vivek
2007 Apr 25 11:38 AM
You have to use 'HIDE' command to transport the carrid, connid, fldate from first list to 2nd list.
2007 Apr 25 11:50 AM
Hi Vivek,
Check this code. It works fine.
TYPES: BEGIN OF outtab,
carrid LIKE spfli-carrid,
connid LIKE spfli-connid,
fldate LIKE sflight-fldate,
cityfrom LIKE spfli-cityfrom,
cityto LIKE spfli-cityto,
deptime LIKE spfli-deptime,
arrtime LIKE spfli-arrtime,
price LIKE sflight-price,
currency LIKE sflight-currency,
seatsmax LIKE sflight-seatsmax,
seatsocc LIKE sflight-seatsocc,
END OF outtab.
TYPES: BEGIN OF st_sflight,
carrid LIKE sflight-carrid,
connid LIKE sflight-connid,
fldate LIKE sflight-fldate,
price LIKE sflight-price,
currency LIKE sflight-currency,
seatsmax LIKE sflight-seatsmax,
seatsocc LIKE sflight-seatsocc,
END OF st_sflight.
TYPES: BEGIN OF st_sbook,
carrid LIKE sbook-carrid,
connid LIKE sbook-connid,
fldate LIKE sbook-fldate,
bookid LIKE sbook-bookid,
order_date LIKE sbook-order_date,
passname LIKE sbook-passname,
loccuram LIKE sbook-loccuram,
forcurkey LIKE sbook-forcurkey,
END OF st_sbook.
DATA:
it_sflight TYPE TABLE OF st_sflight,
it_sbook TYPE TABLE OF st_sbook,
wa_sflight TYPE st_sflight,
wa_sbook TYPE st_sbook.
****************SELECTION SCREEN******************
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(40) text-001.
SELECTION-SCREEN END OF LINE.
PARAMETERS: p_carrid LIKE sflight-carrid.
SELECTION-SCREEN END OF BLOCK b1.
SELECT carrid
connid
fldate
price
currency
seatsmax
seatsocc
FROM sflight
INTO TABLE it_sflight
WHERE carrid EQ p_carrid.
.
IF it_sflight[] IS NOT INITIAL.
WRITE ' THE FLIGHT DETAILS ARE:'.
LOOP AT it_sflight INTO wa_sflight.
WRITE:/ wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate,
wa_sflight-price,
wa_sflight-currency,
wa_sflight-seatsmax,
wa_sflight-seatsocc.
hide: wa_sflight-carrid,wa_sflight-connid, wa_sflight-fldate. " Line added
ENDLOOP.
ELSE.
WRITE ' NO FLIGHT IS AVAILABLE ON THIS DATE'.
ENDIF.
*********AT LINE SELECTION*******************
AT LINE-SELECTION.
*IF sy-lsind = 1 AND sy-lilli GT 1. "Commented
WRITE 'THE BOOKING DETAILS AREE:'.
*LOOP AT it_sflight INTO wa_sflight. "Commented
SELECT carrid
connid
fldate
bookid
order_date
passname
loccuram
forcurkey
FROM sbook
INTO TABLE it_sbook
WHERE carrid EQ wa_sflight-carrid
AND connid EQ wa_sflight-connid
AND fldate EQ wa_sflight-fldate.
*ENDLOOP. "Commented
LOOP AT it_sbook INTO wa_sbook.
WRITE:/ wa_sbook-carrid,
wa_sbook-connid,
wa_sbook-fldate,
wa_sbook-bookid,
wa_sbook-order_date,
wa_sbook-passname,
wa_sbook-loccuram,
wa_sbook-forcurkey.
ENDLOOP.
CLEAR it_sbook.
*ENDIF. "Commented
Regards,
Suresh
Message was edited by:
SureshKumar Ramamoorthy
2007 Apr 25 11:57 AM
try the program now....some small changes..to ur prgm..are made
hope this helps
TYPES: BEGIN OF outtab,
carrid LIKE spfli-carrid,
connid LIKE spfli-connid,
fldate LIKE sflight-fldate,
cityfrom LIKE spfli-cityfrom,
cityto LIKE spfli-cityto,
deptime LIKE spfli-deptime,
arrtime LIKE spfli-arrtime,
price LIKE sflight-price,
CURRENCY LIKE SFLIGHT-CURRENCY,
SEATSMAX LIKE SFLIGHT-SEATSMAX,
SEATSOCC LIKE SFLIGHT-SEATSOCC,
END OF outtab.
TYPES: BEGIN OF st_sflight,
carrid LIKE sflight-carrid,
connid LIKE sflight-connid,
fldate LIKE sflight-fldate,
price LIKE sflight-price,
CURRENCY LIKE SFLIGHT-CURRENCY,
SEATSMAX LIKE SFLIGHT-SEATSMAX,
SEATSOCC LIKE SFLIGHT-SEATSOCC,
END OF st_sflight.
TYPES: BEGIN OF ST_SBOOK,
CARRID LIKE SBOOK-CARRID,
CONNID LIKE SBOOK-CONNID,
FLDATE LIKE SBOOK-FLDATE,
BOOKID LIKE SBOOK-BOOKID,
ORDER_DATE LIKE SBOOK-ORDER_DATE,
PASSNAME LIKE SBOOK-PASSNAME,
LOCCURAM LIKE SBOOK-LOCCURAM,
FORCURKEY LIKE SBOOK-FORCURKEY,
END OF ST_SBOOK.
DATA:
IT_sflight TYPE TABLE OF st_sflight,
IT_SBOOK TYPE TABLE OF ST_SBOOK,
wa_sflight TYPE st_sflight,
WA_SBOOK TYPE ST_SBOOK.
****************SELECTION SCREEN******************
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(40) TEXT-001.
SELECTION-SCREEN END OF LINE.
PARAMETERS: P_CARRID LIKE SFLIGHT-CARRID.
SELECTION-SCREEN END OF BLOCK B1.
SELECT carrid
connid
fldate
price
CURRENCY
SEATSMAX
SEATSOCC
FROM sflight
INTO table it_sflight
WHERE carrid EQ P_CARRID.
.
IF IT_SFLIGHT[] IS NOT INITIAL.
WRITE ' THE FLIGHT DETAILS ARE:'.
LOOP AT IT_SFLIGHT INTO WA_SFLIGHT.
WRITE:/ wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate,
wa_sflight-price,
WA_SFLIGHT-CURRENCY,
WA_SFLIGHT-SEATSMAX,
WA_SFLIGHT-SEATSOCC.
hide : wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate.
ENDLOOP.
ELSE.
WRITE ' NO FLIGHT IS AVAILABLE ON THIS DATE'.
ENDIF.
*********AT LINE SELECTION*******************
AT LINE-SELECTION.
write : wa_sflight-carrid,
wa_sflight-connid,
wa_sflight-fldate.
*IF SY-LSIND = 1 and sy-lilli gt 1.
WRITE 'THE BOOKING DETAILS AREE:'.
*loop at it_sflight into wa_sflight.
SELECT CARRID
CONNID
FLDATE
BOOKID
ORDER_DATE
PASSNAME
LOCCURAM
FORCURKEY
FROM SBOOK
INTO TABLE IT_SBOOK
for all entries in it_sflight
where carrid eq it_sflight-carrid
and connid eq it_sflight-connid
and fldate eq it_sflight-fldate.
*endloop.
LOOP AT IT_SBOOK INTO WA_SBOOK.
*WRITE:/ WA_SBOOK-CARRID,
*WA_SBOOK-CONNID,
*WA_SBOOK-FLDATE,
write : / WA_SBOOK-BOOKID.
*WA_SBOOK-ORDER_DATE,
*WA_SBOOK-PASSNAME,
*WA_SBOOK-LOCCURAM,
*WA_SBOOK-FORCURKEY.
ENDLOOP.
*clear it_sbook.
*ENDIF.
| User | Count |
|---|---|
| 6 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |