SSIS Integration Services Cambiar DelayValidation en toda la solución

Con la propiedad DelayValidation se puede detener el proceso de pre-validación de los componentes de un paquete (package). Por default esta propiedad viene con valor "False", lo cual indica a Integration Services que ejecute la pre-validación de tareas, contenedores, conexiones, paquetes, etc.

Dejar el valor por default, en "False", puede significar errores a la hora de ejecutar el paquete sobre todo si se crean dinámicamente tablas, archivos, etc o si se implementan expresiones para pasar valores por expresiones a conexiones o incluso por parámetros de configuración del paquete.




Una buena práctica es, después de realizar las pruebas necesarias, establecer el valor de esta propiedad en todos los componentes en "True". Cambiar el valor de la propiedad en todos los componentes puede ser una tarea que conlleve mucho tiempo. Para hacer este ajuste de forma más sencilla se puede acceder al código de un paquete dando click derecho sobre un paquete y seleccionar "View Code".








Se presentará la pantalla de código del paquete, el cual es código XML. Dentro de la pantalla de código buscamos la palabra "DelayValidation" desde el buscador (ctrl + F). Localizamos la siguiente linea de código : 

<DTS:Property DTS:Name="DelayValidation">0</DTS:Property>




Copiamos esa linea de código y damos CTRL+H (Buscar y reemplazar). Ya en la ventana de buscar y reemplazar nos aseguramos de que en el campo "Replace With" pongamos la misma linea que vamos a buscar pero cambiando el valor 0 por 1. Seleccionamos la opción "Entire Solution" en la campo "Look in" para hacer el reemplazo en todos los packages existentes en la solución. Guardar y cerrar la ventana de código del package. Validar que la propiedad DelayValidation en todos los elementos de los packages de toda la solución se han cambiado a True.


Este procedimiento se puede realizar con cualquier otra propiedad que se desee cambiar en toda la solución, pero debe hacerse con cuidado y sobre todo tener la precaución de  contar con un respaldo de la solución antes de realizar cualquier cambio por código XML. Esto fue realizado con SQL Server 2008 R2.

Comentarios