SSIS 2012 では、プロジェクト レベルの接続マネージャーの概念が導入されました。ユーザーがプロジェクト レベルのフラット ファイル接続マネージャーを作成し、それをローカル変数で構成できないという、MSDN フォーラムの参照された投稿で私が見たもの。それが問題だと仮定すると、私の答えは次のとおりです。
通常、SSIS プロジェクトは複数のパッケージです。生活を簡素化するために、SSIS チームはプロジェクト間で共通のリソースを共有できるようになりました。接続マネージャーはそのリソースの 1 つです。
論理的には、何かがプロジェクト全体で共有されている場合、1 つのファイルにしか存在しないものがそのリソースをどのように構成できるのでしょうか? その構成変更は、Package1 が実行されている場合にのみ機能します。Package2 が起動すると、同じ変数と同じ式が共有リソースに適用されない限り、異なる結果が発生します。これはメンテナンスの悪夢であり、強力な構成プラクティスがない場合は既に経験している可能性があります。
プロジェクト レベルでフラット ファイル接続マネージャーを作成すると、同じプロジェクト レベルの変数しか参照できません。ただし、プロジェクト レベルには変数はありません。代わりに、パラメーターと呼ばれます。
そのために、私はと呼ばれるパラメータを作成しましたSomeProjectParameter
次に、パッケージ Package1.dtsx を作成し、2 つのフラット ファイル接続マネージャー (FlatFileConnectionManagerLocal と FlatFileConnectionManagerProject) を追加しました。
そのパッケージの代わりに、SomeLocalVariable という変数も作成しました。
このスクリーンショットは、FlatFileConnectionManagerLocal の ConnectionString プロパティに式を適用する様子を示しています。SomeLocalVariable
パッケージ変数が利用可能であることがわかります。SomeProjectParameter
ここで、プロジェクトの接続マネージャーに式を適用しようとすると、プロジェクト パラメーターしか使用できなくなります。
SSIS パッケージのコンテキスト外では、プロジェクト レベルの接続マネージャーに式を適用できないことに注意してください。SSIS パッケージを開くまで、エディターを使用することはできません。ただし、適用すると、プロジェクト内のすべてのパッケージが同様に構成されます。
私が推測するIDEの癖。また、これらのスクリーンショットに色が欠けていても心配しないでください。私は SSDT の 2012 バージョンで実行しています。