182 lines
4.9 KiB
Plaintext
182 lines
4.9 KiB
Plaintext
GLOBALS
|
|
"veprgb000.4gl"
|
|
DEFINE archivo CHAR(9)
|
|
DEFINE p_fecha DATE
|
|
DEFINE nomb1,nomb2 CHAR(20)
|
|
|
|
DEFINE pendiente RECORD
|
|
num_doc INTEGER,
|
|
valor DECIMAL(12,2)
|
|
END RECORD
|
|
|
|
DEFINE ac_vend RECORD
|
|
vend_del SMALLINT,
|
|
nombre_del CHAR(30),
|
|
vend_al SMALLINT,
|
|
nombre_al CHAR(30)
|
|
END RECORD
|
|
|
|
FUNCTION veprmt030()
|
|
OPTIONS
|
|
ERROR LINE 24,
|
|
FORM LINE 9
|
|
OPEN FORM vefmmt030 FROM "vefmmt030"
|
|
DISPLAY FORM vefmmt030
|
|
CALL pantalla()
|
|
DISPLAY "veprmt030" AT 4,2
|
|
DISPLAY "Cambio de Vendedor" AT 6,30
|
|
|
|
INITIALIZE ac_vend.* TO NULL
|
|
INPUT BY NAME ac_vend.* ATTRIBUTE (BOLD)
|
|
AFTER FIELD vend_del
|
|
IF ac_vend.vend_del is null THEN
|
|
LET numero_msg = 16
|
|
CALL msg(numero_msg)
|
|
NEXT FIELD vend_del
|
|
END IF
|
|
|
|
SELECT nom1_emp,apell1_emp INTO nomb1,nomb2 FROM adtb00003
|
|
WHERE num_emp = ac_vend.vend_del
|
|
|
|
IF status = notfound THEN
|
|
LET numero_msg = 3
|
|
CALL msg(numero_msg)
|
|
NEXT FIELD vend_del
|
|
END IF
|
|
LET ac_vend.nombre_del = nomb1 clipped," ",nomb2 clipped
|
|
DISPLAY BY NAME ac_vend.nombre_del ATTRIBUTE (BOLD)
|
|
|
|
AFTER FIELD vend_al
|
|
IF ac_vend.vend_al is null THEN
|
|
LET numero_msg = 16
|
|
CALL msg(numero_msg)
|
|
NEXT FIELD vend_al
|
|
END IF
|
|
|
|
SELECT nom1_emp,apell1_emp INTO nomb1,nomb2 FROM adtb00003
|
|
WHERE num_emp = ac_vend.vend_al
|
|
|
|
IF status = notfound THEN
|
|
LET numero_msg = 3
|
|
CALL msg(numero_msg)
|
|
NEXT FIELD vend_al
|
|
END IF
|
|
LET ac_vend.nombre_al = nomb1 clipped," ",nomb2 clipped
|
|
DISPLAY BY NAME ac_vend.nombre_al ATTRIBUTE (BOLD)
|
|
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
|
|
|
|
CONSTRUCT BY NAME criterio ON aplica_a
|
|
|
|
LET selec =
|
|
"SELECT aplica_a,sum(valor+monto_desc) FROM cctb00001 ",
|
|
"WHERE ",criterio clipped,
|
|
" and cod_emp_sec = ? and ",
|
|
" status_t is null ",
|
|
" GROUP BY 1 ",
|
|
" HAVING sum(valor+monto_desc) != 0 "
|
|
DISPLAY "<< Buscando Facturas Pendientes... Espere Por Favor >> " AT 18,14
|
|
PREPARE comando FROM selec
|
|
DECLARE busca CURSOR FOR comando
|
|
OPEN busca USING ac_vend.vend_del
|
|
|
|
# LET archivo = "act",today using "ddmmyy"
|
|
START REPORT actual TO "archivo"
|
|
WHILE status != notfound
|
|
FETCH busca INTO pendiente.*
|
|
IF status = notfound THEN
|
|
EXIT WHILE
|
|
END IF
|
|
SELECT fecha_factura INTO p_fecha FROM vetb00002 WHERE
|
|
factura = pendiente.num_doc
|
|
|
|
DISPLAY "<< Reporte Generandose Espere Por Favor >> " AT 18,14
|
|
OUTPUT TO REPORT actual(ac_vend.*,pendiente.*,p_fecha)
|
|
|
|
DISPLAY "<< Actualizando Tablas Espere Por Favor >> " AT 18,14
|
|
UPDATE vetb00028 set sec_vend = ac_vend.vend_al,
|
|
us_crea = user,
|
|
fech_crea = current
|
|
WHERE sec_vend = ac_vend.vend_del
|
|
|
|
UPDATE cctb00001 set cod_emp_sec = ac_vend.vend_al,
|
|
us_crea = user,
|
|
fech_crea = current
|
|
WHERE num_doc = pendiente.num_doc
|
|
|
|
UPDATE vetb00002 set sec_vend = ac_vend.vend_al,
|
|
us_crea = user,
|
|
fech_crea = current
|
|
WHERE factura = pendiente.num_doc
|
|
|
|
END WHILE
|
|
FINISH REPORT actual
|
|
END FUNCTION
|
|
|
|
REPORT actual(x,z,fecha_doc)
|
|
DEFINE fecha_doc DATE
|
|
DEFINE z RECORD
|
|
num_doc INTEGER,
|
|
valor DECIMAL(12,2)
|
|
END RECORD
|
|
|
|
DEFINE x RECORD
|
|
vend_del SMALLINT,
|
|
nombre_del CHAR(30),
|
|
vend_al SMALLINT,
|
|
nombre_al CHAR(30)
|
|
END RECORD
|
|
DEFINE doce,normal CHAR(2)
|
|
OUTPUT
|
|
TOP MARGIN 2
|
|
LEFT MARGIN 0
|
|
|
|
FORMAT
|
|
PAGE HEADER
|
|
LET doce = ASCII 27, ASCII 77
|
|
LET normal = ASCII 27, ASCII 80
|
|
PRINT doce
|
|
PRINT COLUMN 1, "veprmt030";
|
|
PRINT COLUMN 15, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
|
COLUMN 74, "Pag. ",pageno using "##"
|
|
PRINT COLUMN 31, "Sistema de Ventas",
|
|
COLUMN 74, today using "dd/mm/yy"
|
|
PRINT COLUMN 24, "Cambios de Vendedores En Facturas",
|
|
COLUMN 74, time
|
|
|
|
PRINT COLUMN 1,
|
|
"-----------------------------------------------------------------------------",
|
|
"--------------------"
|
|
|
|
PRINT COLUMN 6, "ANTES",
|
|
COLUMN 48, "DESPUES"
|
|
|
|
PRINT COLUMN 1, "FACTURA",
|
|
COLUMN 10, "VENDEDOR",
|
|
COLUMN 42, "FACTURA",
|
|
COLUMN 52, "VENDEDOR",
|
|
COLUMN 80, "FECHA"
|
|
PRINT COLUMN 1,
|
|
"-----------------------------------------------------------------------------",
|
|
"--------------------"
|
|
|
|
ON EVERY ROW
|
|
PRINT COLUMN 1, z.num_doc using "&&&&&&",
|
|
COLUMN 10, x.nombre_del,
|
|
COLUMN 42, z.num_doc using "&&&&&&",
|
|
COLUMN 52, x.nombre_al clipped,
|
|
COLUMN 80, fecha_doc using "dd/mm/yy"
|
|
|
|
ON LAST ROW
|
|
PRINT COLUMN 1, "Total Registros Impresos==> ",
|
|
COUNT(*) USING "####"
|
|
PRINT normal
|
|
END REPORT
|