Files
MBS/MOVIL401/MBSinventario/resources/mt_download.4gl
T

68 lines
2.0 KiB
Plaintext

IMPORT util
TYPE t_sync_cmd RECORD
oper STRING,
data STRING
END RECORD
FUNCTION productos_download(url,xtipo_inventario)
DEFINE url,cmd,res,msg STRING,
ret INT,
xtipo_inventario VARCHAR(100),
i SMALLINT,
pproductos DYNAMIC ARRAY OF RECORD
cod_cia SMALLINT ,
cod_n SMALLINT ,
cod_grupo SMALLINT ,
cod_tipo SMALLINT ,
cod_sec SMALLINT ,
descrip_esp varchar(180) ,
descrip_ing varchar(80) ,
unidad_med varchar(4) ,
nomenclatura char(50) ,
bodega SMALLINT ,
existencia DEC(12,5),
exist_max decimal(10, 2) ,
exist_min decimal(10, 2) ,
dia_llegada SMALLINT ,
control_existencia varchar(2) ,
control_itbis varchar(2) ,
codid INT ,
foto_producto STRING ,
porc_desc decimal(12, 2) ,
fecha_desc DATE,
factor DEC(12,2),
referencia VARCHAR(25)
END RECORD
DEFINE r_cmd t_sync_cmd
LET r_cmd.data = util.JSON.stringify(pproductos)
LET r_cmd.oper='materia_prima'
LET cmd = util.JSON.stringify(r_cmd)
CALL sync_send_command(url, cmd) RETURNING ret, res
IF ret == 0 THEN
CALL util.JSON.parse(res,pproductos)
ELSE
LET msg=SFMT(%"Connection '%1' failed",r_cmd.oper),"\n",url,"\n",res
CALL show_sync_err(msg)
END IF
BEGIN WORK
DELETE FROM productos
FOR i = 1 TO pproductos.getLength()
INSERT INTO productos (tipo_inventario,cod_n,cod_grupo,cod_tipo,cod_sec,codid,descrip_esp,unidad_med,factor_conv)
VALUES (xtipo_inventario,pproductos[i].cod_n,pproductos[i].cod_grupo,pproductos[i].cod_tipo,
pproductos[i].cod_sec,pproductos[i].codid,pproductos[i].descrip_esp,pproductos[i].unidad_med,
pproductos[i].factor)
END FOR
COMMIT WORK
LET msg=SFMT(%"Download Clases '%1' ",r_cmd.oper),"\n",pproductos.getLength()
END FUNCTION