343 lines
11 KiB
Plaintext
343 lines
11 KiB
Plaintext
{
|
|
==============================================================================
|
|
PROGRAMA : TEPRRP007
|
|
SISTEMA : Sistema de Tesoreria
|
|
Objetivo : Relacion de Cheque Emitidos
|
|
PROGRAMADOR : Tadeo A. Ferreras
|
|
FECHA : Diciembre 05, 1995
|
|
==============================================================================
|
|
}
|
|
GLOBALS
|
|
"teprgb000.4gl"
|
|
|
|
DEFINE datos_7 RECORD
|
|
cuenta_no CHAR(8),
|
|
cheque_no INTEGER,
|
|
fecha DATE,
|
|
portador CHAR(30),
|
|
monto DECIMAL(12,2),
|
|
status_t CHAR(1),
|
|
codigo INTEGER,
|
|
descripcion CHAR(30)
|
|
|
|
END RECORD
|
|
DEFINE fecha_inicial,fecha_final DATE
|
|
DEFINE tasa DECIMAL(7,3)
|
|
DEFINE salir CHAR(1)
|
|
|
|
FUNCTION teprrp007()
|
|
LET int_flag = FALSE
|
|
|
|
OPTIONS
|
|
FORM LINE 8
|
|
|
|
OPEN FORM tefmrp007 FROM "tefmrp007"
|
|
DISPLAY FORM tefmrp007
|
|
DISPLAY "teprrp007" AT 4,3 ATTRIBUTE(RED)
|
|
DISPLAY "Relacion de Cheques Emitidos" AT 6,26 ATTRIBUTE(BLACK)
|
|
|
|
LET tipo_papel = 1
|
|
CALL msgrp000(tipo_papel)
|
|
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
|
|
|
INPUT BY NAME fecha_inicial,fecha_final,tasa
|
|
ON KEY(CONTROL-P)
|
|
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
|
|
|
AFTER FIELD fecha_inicial
|
|
IF fecha_inicial IS NULL THEN
|
|
LET numero_msg = 16
|
|
CALL msg(numero_msg)
|
|
NEXT FIELD fecha_inicial
|
|
END IF
|
|
|
|
AFTER FIELD fecha_final
|
|
IF fecha_final IS NULL THEN
|
|
LET numero_msg = 16
|
|
CALL msg(numero_msg)
|
|
NEXT FIELD fecha_final
|
|
END IF
|
|
|
|
IF fecha_inicial > fecha_final THEN
|
|
LET numero_msg = 51
|
|
CALL msg(numero_msg)
|
|
NEXT FIELD fecha_inicial
|
|
END IF
|
|
END INPUT
|
|
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = FALSE
|
|
RETURN
|
|
END IF
|
|
|
|
CONSTRUCT criterio ON a.cuenta_no,a.cheque_no FROM cuenta_no,cheque_no
|
|
ON KEY(CONTROL-P)
|
|
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
|
AFTER CONSTRUCT
|
|
EXIT CONSTRUCT
|
|
END CONSTRUCT
|
|
{
|
|
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
|
|
|
|
LET selec =
|
|
"SELECT UNIQUE a.cuenta_no,a.cheque_no,a.fecha,a.portador,a.monto, ",
|
|
" a.status_t,b.codigo,c.descripcion ",
|
|
"FROM cgtb00005 a, tetb00006 b, outer tetb00003 c ",
|
|
"WHERE ",criterio CLIPPED," AND (a.fecha BETWEEN ? AND ?) AND ",
|
|
" a.cuenta_no = b.banco AND ",
|
|
" a.cheque_no = b.cheque_no AND ",
|
|
" b.codigo = c.codigo ",
|
|
"ORDER BY 1,2"
|
|
|
|
DISPLAY "<<<Buscando Informacion... Espere por Favor>>>" AT 19,14
|
|
ATTRIBUTE(BLUE)
|
|
|
|
PREPARE comando FROM selec
|
|
DECLARE busco CURSOR FOR comando
|
|
OPEN busco USING fecha_inicial,fecha_final
|
|
|
|
START REPORT cheque_e TO archivo
|
|
CALL defecto(impresor) RETURNING imprime1,letras.*,archivo
|
|
|
|
START REPORT cheque_e2 TO archivo
|
|
DISPLAY "<<<Reporte Generandose... Espere por Favor>>>" AT 19,14
|
|
ATTRIBUTE(YELLOW)
|
|
|
|
LET salir = "N"
|
|
WHILE salir != "S"
|
|
FETCH busco INTO datos_7.*
|
|
IF STATUS = NOTFOUND THEN
|
|
LET salir = "S"
|
|
EXIT WHILE
|
|
END IF
|
|
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = FALSE
|
|
RETURN
|
|
END IF
|
|
|
|
DISPLAY datos_7.cuenta_no AT 21,30
|
|
DISPLAY datos_7.cheque_no AT 21,40
|
|
|
|
IF datos_7.status_t = "N" THEN
|
|
LET datos_7.monto = 0
|
|
LET datos_7.portador = "NULO"
|
|
END IF
|
|
|
|
IF datos_7.cuenta_no = 1113 THEN
|
|
LET datos_7.monto = datos_7.monto * tasa
|
|
END IF
|
|
|
|
OUTPUT TO REPORT cheque_e(datos_7.*)
|
|
OUTPUT TO REPORT cheque_e2(datos_7.*)
|
|
END WHILE
|
|
FINISH REPORT cheque_e
|
|
RUN imprime
|
|
|
|
FINISH REPORT cheque_e2
|
|
RUN imprime1
|
|
#CALL fdestino(destino,archivo,imprime)
|
|
#RUN "type lptmp > \\ROVDOM2\contabi"
|
|
#RUN "copy lptmp > \\ROVDOM2\contabi"
|
|
CLEAR SCREEN
|
|
END FUNCTION
|
|
|
|
REPORT cheque_e(x)
|
|
DEFINE x RECORD
|
|
cuenta_no CHAR(8),
|
|
cheque_no INTEGER,
|
|
fecha DATE,
|
|
portador CHAR(30),
|
|
monto DECIMAL(12,2),
|
|
status_t CHAR(1),
|
|
codigo INTEGER,
|
|
descripcion CHAR(30)
|
|
END RECORD
|
|
|
|
## DEFINICION DE LAS VARIABLES DE IMPRESION
|
|
DEFINE numero_ch CHAR(9),
|
|
descripcion CHAR(30),
|
|
detalle1 CHAR(40),
|
|
detalle2 CHAR(37)
|
|
|
|
DEFINE hora CHAR(5)
|
|
|
|
OUTPUT
|
|
## DEFINICION DE LOS MARGENES DE IMPRESION
|
|
TOP MARGIN 0
|
|
LEFT MARGIN 0
|
|
BOTTOM MARGIN 3
|
|
|
|
FORMAT
|
|
PAGE HEADER
|
|
|
|
LET hora = time
|
|
## AQUI SE INDICA LA IMPRESION DE LOS ENCABEZADOS
|
|
PRINT COLUMN 1, letras.negrillas_on,letras.doce,letras.comp_on
|
|
PRINT COLUMN 1, "teprrp007",
|
|
COLUMN 48, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
|
COLUMN 135, "Pag. ",pageno using "###"
|
|
PRINT COLUMN 48, " Sistema de Tesoreria",
|
|
COLUMN 135, today using "dd/mm/yyyy"
|
|
PRINT COLUMN 48, " Relacion Cheques Emitidos",
|
|
COLUMN 138, hora
|
|
SKIP 1 LINE
|
|
PRINT COLUMN 1, "FECHA: Del ",fecha_inicial USING "dd/mm/yyyy",
|
|
" Al ",fecha_final USING "dd/mm/yyyy"
|
|
|
|
PRINT COLUMN 1, "--------------------------------------------------",
|
|
"--------------------------------------------------",
|
|
"------------------------------------------"
|
|
|
|
PRINT COLUMN 1, "Cheque",
|
|
COLUMN 8, "Fecha",
|
|
COLUMN 17, "Beneficiario",
|
|
COLUMN 48, "Concepto",
|
|
COLUMN 125, "Part",
|
|
COLUMN 138, "Valor"
|
|
PRINT COLUMN 1, "--------------------------------------------------",
|
|
"--------------------------------------------------",
|
|
"------------------------------------------"
|
|
|
|
PRINT letras.negrillas_off
|
|
## AQUI SE INDICA LA IMPRESION DEL DETALLE
|
|
BEFORE GROUP OF x.cuenta_no
|
|
|
|
SELECT a.descripcion INTO descripcion FROM cgtb00001 a
|
|
WHERE a.cuenta_no = x.cuenta_no
|
|
|
|
PRINT COLUMN 1, letras.negrillas_on
|
|
PRINT COLUMN 1, "Banco: ", x.cuenta_no CLIPPED," ",
|
|
descripcion CLIPPED," ",letras.negrillas_off;
|
|
|
|
IF x.cuenta_no = 1103 THEN
|
|
PRINT " ( Tasa US$ : ",tasa USING "##.####"," )"
|
|
ELSE
|
|
PRINT " "
|
|
END IF
|
|
|
|
BEFORE GROUP OF x.cheque_no
|
|
|
|
LET numero_ch = NULL
|
|
LET detalle1 = NULL
|
|
LET detalle2 = NULL
|
|
IF x.status_t = "N" THEN
|
|
LET detalle1 = "CHEQUE ANULADO"
|
|
LET detalle2 = " "
|
|
ELSE
|
|
LET numero_ch = NULL
|
|
LET numero_ch = "CK.",x.cheque_no USING "&&&&&&"
|
|
SELECT UNIQUE a.detalle_1,a.detalle_2[1,37]
|
|
INTO detalle1,detalle2
|
|
FROM cgtb00004 a
|
|
WHERE a.tipo=2 AND a.cuenta_no=x.cuenta_no AND a.ref = numero_ch
|
|
AND a.detalles matches x.cuenta_no AND a.status_t IS NULL
|
|
END IF
|
|
|
|
ON EVERY ROW
|
|
|
|
PRINT COLUMN 1, x.cheque_no USING "#####","|",
|
|
x.fecha USING "dd/mm/yyyy","|",
|
|
COLUMN 17, x.portador,"|",
|
|
COLUMN 48, detalle1,detalle2,"|",
|
|
COLUMN 126, x.codigo USING "&&", "|",
|
|
COLUMN 129, x.monto USING "###,###,###.##"
|
|
|
|
AFTER GROUP OF x.cuenta_no
|
|
PRINT COLUMN 129, "--------------"
|
|
PRINT COLUMN 1, "Total Cheque(s) --> ", GROUP COUNT(*)
|
|
USING "<<<,<<<",
|
|
COLUMN 129, GROUP SUM(x.monto) USING "###,###,###.##"
|
|
|
|
ON LAST ROW
|
|
PRINT COLUMN 129, "--------------"
|
|
PRINT COLUMN 1, "Total Cheque(s) --> ", COUNT (*) USING "<<<,<<<",
|
|
COLUMN 129, SUM(x.monto) USING "###,###,###.##"
|
|
PRINT COLUMN 129, "=============="
|
|
|
|
PRINT letras.normal #comp_off
|
|
END REPORT
|
|
|
|
REPORT cheque_e2(x)
|
|
DEFINE x RECORD
|
|
cuenta_no CHAR(8),
|
|
cheque_no INTEGER,
|
|
fecha DATE,
|
|
portador CHAR(30),
|
|
monto DECIMAL(12,2),
|
|
status_t CHAR(1),
|
|
codigo INTEGER,
|
|
descripcion CHAR(30)
|
|
END RECORD
|
|
|
|
## DEFINICION DE LAS VARIABLES DE IMPRESION
|
|
DEFINE numero_ch CHAR(9),
|
|
descripcion CHAR(30),
|
|
detalle1 CHAR(40),
|
|
detalle2 CHAR(37)
|
|
|
|
DEFINE hora CHAR(5)
|
|
|
|
OUTPUT
|
|
## DEFINICION DE LOS MARGENES DE IMPRESION
|
|
TOP MARGIN 0
|
|
LEFT MARGIN 0
|
|
BOTTOM MARGIN 3
|
|
|
|
ORDER BY x.codigo
|
|
|
|
FORMAT
|
|
PAGE HEADER
|
|
|
|
LET hora = time
|
|
## AQUI SE INDICA LA IMPRESION DE LOS ENCABEZADOS
|
|
PRINT COLUMN 1, letras.negrillas_on,letras.doce,letras.comp_on
|
|
PRINT COLUMN 1, "teprrp007",
|
|
COLUMN 48, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
|
COLUMN 135, "Pag. ",pageno using "###"
|
|
PRINT COLUMN 48, " Sistema de Tesoreria",
|
|
COLUMN 135, today using "dd/mm/yyyy"
|
|
PRINT COLUMN 50, "Resumen por Partidas de Cheques Emitidos",
|
|
COLUMN 138, hora
|
|
SKIP 1 LINE
|
|
PRINT COLUMN 1, "FECHA: Del ",fecha_inicial USING "dd/mm/yyyy",
|
|
" Al ",fecha_final USING "dd/mm/yyyy"
|
|
|
|
PRINT COLUMN 1, "--------------------------------------------------",
|
|
"--------------------------------------------------",
|
|
"------------------------------------------"
|
|
|
|
PRINT COLUMN 1, "Partida",
|
|
COLUMN 40, "Valor"
|
|
PRINT COLUMN 1, "--------------------------------------------------",
|
|
"--------------------------------------------------",
|
|
"------------------------------------------"
|
|
|
|
PRINT letras.negrillas_off
|
|
|
|
AFTER GROUP OF x.codigo
|
|
PRINT COLUMN 1, x.codigo USING "&&"," ",
|
|
x.descripcion,
|
|
COLUMN 40, GROUP SUM(x.monto) USING "###,###,###.##"
|
|
|
|
ON LAST ROW
|
|
PRINT COLUMN 39, "----------------"
|
|
PRINT COLUMN 1, " Total General ",
|
|
COLUMN 40, SUM(x.monto) USING "###,###,###.##"
|
|
PRINT COLUMN 39, "================"
|
|
|
|
PRINT letras.normal #comp_off
|
|
END REPORT
|