Files
MBS/PROYECTO/tedir/teprrp013.4gl
T

191 lines
5.5 KiB
Plaintext

{
-------------------------------------------------------------------------------
PROGRAMA : TEPRRP013
OBJETIVO : Validacion de Maestra de Partidas de Tesoreria
PROGRAMADOR : Tadeo A. ferreras F.
FECHA REALIZACION : Enero 05, 1996
-------------------------------------------------------------------------------
}
GLOBALS "teprgb000.4gl"
DEFINE decide CHAR(1)
FUNCTION teprrp013()
DEFINE datos_rep13 RECORD
codigo INTEGER,
descripcion CHAR(30),
tipo CHAR(2),
tipo1 CHAR(1)
END RECORD
# WHENEVER ERROR CONTINUE
OPTIONS
FORM LINE 8,
ERROR LINE 23,
COMMENT LINE 21
CLEAR SCREEN
OPEN FORM tefmrp013 FROM "tefmrp013"
DISPLAY FORM tefmrp013
CALL pantalla()
DISPLAY "teprrp013" AT 4,3 ATTRIBUTE(RED)
DISPLAY "Maestra de Partidas de Cash Flow" AT 6,24 ATTRIBUTE(BLACK)
## INDICA EL TIPO DE PAPEL NECESARIO PARA EL REPORTE. 1 - PAPEL 9 1/2 X 11
## 2 - PAPEL 14 7/8 X 11
LET tipo_papel = 1
CALL msgrp000(tipo_papel)
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
## AQUI SE INDICA EL CRITERIO DE BUSQUEDA DEL REPORTE
CONSTRUCT criterio ON a.codigo FROM codigo
ON KEY (CONTROL-P)
CALL busca_printer() RETURNING imprime,letras.*,archivo
AFTER CONSTRUCT
EXIT CONSTRUCT
END CONSTRUCT
### Paso Cancelar Proceso
LET parametro = "D"
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
IF INT_FLAG THEN
LET numero_msg = 2
CALL msg(numero_msg)
LET INT_FLAG = FALSE
RETURN
END IF
## Busca la Informacion Requerida
IF decide = "A" THEN
LET selec = "SELECT a.codigo,a.descripcion,a.tipo FROM tetb00003 a ",
"WHERE a.status_t IS NULL AND ",criterio CLIPPED,
" ORDER BY 3,2"
DISPLAY "<< Buscando Informacion ... Espere Por Favor >> " AT 19,14
ELSE
LET selec = "SELECT a.codigo,a.descripcion,a.tipo FROM tetb00003 a ",
"WHERE a.status_t IS NULL AND ",criterio CLIPPED,
" ORDER BY 3,1"
DISPLAY "<< Buscando Informacion ... Espere Por Favor >> " AT 19,14
END IF
PREPARE comando FROM selec
DECLARE busca CURSOR FOR comando
OPEN busca
START REPORT reporte_13 TO archivo
DISPLAY "<< Reporte Generandose ... Espere Por Favor >> " AT 19,14
WHILE STATUS != NOTFOUND
FETCH busca INTO datos_rep13.*
IF STATUS = NOTFOUND THEN
EXIT WHILE
END IF
IF INT_FLAG THEN
LET numero_msg = 2
CALL msg(numero_msg)
LET INT_FLAG = FALSE
RETURN
END IF
IF datos_rep13.tipo = "IG" THEN
LET datos_rep13.tipo1 = "A"
END IF
IF datos_rep13.tipo = "DI" THEN
LET datos_rep13.tipo1 = "B"
END IF
IF datos_rep13.tipo = "DL" THEN
LET datos_rep13.tipo1 = "C"
END IF
OUTPUT TO REPORT reporte_13(datos_rep13.*)
END WHILE
FINISH REPORT reporte_13
#RUN imprime
CALL fdestino(destino,archivo,imprime)
END FUNCTION
## DEFINICION DEL REGISTRO DE IMPRESION CON LOS CAMPOS NECESARIOS PARA
## EL REPORTE
REPORT reporte_13(x)
DEFINE x RECORD
codigo INTEGER,
descripcion CHAR(30),
tipo CHAR(2),
tipo1 CHAR(1)
END RECORD,
## DEFINICION DE LAS VARIABLES DE IMPRESION
hora CHAR(5),
varia CHAR(10)
## DEFINICION DE LOS MARGENES DE IMPRESION
OUTPUT
TOP MARGIN 0
LEFT MARGIN 0
BOTTOM MARGIN 3
ORDER BY x.tipo1,x.codigo
FORMAT
PAGE HEADER
LET hora = time
IF decide = "A" THEN
LET varia = "ALFABETICO"
ELSE
LET varia = " NUMERICO "
END IF
## AQUI SE INDICA LA IMPRESION DE LOS ENCABEZADOS
PRINT COLUMN 1, letras.normal,letras.negrillas_on
PRINT COLUMN 1, "teprrp013",
COLUMN 17, "R A Y . O . V A C D O M I N I C A N A, S. A.",
COLUMN 73, "Pag. ",pageno using "###"
PRINT COLUMN 17, " Sistema de Tesoreria",
COLUMN 73, TODAY USING "dd/mm/yyyy"
PRINT COLUMN 17, " Maestra de Partidas de Cash Flow",
COLUMN 76, hora
PRINT COLUMN 35, varia
SKIP 1 LINE
PRINT COLUMN 1, "----------------------------------------",
"----------------------------------------"
PRINT COLUMN 1, "Partida",
COLUMN 75, "Tipo"
PRINT COLUMN 1, "----------------------------------------",
"----------------------------------------"
PRINT COLUMN 1, letras.negrillas_off
BEFORE GROUP OF x.tipo1
SKIP 1 LINE
IF x.tipo1 = "A" THEN
PRINT COLUMN 1, letras.negrillas_on,"INGRESOS",letras.negrillas_off
END IF
IF x.tipo1 = "B" THEN
PRINT COLUMN 1, letras.negrillas_on,"DESEMBOLSOS INTERNACIONALES",
letras.negrillas_off
END IF
IF x.tipo1 = "C" THEN
PRINT COLUMN 1, letras.negrillas_on,"DESEMBOLSOS LOCALES",
letras.negrillas_off
END IF
ON EVERY ROW
PRINT COLUMN 1, x.codigo USING "&&"," ",x.descripcion CLIPPED,
COLUMN 76, x.tipo CLIPPED
ON LAST ROW
PRINT COLUMN 1, letras.negrillas_on
PRINT COLUMN 1, "Total de Partidas ---> ", COUNT(*) USING "<<<"
PRINT COLUMN 1, letras.negrillas_off
END REPORT