{ ------------------------------------------------------------------------------- PROGRAMA : COPRRP009 OBJETIVO : Relacion Paises - Puertos PROGRAMADOR : JUAN SOTO FECHA REALIZACION : Octubre, 1997 DIRECTOR PROYECTO : JOSE ALFREDO PAULINO ALEJO ------------------------------------------------------------------------------- } GLOBALS "coprgb000.4gl" FUNCTION coprrp009() DEFINE paises RECORD cod_pais LIKE cotb00018.cod_pais, nom_pais LIKE cotb00018.nom_pais, cod_pt LIKE cotb00019.cod_pt, nom_pt LIKE cotb00019.nom_pt, ciudad LIKE cotb00019.ciudad, duracion LIKE cotb00019.duracion END RECORD WHENEVER ERROR CONTINUE OPTIONS FORM LINE 8, ERROR LINE 23, COMMENT LINE 21 OPEN FORM cofmrp009 FROM "cofmrp009" DISPLAY FORM cofmrp009 CALL pantalla() DISPLAY "coprrp009" AT 4,3 DISPLAY "Relacion Paises - Puertos" AT 6,27 LET tipo_papel = 1 CALL msgrp000(tipo_papel) CONSTRUCT criterio ON a.cod_pais FROM cod_pais IF int_flag THEN LET numero_msg = 2 CALL msg(numero_msg) LET int_flag = false RETURN END IF LET SELEC = "SELECT a.cod_pais,a.nom_pais,b.cod_pt,b.nom_pt, ", "b.ciudad,b.duracion ", " FROM cotb00018 a, cotb00019 b ", " WHERE ", "a.cod_pais = b.cod_pais AND ", "a.status_t is null AND ", "b.status_t is null AND ", criterio clipped, " ORDER BY 1,3" IF int_flag THEN LET numero_msg = 2 CALL msg(numero_msg) LET int_flag = false RETURN END IF DISPLAY "Buscando Informacion ... Espere Por Favor" AT 19,14 ATTRIBUTE (REVERSE,BOLD) PREPARE busca FROM selec CALL integridad() IF bandera = 1 THEN LET bandera = 0 RETURN END IF IF int_flag THEN LET numero_msg = 2 CALL msg(numero_msg) LET int_flag = false RETURN END IF DISPLAY " " AT 19,14 DISPLAY "<< Reporte Generandose ... Por Favor Espere. >>" AT 19,14 ATTRIBUTE (REVERSE) DECLARE accion CURSOR FOR busca START REPORT listar TO "C:\\archivo" FOREACH accion INTO paises.* IF STATUS = NOTFOUND THEN EXIT FOREACH END IF OUTPUT TO REPORT listar(paises.*) END FOREACH FINISH REPORT listar CLEAR SCREEN RUN "type C:\\archivo > %USPRINT%" END FUNCTION REPORT listar(x) DEFINE x RECORD cod_pais LIKE cotb00018.cod_pais, nom_pais LIKE cotb00018.nom_pais, cod_pt LIKE cotb00019.cod_pt, nom_pt LIKE cotb00019.nom_pt, ciudad LIKE cotb00019.ciudad, duracion LIKE cotb00019.duracion END RECORD DEFINE b_puerto,bandera,bandera1 CHAR(1) DEFINE doble_on CHAR(2) DEFINE doble_off CHAR(2) DEFINE negrillas_on CHAR(2) DEFINE negrillas_off CHAR(2) DEFINE comp_on CHAR(2) DEFINE comp_off CHAR(2) # DEFINE doce CHAR(2) DEFINE normal CHAR(2) DEFINE hora CHAR(5) OUTPUT TOP MARGIN 0 LEFT MARGIN 4 BOTTOM MARGIN 2 FORMAT PAGE HEADER LET doble_on = ASCII 14 LET doble_off = ASCII 20 LET negrillas_on = ASCII 27, ASCII 69 LET negrillas_off = ASCII 27, ASCII 70 LET comp_on = ASCII 15 LET comp_off = ASCII 18 # LET doce = ASCII 27, ASCII 77 LET normal = ASCII 27, ASCII 80 LET hora = time LET l = (80 - LENGTH(p_companias.nombre CLIPPED))/2 PRINT COLUMN 1, comp_off,negrillas_on PRINT COLUMN 1, "coprrp009", COLUMN 17, p_companias.nombre CLIPPED, COLUMN 72, "Pag. ",pageno using "###" PRINT COLUMN 17, " Sistema de Compras", COLUMN 72, today using "dd/mm/yy" PRINT COLUMN 17, " Relacion Paises - Puertos", COLUMN 75, hora PRINT COLUMN 1, "--------------------------------------------------", "-----------------------------" PRINT COLUMN 72, "Travesia" PRINT COLUMN 2, "Puerto", COLUMN 40, "Ciudad", COLUMN 72, "en dias" PRINT COLUMN 1, "--------------------------------------------------", "-----------------------------" PRINT negrillas_off BEFORE GROUP OF x.cod_pais PRINT COLUMN 1, negrillas_on, COLUMN 2, x.cod_pais using "##&", COLUMN 8, x.nom_pais, COLUMN 40, negrillas_off ON EVERY ROW PRINT COLUMN 3, x.cod_pt using "###&", COLUMN 9, x.nom_pt, COLUMN 40, x.ciudad, COLUMN 74, x.duracion USING "<<<" AFTER GROUP OF x.cod_pais SKIP 1 LINE END REPORT