Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

recargas planificadas

Buenos días,

Estoy intentando programar las recargas de mi aplicación de forma que queden pendientes de un evento externo. Hasta ahi sin problemas.

El problema que me surge es al hacer estos scripts que lanzan por linea de comando la petición de recarga.

Mi idea inicial era ejecutar un qv.exe pero me lo han desaconsejado ya que abre la aplicación para recargar y luego la vuelve a cerrar.

Lo que me sugieren es que llame directamente a la tarea que he creado en el server. ¿Alguien sabe como se hace esto? ¿Lo habéis hecho alguna vez?

Gracias

Maria

1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Buenas,

finalmente he conseguido ejecutar recargas planificadas con un planificador, en mi caso uso el control-M.

Tal y como comentabais hay que instalar el EDX en el servidor, esta parte no me corresponde a mi asi que no se explicaros con detalle como hacerla pero los enlaces de Alex.Millan‌ y @Juan Vitantonio llevan informacion interesante sobre esto.

Para ejecutar las recargas lo primero es crear en el servidor una tarea que quede pendiente de un evento externo y tendremos que generar un fichero .bat que sea el que lea el planificador y que lo que haga sea ejecutar dicha tarea y devolver el mensaje de si ha sido correcta o no la ejecución.

El fichero .bat es un txt al que luego le cambio la extensión a .bat . Que contiene lo siguiente ( lo resaltado en rojo es lo que se debe modificar para cada tarea)

@echo off

:: ###########################################################

:: # SETEO DE VARIABLES Y DIRECTORIOS:

:: ###########################################################

:: Unidad de disco

SET UNIDAD=D

:: Directorio por Defecto

SET PATH=%UNIDAD%:\DocumentosFuente\

:: Directorio Ejecutable

SET PATH_EXE="%UNIDAD%:\Program Files (x86)\QlikView EDXTrigger\"

::Seteo directorio de archivo log

::La carpeta LOGS se debe crear en la misma Ruta donde se guarden los .bat

SET PATH_LOG=%PATH%\3.CM_PMO\6.Script\LOGS\

:: Nombre de Proceso, Nombre de la tarea planificada en el Server

SET PRCNAME="Tarea"

:: ###########################################################

:: # PROCESO

:: ###########################################################

echo -------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

echo %date% %time% - Inico proceso %PRCNAME%  >>%PATH_LOG%%PRCNAME%.txt

echo -------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

:: ###########################################################

:: # LLAMADO A QvEDXTrigger

:: ###########################################################

:: El ejecutable QMSEDX ejecuta la tarea indicada PRCRNAME recibiendo los parametros necesarios.

%PATH_EXE%QvEDXTrigger.exe -task=%PRCNAME%

set rdoerror=%ERRORLEVEL%

echo Resultado Ejecucion %PRCNAME%:  %rdoerror% >>%PATH_LOG%%PRCNAME%.txt

:: Comprobacion de errores de ejecucion.

IF NOT %rdoerror%==0 GOTO ERRORPRC %rdoerror% %dts%

  goto fin

:ERRORPRC

echo ---------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

echo %date% %time% - Fin con ERROR de ejecucion  >>%PATH_LOG%%PRCNAME%.txt

echo %date% %time% - Resultado= %1 >>%PATH_LOG%%PRCNAME%.txt

echo ---------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

::Retorno 1 en caso de error (este es el retorno que recibe Control-M en caso de error)

exit 1

:fin

echo ---------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

echo %date% %time% - Fin ejecucion %PRCNAME% >>%PATH_LOG%%PRCNAME%.txt

echo ---------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

::Retorno 0 en caso de exito (este es el retorno que recibe Control-M en caso de exito)

exit 0

Espero que os sirva de ayuda.

Un saludo,

Maria

View solution in original post

9 Replies
jvitantonio
Luminary Alumni
Luminary Alumni

Hola Maria,

Para ejectura una tarea creada en QMC basado en un evento externo, debes usar EDX.

Para más información, puedes leer este post que te detalla de qué se trata y cómo hacerlo:

Using EDX in QlikView 11 - basic example

Espreo te sea util.

Saludos

Juan

alex_millan
Creator III
Creator III

Hola María,

yo no lo he aplicado todavía nunca pero creo que es mediante EDX.

Te copio algunos links donde verás información al respecto:

Using EDX in QlikView 11

Using EDX in QlikView 11 - basic example

