Vous êtes sur la page 1sur 2

REPORT

z13ejercicio5 NO STANDARD PAGE HEADING.

TABLES: sbook,scustom,spfli. TYPES: BEGIN OF gty_reporte, carrid TYPE sbook-carrid , codcli TYPE sbook-customid, nomcli TYPE sbook-passname, salida TYPE spfli-cityfrom, llegada TYPE spfli-cityto, precio TYPE sbook-loccuram, agencia TYPE stravelag-agencynum, pais TYPE stravelag-country, END OF gty_reporte. TYPES: BEGIN OF carrid agencia clase precio codcli nomcli moneda END OF TYPES: BEGIN OF carrid salida llegada END OF TYPES: BEGIN OF codcli nomcli END OF gty_sbook, TYPE sbook-carrid, TYPE sbook-agencynum, TYPE sbook-class, TYPE sbook-loccuram, TYPE sbook-customid, TYPE sbook-passname, TYPE sbook-forcurkey, gty_sbook. gty_spfli, TYPE spfli-carrid, TYPE spfli-cityfrom, TYPE spfli-cityto, gty_spfli. gty_scustom, TYPE scustom-id, TYPE scustom-name, gty_scustom.

TYPES: BEGIN OF gty_stravelag, agencia TYPE stravelag-agencynum, pais TYPE stravelag-country, END OF gty_stravelag. DATA: gtd_sbook gtd_spfli gtd_scustom gtd_stravelag gtd_reporte TYPE TYPE TYPE TYPE TYPE STANDARD STANDARD STANDARD STANDARD STANDARD TABLE TABLE TABLE TABLE TABLE OF OF OF OF OF gty_sbook, gty_spfli, gty_scustom, gty_stravelag, gty_reporte.

FIELD-SYMBOLS: <fs_sbook> LIKE LINE OF gtd_sbook, <fs_spfli> LIKE LINE OF gtd_spfli, <fs_scustom> LIKE LINE OF gtd_scustom, <fs_stravelag> LIKE LINE OF gtd_stravelag, <fs_reporte> LIKE LINE OF gtd_reporte. SELECTION-SCREEN BEGIN OF BLOCK block01 WITH FRAME TITLE text-001. SELECT-OPTIONS: s_carrid s_agenc s_class s_locc FOR FOR FOR FOR sbook-carrid, sbook-agencynum, sbook-class, sbook-loccuram.

SELECTION-SCREEN END OF BLOCK block01. START-OF-SELECTION. SELECT carrid agencynum class loccuram customid passname forcurkey FROM sbook INTO TABLE gtd_sbook WHERE carrid IN s_carrid AND agencynum IN s_agenc AND class IN s_class AND loccuram IN s_locc.

SELECT carrid cityfrom cityto FROM spfli INTO TABLE gtd_spfli FOR ALL ENTRIES IN gtd_sbook WHERE carrid = gtd_sbook-carrid. SELECT id name FROM scustom INTO TABLE gtd_scustom FOR ALL ENTRIES IN gtd_sbook WHERE id = gtd_sbook-codcli. SELECT agencynum country FROM stravelag INTO TABLE gtd_stravelag FOR ALL ENTRIES IN gtd_sbook WHERE agencynum = gtd_sbook-agencia. LOOP AT gtd_sbook ASSIGNING <fs_sbook>. APPEND INITIAL LINE TO gtd_reporte ASSIGNING <fs_reporte>. MOVE-CORRESPONDING <fs_sbook> TO <fs_reporte>. READ TABLE gtd_spfli ASSIGNING <fs_spfli> WITH KEY carrid = <fs_sbook>-carrid BINARY SEARCH. IF sy-subrc EQ 0. <fs_reporte>-salida = <fs_spfli>-salida. <fs_reporte>-llegada = <fs_spfli>-llegada. ENDIF. READ TABLE gtd_scustom ASSIGNING <fs_scustom> WITH KEY codcli = <fs_sbook>codcli BINARY SEARCH. IF sy-subrc EQ 0. <fs_reporte>-nomcli = <fs_scustom>-codcli. ENDIF. READ TABLE gtd_stravelag ASSIGNING <fs_stravelag> WITH KEY agencia = <fs_sbook>agencia BINARY SEARCH. IF sy-subrc EQ 0. <fs_reporte>-agencia = <fs_stravelag>-agencia. <fs_reporte>-pais = <fs_stravelag>-pais. ENDIF. UNASSIGN <fs_reporte>. ENDLOOP. SORT gtd_reporte BY carrid ASCENDING. LOOP AT gtd_reporte ASSIGNING <fs_reporte> WHERE carrid IN s_carrid. AT NEW carrid. FORMAT COLOR 5 ON.

WRITE:/ <fs_sbook>-carrid, AT 15 <fs_sbook>-moneda. FORMAT COLOR OFF. ENDAT. AT NEW agencia. FORMAT COLOR 6 ON.

WRITE:/ <fs_reporte>-agencia, AT 15 <fs_reporte>-pais. FORMAT COLOR OFF. ENDAT. WRITE:/5 <fs_reporte>-codcli , AT 20 <fs_reporte>-nomcli. WRITE:43 WRITE:71 WRITE:100 ENDLOOP. <fs_reporte>-salida. <fs_reporte>-llegada. <fs_reporte>-precio.

Vous aimerez peut-être aussi