30 de enero de 2014

EXECUTE para copiar archivos y otras funciones

Algunas sentencias del comando EXECUTE

NOTA: Para recargar varios qvw usado execute, ver ejemplo adjunto aqui

1. Mueve todos los archivos QVD de la carpeta anterior "Nuevos" a la carpeta "Cargados"
EXECUTE cmd /c Move "..\Nuevos\*.qvd" "..\Cargados\";

2. Borra todos los QVD ubicados en la carpeta anterior "Cargados"
EXECUTE cmd /c Del "..\Cargados\*.qvd"; 

3. Copia todos los QVD de la carpeta anterior "Cargados" a la carpeta "Historico"
EXECUTE cmd /c Copy "..\Cargados\*.qvd" "..\Historico\";

4. Renombra el archivo Enero.qvd por Enero_old.qvd
EXECUTE cmd /c Ren "..\Cargados\Enero.qvd" "Enero_old.qvd";

5. Abre y ejecuta el Script del qvw Historico.qvw. Al terminar la ejecución, guarda y cierra el qvw.
EXECUTE 
"C:\Program Files\QlikView\QV.exe"  
"..\ArchvosQVDs\Historico.qvw" /R;


6. Abre y ejecuta el Script en  Historico.qvw.   Al terminar la ejecución, deja abierto el qvw
EXECUTE 
"C:\Program Files\QlikView\QV.exe"  "..\ArchvosQVDs\Historico.qvw" /L;

7. Abre y ejecuta el Script en Historico.qvw. Luego asigna el valor 2014  a la variable ULTIMO_AÑO (variable existente en Historico.qvw). Al terminar la ejecución, guarda y cierra el qvw. NOTA: la v minuscula en vULTIMO_AÑO no es parte del nombre de la variable, sino un parametro. 
EXECUTE 
"C:\Program Files\QlikView\QV.exe"  /vULTIMO_AÑO=2014 "..\ArchvosQVDs\CreacionQVD_Historico.qvw" /R;

8. Abre el archivo DatosHistoricos.qvw sin datos cargados
EXECUTE
"C:\Program Files\QlikView\QV.exe" /NODATA "..\ArchvosQVDs\DatosHistorico.qvw";

9. Crea  la carpeta nueva ENERO
EXECUTE cmd /c mkdir C:\QVD\ENERO; 



NOTA: Para programar recargas diarias de varios qvw, ver ejemplo publicado aqui

Referencias:
1. http://www.naturalsynergies.com/q-tip-7-execute-a-command-using-execute/
2. http://qlikviewmaven.blogspot.com.ar/2008/08/qlikview-command-line-and-automation.html
3. http://www.youtube.com/watch?v=HaHjMPBGlxw#t=535

7 comentarios:

Gonzalo Izarduy dijo...

Excelente!
Aunque el parametro /R o /L van al final de la sentencia, por ejemplo:

EXECUTE
"C:\Program Files\QlikView\QV.exe" "..\ArchvosQVDs\CreacionQVD_Historico.qvw" /R;

Enmanuel Santana dijo...

hola Gonzalo, gracias por el aporte. La forma en que está publicado funciona, luego pruebo ambos métodos para ver diferencias. Si encuentro algo relevante, lo comparto


gracias

Enmanuel Santana dijo...

Gonzalo, tenias razón. Al intentar usar esto, funciona con el parámetro /R /L al final. Modifico la nota con este cambio.

Gracias!

Gonzalo Izarduy dijo...

;)

Gonzalo Izarduy dijo...

Muy interesante... Volver a Googlear por otro tema y encontrarme de nuevo con que la solucion está aqui

Martin dijo...

Emmanuel, buen dia!
como puedo hacer para que el EXECUTE CMD.EXE /C DEL "c:\temp\*.*"

me funcione recargando con a mano con el cliente Qlikview pero sin que la ventana de seguridad me aparezca?

al ejecutarlo me aparece una ventana "Alerta de Seguridad - Sentencia no Autorizada"

y luego botones: Parar la Ejecucion
Saltar Sentencia
Pasar por alto la Seguridad y Ejecutar la sentencia.


gracias!!!

Enmanuel Santana dijo...

hola Martin
Para evitar el mensaje, vas al Editor de Script y en las pestañas que está en la parte inferior vas a la pestaña Configuración y ahí habilitas la casilla de "Puede Ejecutar Programas Externos".