Comprimir con Winrar en SSIS

Estos días he estado liado con una tarea de Integration Services (SSIS) que entre otras cosas, en uno de sus flujos necesitaba comprimir unaarchivo antes de enviarlo via mail (por eso de que pese menos Guiño).

De entre todas las opciones disponibles al final me quedé con esta por práctica y por tiempo, pero hay algunas más, como crearte tu propio componente que lo haga o hacerlo con script.

Para realizar dicha tarea necesité el componente Execute Process Task Editor que trae BIDS para los proyectos de SSIS.

Para configurarlo tendremos que rellenar las siguientes propiedades:

Pestaña General. Aquí un nombre y una descripción de lo que hacemos será suficiente (es opcional)

Pestaña Process. De esta ventana me quedo con tres propiedades principales:

  • Executable. Ruta del archivo que vamos a utilizar para comprimir.
  • Arguments. Aquí le indicaremos los argumentos que necesitamos para que se ejecute la herramienta a utilizar (en este caso Winrar) correctamente.
  • WindowsStyle. De esta propiedad use hidden para ocultar la ventana ms-dos que genera la aplicación mientras se comprime el archivo.

La pestaña expressions no me hizo falta para este ejemplo.

Sobre winrar, decir que la ruta para la propiedad Executable suele estar en Program FilesWinrarRar.exe (unrar.exe descomprime). En Arguments escribimos lo siguiente:

a –ep m5 “rutaDestinoarchivo.zip” “RutaDondeEstanTusArchivos”

El comando a nos indica que vamos a comprimir, el –ep nos crea el archivo sin carpetas ni rutas y m5 es el nivel de compresión que va desde 0 (el más bajo) hasta 5 (el más alto).

Comprimir

Hacerlo de esta manero tiene sus pro y sus contras. Por una lado tenemos una forma de comprimir fácil y rápida, además, no solo funciona con winrar sino con más aplicaciones de compresión. Pero por otro lado, debes de tener instalado en el servidor una herramienta de compresión.

Ya es cuestión de las necesidades que tengáis si hacerlo así o de alguna de las otras formas

Espero que os sea de interes.

Un Saludo

Sin categoría

One thought on “Comprimir con Winrar en SSIS

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *