181 lines
6.0 KiB
Plaintext
181 lines
6.0 KiB
Plaintext
{
|
|
-------------------------------------------------------------------------------
|
|
PROGRAMA : TEPRRP006
|
|
OBJETIVO : COMISION CKS. DEVUELTOS
|
|
PROGRAMADOR : Tadeo A. Ferreras F.
|
|
FECHA REALIZACION : Junio 7, 1995
|
|
-------------------------------------------------------------------------------
|
|
}
|
|
GLOBALS "teprgb000.4gl"
|
|
DEFINE datos_k RECORD
|
|
cod_cia LIKE vetb00002.cod_cia,
|
|
factura LIKE vetb00002.factura,
|
|
monto LIKE vetb00002.neto,
|
|
numero LIKE cctb00001.num_doc,
|
|
sec_vend LIKE cctb00001.cod_emp_sec,
|
|
tipo_cliente LIKE cctb00001.tipo_cliente,
|
|
sec_cliente LIKE cctb00001.sec_cliente,
|
|
valor LIKE cctb00001.valor
|
|
END RECORD
|
|
|
|
FUNCTION teprrp006()
|
|
DEFINE p_cia,p_vende SMALLINT
|
|
OPTIONS
|
|
FORM LINE 8,
|
|
ERROR LINE 24
|
|
|
|
OPEN FORM tefmrp006 FROM "tefmrp006"
|
|
DISPLAY FORM tefmrp006
|
|
|
|
LET tipo_papel = 1
|
|
CALL msgrp000(tipo_papel)
|
|
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
|
|
|
INPUT BY NAME rango.*
|
|
ON KEY(CONTROL-P)
|
|
|
|
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
|
|
|
AFTER FIELD fech_fi
|
|
IF rango.fech_fi <= rango.fech_in THEN
|
|
LET numero_msg = 51
|
|
CALL msg(numero_msg)
|
|
NEXT FIELD fech_in
|
|
END IF
|
|
AFTER INPUT
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = false
|
|
RETURN
|
|
END IF
|
|
EXIT INPUT
|
|
END INPUT
|
|
LET parametro = "D"
|
|
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
|
|
|
DISPLAY "<<< Buscando Informacion... Espere Por Favor" AT 19,14
|
|
|
|
START REPORT ckdevuelve TO archivo
|
|
|
|
# Busca los cheques devueltos de cuentas por cobrar
|
|
DECLARE busca CURSOR FOR
|
|
SELECT UNIQUE b.cod_cia,b.factura,b.neto,a.num_doc,a.cod_emp_sec,
|
|
a.tipo_cliente,a.sec_cliente,a.valor
|
|
FROM cctb00001 a,vetb00002 b
|
|
WHERE (a.cod_emp_sec = a.cod_emp_sec and
|
|
a.fecha_orig between rango.fech_in and rango.fech_fi and
|
|
a.tipo_doc = "ND" and a.valor_cheque is not null) and
|
|
(a.aplica_a = b.factura) and a.status_t is null
|
|
ORDER BY 5,4,2
|
|
|
|
FOREACH busca INTO datos_k.*
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = false
|
|
FINISH REPORT ckdevuelve
|
|
END IF
|
|
|
|
LET p_cia = datos_k.cod_cia
|
|
LET p_vende = datos_k.sec_vend
|
|
OUTPUT TO REPORT ckdevuelve(p_cia,p_vende)
|
|
END FOREACH
|
|
|
|
FINISH REPORT ckdevuelve
|
|
#RUN imprime
|
|
CALL fdestino(destino,archivo,imprime)
|
|
END FUNCTION
|
|
|
|
REPORT ckdevuelve(cia,vende)
|
|
|
|
DEFINE cia,vende SMALLINT,
|
|
porc_dev DECIMAL(10,4),
|
|
nomb1,nomb2 CHAR(20),
|
|
nombre_cliente CHAR(30),
|
|
t_porc DECIMAL(10,2),
|
|
doce CHAR(3)
|
|
|
|
OUTPUT
|
|
TOP MARGIN 0
|
|
LEFT MARGIN 0
|
|
|
|
FORMAT
|
|
|
|
PAGE HEADER
|
|
LET doce = ASCII 30
|
|
PRINT COLUMN 1, letras.doce
|
|
PRINT COLUMN 1, "teprrp006",
|
|
COLUMN 27, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
|
COLUMN 94, "Pag. ",pageno using "###"
|
|
PRINT COLUMN 27, " Sistema de Tesoreria ",
|
|
COLUMN 94, today using "dd/mm/yyyy"
|
|
PRINT COLUMN 27, " Comision Cheques Devueltos",
|
|
COLUMN 94, time
|
|
SKIP 1 LINES
|
|
PRINT "Rango: Del ",rango.fech_in USING "dd/mm/yyyy",
|
|
" Al ",rango.fech_fi USING "dd/mm/yyyy"
|
|
PRINT "--------------------------------------------------------",
|
|
"---------------------------------------------"
|
|
SKIP 1 LINES
|
|
|
|
BEFORE GROUP OF vende
|
|
SELECT nom1_emp,apell1_emp INTO nomb1,nomb2 FROM adtb00003
|
|
WHERE num_emp = vende
|
|
|
|
PRINT COLUMN 1, "VENDEDOR: ",vende using "&&&"," ",
|
|
nomb1 clipped," ",nomb2
|
|
SKIP 1 LINE
|
|
PRINT COLUMN 80, "VALOR"
|
|
|
|
PRINT COLUMN 1, "DOCUMENTO",
|
|
COLUMN 15,"CLIENTE",
|
|
COLUMN 54, "FACTURA",
|
|
COLUMN 68, "MONTO",
|
|
COLUMN 80,"S/ITBI",
|
|
COLUMN 92, "%",
|
|
COLUMN 94,"COMISION"
|
|
SKIP 1 LINE
|
|
ON EVERY ROW
|
|
|
|
IF cia = 1 THEN
|
|
SELECT unique a.porc_cobros INTO porc_dev FROM vetb00011 a
|
|
WHERE a.sec_vend = datos_k.sec_vend and a.cod_n = 3 and
|
|
a.status_t is null
|
|
ELSE
|
|
SELECT unique a.porc_cobros INTO porc_dev FROM vetb00011 a
|
|
WHERE a.sec_vend = datos_k.sec_vend and a.cod_n in (6,9) and
|
|
a.status_t is null
|
|
END IF
|
|
|
|
SELECT nombre INTO nombre_cliente FROM vetb00004
|
|
WHERE tipo_cliente = datos_k.tipo_cliente and
|
|
sec_cliente = datos_k.sec_cliente
|
|
|
|
|
|
PRINT COLUMN 1, datos_k.numero using "&&&&&&",
|
|
COLUMN 15, datos_k.tipo_cliente using "&&","-",
|
|
datos_k.sec_cliente using "&&&&"," ",
|
|
nombre_cliente,
|
|
COLUMN 54, datos_k.factura using "&&&&&&",
|
|
COLUMN 63, datos_k.valor using "###,###.##",
|
|
COLUMN 73, datos_k.valor/1.08 using "##,###,###.##",
|
|
COLUMN 88, porc_dev using "##.####",
|
|
COLUMN 96, (datos_k.valor/1.08) * porc_dev using "###.##"
|
|
|
|
IF t_porc is null THEN
|
|
LET t_porc = 0
|
|
END IF
|
|
LET t_porc = t_porc + ((datos_k.valor/1.08) * porc_dev)
|
|
AFTER GROUP OF vende
|
|
PRINT COLUMN 73, "-------------",
|
|
COLUMN 94, "--------"
|
|
|
|
PRINT COLUMN 15, "TOTAL VENDEDOR: ",
|
|
COLUMN 73, GROUP SUM(datos_k.valor/1.08) using "##,###,###.##",
|
|
COLUMN 93, t_porc using "##,###.##"
|
|
LET t_porc = 0
|
|
PRINT "--------------------------------------------------------",
|
|
"---------------------------------------------"
|
|
END REPORT
|