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