Programando tareas sobre el DB2. Llamando a las Procedures

En esta ocasión vamos a dar otro pasito más haciendo más automática la gestión de datos en DB2 con geinfor ERP.

Viendo el potencial que nos abre las Procedures (Store Procedures es el nombre completo y abreviaré a SP a partir de ahora), se puede empezar a programar a nivel base de datos que realice cambios, revisiones, y todo un sin fin de tareas de formas muy sencilla (y como no con el peligro que ello supone al saltarnos la capa de la aplicación)

Pero de nada nos sirve si no lo podemos ejecutar de manera programada cuando nos interesa realmente… Hoy explicaré como programar la ejecución de las SP sin nada más que el programador de tareas de windows

Antes de nada, recordad que….

NINGUNA DE LAS ACCIONES QUE VOY A EXPLICAR TIENE SOPORTE POR PARTE DE GEINFOR. MUCHO OJO Y BAJO VUESTRA RESPONSABILIDAD

Por no repetir el código de la SP con la que vamos a trabajar, aquí tenéis el link de como crearla

1) Script de DB2

Lo primero es generar un fichero que lo guardaremos como .sql con todos los comandos que debe ejectuar el motor del DB2.

--fake;
connect to ingenred user "usuario" using "contraseña";
call sp_sis_ajustesbbdd;

Se compone de:

  • Una linea «–fake»; ya que he comprobado que cuando lanzamos el comando con un .bat nuestro maravilloso windows mete unos caracteres «raros» que hace que de error la primera linea de ejecución. (lo sé, es una chapuza pero lo daremos como válido por el momento, en el día a día prefiero utilizar el SQL SERVER INTEGRATION SERVICES)
  • La cadena de conexión a la base de datos con la que vamos a trabajar
  • La SP que queremos ejecutar. (o varías si fuese necesario)

Por motivo de no publicar documentación interna de Geinfor ERP, no voy a escribir el usuario y contraseña. Si buscáis en la documentación de geinfor (en la instalación del DB2) podréis ver el usuario y contraseña que utilizasteis en vuestra instalación y debéis sustituirlo por el vuestro.

También se puede obviar el usuario y contraseña si el script lo ejecuta el administrador del DB2

2) Programador de tareas

La podemos programar en cualquier equipo con acceso al servidor, pero por facilitar el control de la ejecución y evitar problemas de conexión de red, es recomendable programarlo en el mismo servidor de la base de datos

Panel de control →Herramientas administrativas → Programador de tareas

automatizar01

programa o script: db2cmd

Agregar argumontes (opcional) -c -w -i db2 -tvf "rutadelscript" -l "rutadelficherodesalida"

La salida del fichero con el parametro -l nos mostrará todo los mensajes que ha ido devolviendo el db2 y nos sirve de log para comprobar si ha habido alguna inciencia.

Conclusión

Con esto tenemos funcionando nuestro primer automatismo del que ya nos despreocupamos y sabemos que siempre tendremos la información actualizada. Es importante que seamos «vagos». Dedicar más tiempo a hacer un trabajo la primera vez y no volver a dedicarle tiempo.

Espero vuestras aportaciones, dudas y sugerencias y recordad…

… y si algo sale mal… La Culpa de Sistemas 😉

Un comentario en “Programando tareas sobre el DB2. Llamando a las Procedures

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.