IMPORT os MAIN CALL actfoto() END MAIN FUNCTION actfoto() DEFINE codn,codgrupo,codtipo,codsec,xcodid,xid_categoria,xid_familia,xid_brand INT, xunidad VARCHAR(10),xtraduccion,xdescripcion1,xdescripcion VARCHAR(255), xpropiedad1,xpropiedad2 STRING, xprecio FLOAT, ximagen BYTE, xnombre_file, xmetadata VARCHAR(100),rutafile,fileread,filename,xtipodata,ficha_t,ruta_ficha STRING CONNECT TO "smarmotech" USER 'jsoto' USING 'lmmjvsd2014' DECLARE buscar CURSOR FOR SELECT DISTINCT a.codid,b.cod_n,b.cod_grupo,b.cod_tipo,b.cod_sec, a.descrip_esp,b.descripcion_esp,a.unidad_med,b.descripcion_us,b.propiedades_esp, b.propiedades_us,b.meta_data, ISNULL(c.precio,0), b.id_categoria,b.id_familia,b.id_brand, d.nombre_file_foto ,d.tipo_data,b.nombre_file_ficha FROM iptb00002 a INNER join tmpproductostienda b on a.cod_n = b.cod_n and a.cod_grupo = b.cod_grupo AND a.cod_tipo = b.cod_tipo AND a.cod_sec = b.cod_sec left OUTER JOIN tmpfotos d ON a.cod_n = d.cod_n AND a.cod_grupo = d.cod_grupo AND a.cod_tipo = d.cod_tipo AND a.cod_Sec = d.cod_sec AND d.tipo_data = 'PRINCIPAL' left outer join vetb00025 c on c.ventas = 3 AND a.cod_n = c.cod_n AND a.cod_grupo = c.cod_grupo AND a.cod_tipo = c.cod_tipo AND a.cod_Sec = c.cod_sec WHERE a.status_t IS NULL AND b.tipo_data = 'PRINCIPAL' # LET rutafile = 'C:\\Users\\jsoto\\Documents\\PROYECTOS\\BDL320\\WEBSERVICES\\bin\\img\\' LET rutafile = 'e:\\IMAGENESTIENDA\\' LOCATE ximagen IN MEMORY # DELETE FROM iptb00016 # DELETE FROM iptb00018 FOREACH buscar INTO xcodid,codn,codgrupo,codtipo,codsec, xdescripcion1,xdescripcion,xunidad,xtraduccion, xpropiedad1,xpropiedad2,xmetadata,xprecio, xid_categoria,xid_familia,xid_brand,xnombre_file,xtipodata,ficha_t IF xnombre_file IS NOT NULL THEN LET filename = xnombre_file CLIPPED LET fileread = rutafile CLIPPED,filename CLIPPED LET ruta_ficha = rutafile CLIPPED,ficha_t { IF os.Path.exists(fileread) THEN DISPLAY "NOMBRE FILE ",fileread CALL comprimeImagen(fileread,' -resize 500x500 ') DISPLAY "encontre el file ",xcodid,xdescripcion," ",xtraduccion, " ",xnombre_file ELSE DISPLAY "NO ENCONTRE al file ",fileread END IF} END IF SELECT DISTINCT a.codid FROM iptb00016 a WHERE a.codid = xcodid IF STATUS = NOTFOUND THEN DISPLAY " A ACTUALIZAR EL CODID ",xcodid,xdescripcion," ",xtraduccion, " ",fileread INSERT INTO iptb00016 (codid ,cod_n ,cod_grupo ,cod_tipo ,cod_sec ,descripcion ,precio ,nombre_file_ficha ,fech_crea ,us_crea ,nombre_file_foto ,ruta_foto ,precio_usd ,descripcion_user ,id_categoria ,id_familia ,id_brand ,descripcion_us ,propiedades ,propiedades1 ,metadata ,unidad_med ,ruta_file_ficha ) VALUES (xcodid ,codn ,codgrupo ,codtipo ,codsec ,xdescripcion1 ,xprecio ,ficha_t ,getdate() ,'JSOTO' ,xnombre_file ,fileread ,xprecio ,xdescripcion ,xid_categoria ,xid_familia ,xid_brand ,xtraduccion ,xpropiedad1 ,xpropiedad2 ,xmetadata ,xunidad ,ruta_ficha ) ELSE DISPLAY " UPDATE EL CODID ",xcodid,xdescripcion," ",xtraduccion, " ",fileread UPDATE iptb00016 SET nombre_file_ficha = ficha_t,ruta_file_ficha=ruta_ficha WHERE codid = xcodid END IF IF xnombre_file IS NOT NULL AND xtipodata = 'GALERIA' THEN DISPLAY " A ACTUALIZAR EL CODID ",xcodid,xdescripcion," ",xtraduccion, " ",fileread SELECT DISTINCT a.codid FROM iptb00018 a WHERE a.codid = xcodid IF STATUS = NOTFOUND THEN INSERT INTO iptb00018 (codid,cod_n,cod_grupo,cod_tipo,cod_sec,nombre_file,ruta_file_foto) VALUES (xcodid,codn,codgrupo,codtipo,codsec,xnombre_file,fileread ) END IF END IF END FOREACH END FUNCTION FUNCTION comprimeImagen(filedestino,tamano) DEFINE filedestino, comando,tamano STRING LET comando = 'magick convert ',filedestino,tamano,filedestino RUN comando END FUNCTION