Kenneth Fisher publicó una publicación de blog sobre cómo determinar ¿Qué versión de SQL es mi paquete SSIS? en abril de 2015.
Tiene una tabla de qué versiones de SQL se asignan a cuál PackageFormatVersion
del paquete SSIS encontrado en los metadatos XML. Esto es útil cuando se mira un solo paquete individual.
Tengo una carpeta de aproximadamente 100 .DTSX
paquetes SSIS que necesito saber de qué versión de SQL son todos.
¿Cómo puedo determinar, a granel, cuál PackageFormatVersion
es (es decir, la versión SQL) para múltiples .DTSX
paquetes en una carpeta (sistema de archivos)?
El objetivo final es determinar cuál es la versión TFS adecuada para obtener e implementar para colocar estos paquetes, ya que actualmente no existe un sistema de control de origen. La tabla que presenta Kenneth me ayudará a responder esta pregunta, pero primero necesito confirmar cuáles son las versiones SQL del paquete.
Suponga que NO tengo BIDS ni SSDT instalados.
Suponga que un resultado deseado sería algo como esto, donde la tubería designa una nueva columna:
PackageFilename | PackageFormatVersion
--------------------------------------
Package1.dtsx | 3
Package2.dtsx | 4
PowerShell, TSQL, herramientas de terceros que pueden rastrear una estructura de directorios u otras herramientas son bienvenidas.
fuente
Respuestas:
Recupere información de dtsx mediante programación
Puedes leer mi respuesta detallada en StackoverFlow:
Aplicación de demostración
Creé una aplicación de demostración para lograr este procedimiento, puede descargarla desde el siguiente enlace:
También creé un nuevo repositorio Git para esta aplicación de demostración
Captura de pantalla de la aplicación
Recupere dtsx PackageFormatVersion usando TSQL
Escribí una consulta SQL para obtener archivos de un directorio específico, filtrar en el archivo * .dtsx y luego leer la
PackageFormatVersion
propiedad de ellos.El resultado parece
Referencias
fuente