2009-08-20 5 views
0

Je crée un paquet dtsx que je cours dans un fichier bat. Au moment du design, j'ai créé une configuration de paquet qui pointe vers un emplacement spécifique. Lorsque j'exécute le package au moment de l'exécution, cependant, je configure ConfigFile à une configuration de package dans un emplacement différent. Il semble toutefois que le package est toujours en cours d'exécution du jeu de configuration au moment du design. Est-ce que quelqu'un sait pourquoi cela pourrait arriver? Des idées sur la façon dont je peux faire fonctionner le paquet avec cette configuration différente? Ce qui suit est ce que je cours dans mon fichier bat.Comment affecter un fichier de configuration différent pendant l'exécution du package SSIS?

dtexec.exe /f "mypackage.dtsx" /ConfigFile "[some_path]/newconfig.dtsConfig" 

Répondre

0

Si vous utilisez SQL Server 2008, puis l'ordre dans lequel les configurations de paquet sont appliquées est la suivante:

  1. configurations Design-temps
  2. configurations d'exécution (par exemple celles qui sont spécifiées par le paramètre/ConfigFile
  3. configurations design-temps à nouveau

par conséquent, une Les variables ny définies dans la configuration au moment de la conception ne peuvent pas être modifiées à l'aide du paramètre/ConfigFile.

La solution officielle consiste à modifier le chemin d'accès à la configuration au moment de la conception en utilisant le paramètre/Set.

Des explications plus détaillées se trouvent ici: http://msdn.microsoft.com/en-us/library/bb500430.aspx

+0

Pouvez-vous donner un exemple d'utilisation de/Set pour modifier le chemin d'accès à la configuration au moment du design? – mutex

0

Je suggère d'avoir différents ensembles de fichiers .dtsconfig par environnement (DEV, AQ, PRD) et de les enregistrer en tant que variables d'environnement sur les machines en utilisant la commande par lots setx à Définissez le nom de la variable et le chemin du fichier. En utilisant les mêmes noms de variables d'environnement sur tous les environnements, vous réduirez le besoin de spécifier le fichier .dtsconfig lors de l'exécution.

Questions connexes