*&---------------------------------------------------------------------* *& Report ZANMA_EJERCICIO4 *& *&---------------------------------------------------------------------* REPORT zanma_ejercicio4. *inicio de definicion de variables DATA: itab_vuelos TYPE TABLE OF spfli WITH HEADER LINE. SELECTION-SCREEN BEGIN OF BLOCK block WITH FRAME TITLE text-000. PARAMETERS: pcompany(3) TYPE c, paisfrom(3) TYPE c, paisto(3) TYPE c. SELECTION-SCREEN END OF BLOCK block. * inicio del start of selection START-OF-SELECTION. *inicio llamada de los form PERFORM info USING pcompany paisfrom paisto. "imprime los datos informativos PERFORM search USING pcompany paisfrom paisto. "busca los datos en la tabla de la base de datos SKIP. PERFORM datos TABLES itab_vuelos. SKIP. PERFORM datos2 TABLES itab_vuelos. **inicio de los codigos de los form FORM info USING pcompany paisfrom paisto. WRITE: / '¿Qué Vamos a hacer?'. WRITE: / sy-uline(25). WRITE: / 'Voy a hacer la busqueda de la compañia', pcompany ,'con salida en el pais', paisfrom ,'y llegada en el pais', paisto. ENDFORM. "info *&---------------------------------------------------------------------* *& Form search *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * -->PCOMPANY text * -->PAISFROM text * -->PAISTO text *----------------------------------------------------------------------* FORM search USING pcompany paisfrom paisto. SELECT * FROM spfli INTO TABLE itab_vuelos WHERE carrid = pcompany AND countryfr = paisfrom AND countryto = paisto. ENDFORM. "search *&---------------------------------------------------------------------* *& Form datos *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * -->ITAB_VUELOS text *----------------------------------------------------------------------* FORM datos TABLES itab_vuelos STRUCTURE spfli. DATA: cont(2) TYPE n VALUE 0. WRITE: / 'Resultados Encontrados'. WRITE: / sy-uline(25). SKIP. LOOP AT itab_vuelos. cont = cont + 1. CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = cont IMPORTING output = cont. WRITE: / 'Resultado ', cont. WRITE: / sy-uline(20). WRITE: / 'Compañia Aerea: ',itab_vuelos-carrid, / 'Pais de Salida: ',itab_vuelos-countryfr, / 'Pais de Llegada: ',itab_vuelos-countryto. SKIP. ENDLOOP. ENDFORM. "datos *&---------------------------------------------------------------------* *& Form datos2 *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * -->ITAB_VUELOS text *----------------------------------------------------------------------* FORM datos2 TABLES itab_vuelos STRUCTURE spfli. DATA: km TYPE spfli-distance. LOOP AT itab_vuelos. km = km + itab_vuelos-distance. ENDLOOP. WRITE: / 'Datos Complementarios'. WRITE: / sy-uline(25). WRITE: / 'La Distancia Recorrida entre todos lo vuelos encontrados es de',km,'Kilometros'. ENDFORM. "datos2