Qlikview 11 EDX

Espero que ten alguna pista

Joaquin_Lazaro
Partner - Specialist II
Partner - Specialist II

Hola compañeros:

Yo esto no lo he utilizado nunca.

Por favor María, cuando lo tengas resuelto comparte un resumen sencillito.

Saludos

Joaquín

Anonymous
Not applicable
Author

Muchas gracias por las aportaciones.

Voy a echar un vistazo y os comento.

Si Joaquín, cuando lo logre solucionar os comento y comparto lo que tenga.

Saludos,

Maria

ecolomer
Master II
Master II

No veo el problema en hacer un atarea programada que ejecute un .bat en el que se ejecute, actualice y cierre el qv actualizando los datos.

Lo he hecho en muchas instalaciones y no tiene ningún problema.

saludos,

Enrique Colomer

Anonymous
Not applicable
Author

Buenas,

finalmente he conseguido ejecutar recargas planificadas con un planificador, en mi caso uso el control-M.

Tal y como comentabais hay que instalar el EDX en el servidor, esta parte no me corresponde a mi asi que no se explicaros con detalle como hacerla pero los enlaces de Alex.Millan‌ y @Juan Vitantonio llevan informacion interesante sobre esto.

Para ejecutar las recargas lo primero es crear en el servidor una tarea que quede pendiente de un evento externo y tendremos que generar un fichero .bat que sea el que lea el planificador y que lo que haga sea ejecutar dicha tarea y devolver el mensaje de si ha sido correcta o no la ejecución.

El fichero .bat es un txt al que luego le cambio la extensión a .bat . Que contiene lo siguiente ( lo resaltado en rojo es lo que se debe modificar para cada tarea)

@echo off

:: ###########################################################

:: # SETEO DE VARIABLES Y DIRECTORIOS:

:: ###########################################################

:: Unidad de disco

SET UNIDAD=D

:: Directorio por Defecto

SET PATH=%UNIDAD%:\DocumentosFuente\

:: Directorio Ejecutable

SET PATH_EXE="%UNIDAD%:\Program Files (x86)\QlikView EDXTrigger\"

::Seteo directorio de archivo log

::La carpeta LOGS se debe crear en la misma Ruta donde se guarden los .bat

SET PATH_LOG=%PATH%\3.CM_PMO\6.Script\LOGS\

:: Nombre de Proceso, Nombre de la tarea planificada en el Server

SET PRCNAME="Tarea"

:: ###########################################################

:: # PROCESO

:: ###########################################################

echo -------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

echo %date% %time% - Inico proceso %PRCNAME%  >>%PATH_LOG%%PRCNAME%.txt

echo -------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

:: ###########################################################

:: # LLAMADO A QvEDXTrigger

:: ###########################################################

:: El ejecutable QMSEDX ejecuta la tarea indicada PRCRNAME recibiendo los parametros necesarios.

%PATH_EXE%QvEDXTrigger.exe -task=%PRCNAME%

set rdoerror=%ERRORLEVEL%

echo Resultado Ejecucion %PRCNAME%:  %rdoerror% >>%PATH_LOG%%PRCNAME%.txt

:: Comprobacion de errores de ejecucion.

IF NOT %rdoerror%==0 GOTO ERRORPRC %rdoerror% %dts%

  goto fin

:ERRORPRC

echo ---------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

echo %date% %time% - Fin con ERROR de ejecucion  >>%PATH_LOG%%PRCNAME%.txt

echo %date% %time% - Resultado= %1 >>%PATH_LOG%%PRCNAME%.txt

echo ---------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

::Retorno 1 en caso de error (este es el retorno que recibe Control-M en caso de error)

exit 1

:fin

echo ---------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

echo %date% %time% - Fin ejecucion %PRCNAME% >>%PATH_LOG%%PRCNAME%.txt

echo ---------------------------------------------------------------- >>%PATH_LOG%%PRCNAME%.txt

::Retorno 0 en caso de exito (este es el retorno que recibe Control-M en caso de exito)

exit 0

Espero que os sirva de ayuda.

Un saludo,

Maria

sorrakis01
Specialist
Specialist

Hola María,

Muchas Gracais por compartir.


Un saludo

Joaquin_Lazaro
Partner - Specialist II
Partner - Specialist II

Gracias María

jvitantonio
Luminary Alumni
Luminary Alumni

Excelente Maria. Gracias.