52 lines
2.3 KiB
Plaintext
52 lines
2.3 KiB
Plaintext
MAIN
|
|
|
|
CONNECT TO "smarmotech" AS "MSSQL" USER 'jsoto' USING 'lmmjvsd2014'
|
|
CALL actdev()
|
|
END MAIN
|
|
FUNCTION actdev()
|
|
DEFINE data RECORD
|
|
factura,tipo_cliente,sec_cliente INT,
|
|
valor_dev DECIMAL(12,2),
|
|
cantidad DEC(12,5),
|
|
codn,codgrupo,codtipo,codsec INT,
|
|
precio,porcdesc DEC(12,2),
|
|
itbis DEC(12,2),
|
|
area INT,
|
|
fecha DATE
|
|
|
|
END RECORD,
|
|
valor DEC(12,2)
|
|
|
|
DECLARE buscar CURSOR FOR
|
|
SELECT a.aplica_a,a.tipo_cliente,a.sec_cliente,AVG((a.valor+a.monto_desc)*-1),
|
|
SUM(b.cantidad_2),b.cod_n,b.cod_grupo, b.cod_tipo,b.cod_sec,c.precio,c.cantidad_2,
|
|
a.valor_efectivo,b.area,a.fecha_orig
|
|
FROM cctb00001 a,iptb00006 b,vetb00003 c
|
|
WHERE a.fecha_orig BETWEEN '01/01/2022' AND '01/31/2022' AND a.status_t IS NULL AND
|
|
a.tipo_Doc = 'NC' AND
|
|
a.banco = b.cod_mov AND a.num_cheque = b.num_doc AND b.cod_mov IN (12,13)
|
|
AND a.tipo_cliente = b.cod_sp AND a.sec_cliente = b.cod_sp_sec AND a.bodega = b.bodega
|
|
AND b.factura = c.factura 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 b.area = c.area
|
|
GROUP BY a.aplica_a,a.tipo_cliente,a.sec_cliente,b.cod_n,b.cod_grupo, b.cod_tipo,b.cod_sec,c.precio,c.cantidad_2,
|
|
a.valor_efectivo,b.area,a.fecha_orig
|
|
|
|
DISPLAY "EN PROCESO.... "
|
|
FOREACH buscar INTO data.*
|
|
LET valor =(data.cantidad * data.precio) - ((data.cantidad * data.precio)*(data.porcdesc/100))
|
|
IF data.itbis > 0 THEN
|
|
LET valor = valor + (valor*.18)
|
|
END IF
|
|
UPDATE vetb00003 SET cantidad_devuelta = data.cantidad,
|
|
fecha_devolucion = data.fecha,
|
|
|
|
valor_devolucion = valor_devolucion+valor
|
|
WHERE factura = data.factura AND cod_n = data.codn AND cod_grupo = data.codgrupo AND cod_tipo = data.codtipo AND
|
|
cod_sec = data.codsec AND area = data.area
|
|
DISPLAY "ACTUALICE FACTURA ",data.factura
|
|
END FOREACH
|
|
|
|
|
|
|
|
END FUNCTION
|