Cerrar ventana activa y salir de vfoxpro

Hola, fíjate que pretendo hacer un reporte (.prg) de algunas tablas de un sistema administrativo y lo quiero ejecutar en forma automática, funciona bien solo que cuando genera el reporte a través de un query quiero que lo mande a excel, pero se queda esperando un click para cerrar la ventana entonces procede a generarlo y después se cierra, lo que quiero es que no depende de alguien que cierre la ventana para continuar con el siguiente paso, este es el prog.:
SET EXCLUSIVE OFF
SET DELETED ON
USE "\\empresa\mgw10002.dbf" SHARED
select 1
USE "\\empresa\mgw10008.dbf" SHARED
select 2
USE "\\empresa\mgw10010.dbf" SHARED
select 3
USE "\\empresa\mgw10036.dbf" SHARED
select 4
USE "\\empresa\mgw10032.dbf" SHARED
select 5
USE "\\empresa\mgw10005.dbf" shared
select 6
SET default to "\\empresa"
DELETE FILE c:\documentos\jaime6.xls
SELECT Mgw10002.ccodigoc01, Mgw10002.crazonso01, Mgw10008.cseriedo01,;
Mgw10008.cfolio, Mgw10008.cfecha, Mgw10005.ccodigop01,;
Mgw10005.cnombrep01, Mgw10032.cnumeros01;
FROM mgw10002 INNER JOIN mgw10008;
INNER JOIN mgw10010;
INNER JOIN mgw10036;
INNER JOIN mgw10032;
INNER JOIN mgw10005 ;
ON Mgw10032.cidprodu01 = Mgw10005.cidprodu01 ;
ON Mgw10036.cidserie = Mgw10032.cidserie ;
ON Mgw10010.cidmovim01 = Mgw10036.cidmovim01 ;
ON Mgw10008.ciddocum01 = Mgw10010.ciddocum01 ;
ON Mgw10002.cidclien01 = Mgw10008.cidclien01;
WHERE Mgw10032.cestado = 8;
AND Mgw10008.ciddocum02 = 3
COPY TO c:\documentos\jaime6.xls TYPE XL5
CLOSE all

1 Respuesta

Respuesta
1
Agrega la clausula INTO CURSOR al final de la instrucción SQL, el código quedaría así:
SET EXCLUSIVE OFF
SET DELETED ON
USE "\\empresa\mgw10002.dbf" SHARED IN 0
USE "\\empresa\mgw10008.dbf" SHARED IN 0
USE "\\empresa\mgw10010.dbf" SHARED IN 0
USE "\\empresa\mgw10036.dbf" SHARED IN 0
USE "\\empresa\mgw10032.dbf" SHARED IN 0
USE "\\empresa\mgw10005.dbf" SHARED IN 0
SET DEFAULT TO \\empresa
DELETE FILE C:\documentos\jaime6.xls
SELECT Mgw10002.ccodigoc01, Mgw10002.crazonso01, Mgw10008.cseriedo01,;
Mgw10008.cfolio, Mgw10008.cfecha, Mgw10005.ccodigop01,;
Mgw10005.cnombrep01, Mgw10032.cnumeros01;
FROM mgw10002 INNER JOIN mgw10008;
INNER JOIN mgw10010;
INNER JOIN mgw10036;
INNER JOIN mgw10032;
INNER JOIN mgw10005 ;
ON Mgw10032.cidprodu01 = Mgw10005.cidprodu01 ;
ON Mgw10036.cidserie = Mgw10032.cidserie ;
ON Mgw10010.cidmovim01 = Mgw10036.cidmovim01 ;
ON Mgw10008.ciddocum01 = Mgw10010.ciddocum01 ;
ON Mgw10002.cidclien01 = Mgw10008.cidclien01;
WHERE Mgw10032.cestado = 8;
AND Mgw10008.ciddocum02 = 3;
INTO CURSOR __Temporal
COPY TO c:\documentos\jaime6.xls TYPE XL5
CLOSE ALL
... bueno, eso digo yo.
Víctor.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas