Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- REPORT ZCF_13A_PRACTICA3.
- * Primer bloque de la ventana de selección: Historial de un cliente
- PARAMETERS po_cust RADIOBUTTON GROUP fopt.
- SELECTION-SCREEN BEGIN OF BLOCK cliente WITH FRAME.
- PARAMETERS p_cust TYPE sbook-customid.
- SELECTION-SCREEN END OF BLOCK cliente.
- * Segundo bloque de la ventana de selección: Datos especificos de un vuelo
- PARAMETERS po_fly RADIOBUTTON GROUP fopt.
- SELECTION-SCREEN BEGIN OF BLOCK vuelo WITH FRAME.
- PARAMETERS p_carrid TYPE SPFLI-carrid.
- PARAMETERS p_connid TYPE SPFLI-CONNID.
- SELECTION-SCREEN END OF BLOCK vuelo.
- * Comprobaciones
- *AT SELECTION-SCREEN.
- * CASE 'X'.
- *
- * " Comprobaciones cuando se ha seleccionado por cliente
- * WHEN po_book.
- * IF p_book IS INITIAL. MESSAGE e030(ZCFGS). ENDIF.
- *
- * IF p_carrid IS NOT INITIAL OR p_date IS NOT INITIAL OR
- * p_custid IS NOT INITIAL.
- * MESSAGE e028(ZCFGS).
- * ENDIF.
- *
- * " Comprobaciones cuando se ha seleccionado datos del vuelo
- * WHEN po_fldat.
- * IF p_carrid IS INITIAL. MESSAGE e030(ZCFGS). ENDIF.
- * IF p_date IS INITIAL. MESSAGE e030(ZCFGS). ENDIF.
- *
- * IF p_custid IS NOT INITIAL OR p_book IS NOT INITIAL.
- * MESSAGE e028(ZCFGS).
- * ENDIF.
- *
- * AUTHORITY-CHECK OBJECT 'S_CARRID'
- * ID 'CARRID' FIELD p_carrid
- * ID 'ACTVT' FIELD '03'.
- * IF sy-subrc <> 0.
- * MESSAGE e029(ZCFGS).
- * ENDIF.
- *
- * " Comprobacinoes cuando se ha seleccionado origen/destino
- * WHEN po_cust.
- * IF p_custid IS INITIAL. MESSAGE e030(ZCFGS). ENDIF.
- * "IF p_to IS INITIAL. MESSAGE e037(ZCFGS). ENDIF.
- * IF p_book IS NOT INITIAL OR p_carrid IS NOT INITIAL OR p_date IS NOT INITIAL.
- * MESSAGE e028(ZCFGS).
- * ENDIF.
- * ENDCASE.
- START-OF-SELECTION.
- CASE 'X'.
- " LÓGICA PARA EL BLOQUE 1: Historial de un cliente
- " --------------------------------------------------------
- WHEN po_cust.
- PERFORM HISTORIAL_VUELOS_CLIENTE_13A
- USING
- P_CUST.
- " LÓGICA PARA EL BLOQUE 2: Datos específicos de un vuelo
- " --------------------------------------------------------
- WHEN po_fly.
- DATA: AUX_DATOS_VUELO TYPE BC400_S_CONNECTION_EXT.
- CALL METHOD ZCF_VUELOS_13A=>ZCF_VUELOS_13A
- EXPORTING
- IV_CARRID = P_CARRID
- IV_CONNID = P_CONNID
- IMPORTING
- ES_VUELO = AUX_DATOS_VUELO
- EXCEPTIONS
- NO_EXISTE_VUELO = 1
- others = 2
- .
- IF SY-SUBRC <> 0.
- MESSAGE e016(ZBC400_13A).
- ENDIF.
- WRITE: / AUX_DATOS_VUELO-CARRID,
- AUX_DATOS_VUELO-CONNID,
- AUX_DATOS_VUELO-AIRPFROM,
- AUX_DATOS_VUELO-AIRPTO,
- AUX_DATOS_VUELO-ARRTIME,
- AUX_DATOS_VUELO-CARRNAME,
- AUX_DATOS_VUELO-CITYFROM,
- AUX_DATOS_VUELO-CITYTO,
- AUX_DATOS_VUELO-DEPTIME,
- AUX_DATOS_VUELO-FLTIME.
- ENDCASE.
- FORM HISTORIAL_VUELOS_CLIENTE_13A
- USING
- VALUE(IV_CLIENTEID) TYPE S_CUSTOMER.
- TYPES: BEGIN OF STR_HISTORIAL,
- CARRID TYPE S_CARR_ID,
- CONNID TYPE S_CONN_ID,
- FLDATE TYPE S_DATE,
- BOOKID TYPE S_BOOK_ID,
- CUSTOMID TYPE S_CUSTOMER,
- AGENCYNUM TYPE S_AGNCYNUM,
- CANCELLED TYPE S_CANCEL,
- END OF STR_HISTORIAL.
- DATA: IT_HISTORIAL_CLIENTE TYPE STANDARD TABLE OF STR_HISTORIAL WITH NON-UNIQUE KEY CARRID, CONNID, FLDATE.
- DATA: WA_HIST_VUELOS LIKE LINE OF IT_HISTORIAL_CLIENTE.
- SELECT CARRID CONNID FLDATE BOOKID CUSTOMID AGENCYNUM CANCELLED
- FROM SBOOK
- INTO TABLE IT_HISTORIAL_CLIENTE
- WHERE CUSTOMID = IV_CLIENTEID
- ORDER BY FLDATE.
- IF SY-SUBRC <> 0.
- MESSAGE e015(ZBC400_13A).
- ENDIF.
- LOOP AT IT_HISTORIAL_CLIENTE INTO WA_HIST_VUELOS.
- WRITE: / WA_HIST_VUELOS-CARRID,
- WA_HIST_VUELOS-CONNID,
- WA_HIST_VUELOS-FLDATE,
- WA_HIST_VUELOS-BOOKID,
- WA_HIST_VUELOS-CUSTOMID,
- WA_HIST_VUELOS-AGENCYNUM,
- WA_HIST_VUELOS-CANCELLED.
- ENDLOOP.
- ENDFORM.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement