Com a alteração nas configurações do pacote em 2008 em comparação com 2005, quando especifico /ConfigFile something.dtsConfig na linha de comando, as variáveis definidas no pacote mantêm seus valores de tempo de design em vez de usar as configurações do arquivo de configuração.
Não tenho certeza se entendi COMO fazer com que o arquivo de configuração externo seja usado. Eu li artigos que dizem que apenas as configurações de tempo de design definidas substituirão o carregamento do arquivo externo. Isso significa que posso alterar as variáveis para strings em branco e elas serão substituídas? Não consigo excluir a variável completamente! E os inteiros?
Já vi artigos que mencionam desligar usando configurações de pacote no arquivo package.
Posso usar o SSIS Package Editor ou um editor XML para alterar o caminho do arquivo de configuração no pacote e, em seguida, ele usará as configurações "últimas" desse arquivo (independentemente da opção externa /ConfigFile), mas não quero ser alterando o pacote. Eu quero um pacote com Test.dtsConfig e Production.dtsConfig e ser capaz de trocar sem alterar o pacote.
Qual é a maneira recomendada de fazer isso agora?
Deve-se levar em consideração que ao rodar por BIDS o pacote irá pegar primeiro o valor da variável do arquivo de configuração, e somente se o arquivo de configuração não existir, lançará um warning e o valor será retirado do pacote.
Agora, a situação na linha de comando é um pouco diferente. Você pode ter as seguintes situações:
execute o pacote na linha cmd sem nenhum arquivo de configuração escolhido:
execute o pacote na linha cmd sem nenhum arquivo de configuração escolhido, mas com a variável definida na chamada:
execute o pacote na linha cmd com um novo arquivo de configuração (digamos DEV em vez de Prod):
execute o pacote na linha cmd com um novo arquivo de configuração e uma instrução SET na chamada:
Então, resumindo, se você quiser usar um novo arquivo de configuração, você terá que renomear/mover o antigo e chamar o pacote com /configFile. Se isso não for suficiente e quiser substituir até mesmo um novo arquivo de configuração, use a variável /SET. Ou você pode ignorar qualquer arquivo de configuração e apenas usar as instruções /SET na chamada em lote.
Espero que isso lance alguma luz em suas possibilidades.