293 lines
9.9 KiB
Plaintext
293 lines
9.9 KiB
Plaintext
{
|
|
-------------------------------------------------------------------------------
|
|
PROGRAMA : CCPRRP005
|
|
OBJETIVO : Liquidacion Comision Por Cobros Plan Ranchero
|
|
PROGRAMADOR : Juan Fco. Soto
|
|
FECHA REALIZACION : Abril 06, 1995
|
|
-------------------------------------------------------------------------------
|
|
}
|
|
GLOBALS
|
|
"teprgb000.4gl"
|
|
|
|
DEFINE fact_ant INTEGER
|
|
DEFINE cod_cia SMALLINT
|
|
DEFINE p_datos RECORD
|
|
fecha_in DATE,
|
|
fecha_fin DATE
|
|
END RECORD
|
|
DEFINE porc_rep,porciento,p_itbi DECIMAL(8,2)
|
|
DEFINE p_neto,valor_desc DECIMAL(12,2)
|
|
|
|
FUNCTION teprrp005()
|
|
#DEFINE imprime CHAR(1)
|
|
|
|
DEFINE vendedor RECORD
|
|
cod_vend SMALLINT,
|
|
sec_vend SMALLINT,
|
|
fecha_factura DATE,
|
|
factura INTEGER,
|
|
cod_n SMALLINT,
|
|
cod_grupo SMALLINT,
|
|
cod_tipo SMALLINT,
|
|
cod_sec SMALLINT,
|
|
cantidad INTEGER ,
|
|
precio DECIMAL(10,2),
|
|
recibo INTEGER,
|
|
fecha DATE,
|
|
valor_c DECIMAL(12,2),
|
|
porc_venta DECIMAL(10,4),
|
|
descrip_esp CHAR(30),
|
|
nombre_vend CHAR(30),
|
|
apellido_vend CHAR(30) ,
|
|
vende CHAR(6),
|
|
codigo CHAR(7)
|
|
END RECORD
|
|
|
|
#WHENEVER ERROR CONTINUE
|
|
|
|
OPTIONS
|
|
FORM LINE 8,
|
|
ERROR LINE 23,
|
|
COMMENT LINE 21
|
|
|
|
OPEN FORM tefmrp005 FROM "tefmrp005"
|
|
DISPLAY FORM tefmrp005
|
|
#CALL pantalla()
|
|
DISPLAY "teprrp005" AT 4,3 ATTRIBUTE(RED)
|
|
DISPLAY "Liquidacion Comision Por Cobro Plan Ranchero" AT 6,17 ATTRIBUTE(BLACK)
|
|
|
|
LET tipo_papel = 1
|
|
CALL msgrp000(tipo_papel)
|
|
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
|
|
|
INPUT BY NAME cod_cia,p_datos.*
|
|
ON KEY(CONTROL-P)
|
|
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
|
AFTER INPUT
|
|
EXIT INPUT
|
|
END INPUT
|
|
|
|
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
|
|
|
|
START REPORT reporte_5 TO archivo
|
|
|
|
DISPLAY " "
|
|
AT 19,14
|
|
|
|
DISPLAY "<< Buscando Las Informaciones... Espere Por Favor >>"
|
|
AT 19,14
|
|
|
|
DECLARE c_vende CURSOR FOR
|
|
SELECT UNIQUE d.cod_emp,d.cod_emp_sec,a.fecha_factura,a.factura,
|
|
b.cod_n,b.cod_grupo,b.cod_tipo,b.cod_sec,b.cantidad,
|
|
b.cantidad * b.precio ,d.num_doc,d.fecha_orig,d.valor,
|
|
a.porc_desc,' ',' ',' ',' ',' ',
|
|
a.porc_desc,a.porc_itbi,a.neto
|
|
FROM vetb00002 a,vetb00003 b ,cctb00005 c,cctb00001 d
|
|
WHERE d.fecha_orig between p_datos.fecha_in and p_datos.fecha_fin
|
|
and (a.fecha_factura > "01011994")
|
|
and (a.factura = b.factura) and
|
|
(a.cod_cia = cod_cia) and a.status_t is null and
|
|
(b.cod_n = c.cod_n and
|
|
b.cod_grupo = c.cod_grupo and
|
|
b.cod_tipo = c.cod_tipo and
|
|
b.cod_sec = c.cod_sec) and
|
|
d.cod_emp_sec in (367,338) and
|
|
d.tipo_doc = "PG" and d.aplica_a = a.factura and
|
|
d.status_t is null
|
|
|
|
DISPLAY " "
|
|
AT 19,14
|
|
|
|
DISPLAY "<< Reporte Generandose... Espere Por Favor >>"
|
|
AT 19,14
|
|
|
|
FOREACH c_vende INTO vendedor.*,porciento,p_itbi,p_neto
|
|
SELECT descrip_esp INTO vendedor.descrip_esp FROM intb00001
|
|
WHERE cod_n = vendedor.cod_n and
|
|
cod_grupo = vendedor.cod_grupo and
|
|
cod_tipo = vendedor.cod_tipo and
|
|
cod_sec = vendedor.cod_sec
|
|
|
|
SELECT nom1_emp,apell1_emp
|
|
INTO vendedor.nombre_vend,vendedor.apellido_vend
|
|
FROM adtb00003 WHERE
|
|
num_emp = vendedor.sec_vend
|
|
|
|
LET vendedor.vende =
|
|
vendedor.sec_vend using "&&&&"
|
|
|
|
LET vendedor.codigo = vendedor.cod_n using "&",
|
|
vendedor.cod_grupo using "&",
|
|
vendedor.cod_tipo using "&&",
|
|
vendedor.cod_sec using "&&&"
|
|
|
|
LET valor_desc = vendedor.precio * (porciento/100)
|
|
|
|
LET vendedor.precio = vendedor.precio - valor_desc
|
|
|
|
LET vendedor.precio =
|
|
vendedor.precio + vendedor.precio * (p_itbi / 100)
|
|
|
|
LET porc_rep = (vendedor.precio / p_neto) * 100
|
|
|
|
OUTPUT TO REPORT reporte_5 (vendedor.*,porc_rep,p_neto)
|
|
|
|
END FOREACH
|
|
|
|
FINISH REPORT reporte_5
|
|
#RUN imprime
|
|
CALL fdestino(destino,archivo,imprime)
|
|
CLEAR SCREEN
|
|
END FUNCTION
|
|
|
|
REPORT reporte_5(x,porc,p_neto1)
|
|
DEFINE x RECORD
|
|
cod_vend SMALLINT,
|
|
sec_vend SMALLINT,
|
|
fecha_factura DATE,
|
|
factura INTEGER,
|
|
cod_n SMALLINT,
|
|
cod_grupo SMALLINT,
|
|
cod_tipo SMALLINT,
|
|
cod_sec SMALLINT,
|
|
cantidad INTEGER ,
|
|
precio DECIMAL(10,2),
|
|
recibo INTEGER,
|
|
fecha DATE,
|
|
valor_c DECIMAL(12,2),
|
|
porc_venta DECIMAL(10,4),
|
|
descrip_esp CHAR(30),
|
|
nombre_vend CHAR(30),
|
|
apellido_vend CHAR(30) ,
|
|
vendedor CHAR(6) ,
|
|
codigo CHAR(7)
|
|
END RECORD
|
|
|
|
DEFINE nombre_mes CHAR(10)
|
|
DEFINE ii,total_clientes INTEGER
|
|
DEFINE doce CHAR(6)
|
|
|
|
DEFINE hora CHAR(5)
|
|
DEFINE i SMALLINT
|
|
DEFINE porc DECIMAL(10,4)
|
|
DEFINE t_valor1,p_neto1,t_valor,valor DECIMAL(12,2)
|
|
|
|
OUTPUT
|
|
TOP MARGIN 0
|
|
LEFT MARGIN 0
|
|
BOTTOM MARGIN 4
|
|
|
|
ORDER BY x.vendedor,x.factura,x.codigo,x.recibo
|
|
|
|
FORMAT
|
|
PAGE HEADER
|
|
LET hora = time
|
|
|
|
PRINT COLUMN 1, letras.doce, letras.negrillas_on
|
|
PRINT COLUMN 1, "teprrp005",
|
|
COLUMN 55, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
|
COLUMN 148, "Pag. ",pageno using "###"
|
|
PRINT COLUMN 55, " Sistema de Tesoreria",
|
|
COLUMN 148, today using "dd/mm/yyyy"
|
|
PRINT COLUMN 55, " Liquidacion Comision Por Cobro Plan Ranchero",
|
|
COLUMN 151, hora
|
|
PRINT COLUMN 1, letras.negrillas_off
|
|
|
|
IF cod_cia = 1 THEN
|
|
PRINT COLUMN 1, "Rayovac Dominicana"
|
|
ELSE
|
|
PRINT COLUMN 1, "Distribuidora Dominicana de Pilas"
|
|
END IF
|
|
|
|
PRINT COLUMN 1, "Del ",p_datos.fecha_in using "dd/mm/yyyy"," Al ",
|
|
p_datos.fecha_fin using "dd/mm/yyyy"
|
|
|
|
PRINT COLUMN 1, "--------------------------------------------------",
|
|
"--------------------------------------------------" ,
|
|
"------------------------------------------------------"
|
|
|
|
PRINT COLUMN 20, "VALOR",
|
|
COLUMN 80, "PORC.",
|
|
COLUMN 92, "VALOR",
|
|
COLUMN 101, "NUMERO",
|
|
COLUMN 126, "VALOR",
|
|
COLUMN 135, " VALOR"
|
|
|
|
PRINT COLUMN 1, "FECHA",
|
|
COLUMN 10, "FACTURA",
|
|
COLUMN 20, "FACTURA",
|
|
COLUMN 38, "PRODUCTO",
|
|
COLUMN 80, "REPRES",
|
|
COLUMN 92, "REPRES",
|
|
COLUMN 101, "RECIBO",
|
|
COLUMN 110, "FECHA",
|
|
COLUMN 126, "COBRADO" ,
|
|
COLUMN 135, "REPRESENTA",
|
|
COLUMN 148, "COMISION"
|
|
|
|
PRINT COLUMN 1,
|
|
"--------------------------------------------------",
|
|
"--------------------------------------------------" ,
|
|
"------------------------------------------------------"
|
|
|
|
SKIP 1 LINE
|
|
BEFORE GROUP OF x.vendedor
|
|
LET t_valor = 0
|
|
LET t_valor1 = 0
|
|
PRINT COLUMN 1,letras.doble_on,"VENDEDOR : ",
|
|
x.nombre_vend clipped," ",
|
|
x.apellido_vend clipped, letras.doble_off
|
|
SKIP 1 LINE
|
|
BEFORE GROUP OF x.factura
|
|
|
|
PRINT COLUMN 1, x.fecha_factura using "dd/mm/yyyy",
|
|
COLUMN 12, x.factura using "&&&&&&",
|
|
COLUMN 20, p_neto1 using "###,###.##";
|
|
|
|
ON EVERY ROW
|
|
PRINT COLUMN 38, x.cod_n using "&","-",x.cod_grupo using "&","-",
|
|
x.cod_tipo using "&&","-",x.cod_sec using "&&&",
|
|
" ", x.descrip_esp CLIPPED,
|
|
COLUMN 80, porc USING "###.##",
|
|
COLUMN 91, x.precio USING "###,###.##";
|
|
IF x.recibo is not null THEN
|
|
IF x.valor_c < 0 THEN
|
|
LET x.valor_c = x.valor_c * -1
|
|
END IF
|
|
IF x.precio < x.valor_c THEN
|
|
LET valor = x.valor_c * (porc / 100)
|
|
ELSE
|
|
LET valor = x.valor_c
|
|
END IF
|
|
PRINT COLUMN 102, x.recibo using "&&&&&&",
|
|
COLUMN 110, x.fecha using "dd/mm/yyyy",
|
|
COLUMN 120, x.valor_c using "##,###,###.##",
|
|
COLUMN 134, valor USING "##,###.##",
|
|
COLUMN 146, valor * .01275 USING "##,###.##"
|
|
LET t_valor = (valor * .01275) + t_valor
|
|
LET t_valor1 = valor + t_valor1
|
|
ELSE
|
|
PRINT " "
|
|
END IF
|
|
|
|
AFTER GROUP OF x.vendedor
|
|
SKIP 1 LINE
|
|
PRINT COLUMN 1,letras.negrillas_on
|
|
|
|
PRINT COLUMN 10, "TOTAL VENDEDOR --> ",
|
|
COLUMN 87, GROUP SUM(x.precio) USING "###,###,###.##",
|
|
COLUMN 130, t_valor1 USING "##,###,###.##",
|
|
COLUMN 146, t_valor USING "##,###,###.##"
|
|
|
|
PRINT COLUMN 1,letras.negrillas_off
|
|
END REPORT
|