3

たとえば、スクリプト タスクを使用せずに、SSIS の実行中に宛先フォルダーを動的に作成する方法はありますか。コード 123、133、143 があり、存在しない場合は下にフォルダーの場所を作成したい

D:\Outbox\ACI\123
D:\Outbox\ACI\133
D:\Outbox\ACI\143

D:\Outbox\ACI は静的ですが、SQL クエリ コンポーネントの実行の結果として 123、133、143 が外れました。

どなたかお願いします。

4

1 に答える 1

6

expressionフォルダ名の動的な値を取得するために記述する必要があります。以下のようなパッケージがあるとしましょう

ここに画像の説明を入力

最初のコンポーネントは、次のexecute SQL Taskようなテーブル値から ID を取得する です。123, 133, 143

ForEach componentこれらの値を列挙individual IDし、File System Task(フォルダの作成) に渡して、動的な名前でフォルダを作成します。

ステップ 1: SSIS で 3 つの変数を作成する

Name        DataType  Expression
ID           Int32
FolderPath   String   "D:\\Outbox\\ACI\\" + (DT_WSTR, 10) @[User::ID] 
FileID       Object  

変数 FolderPathEvaluateAsExpressionを True に設定

ステップ 2: テーブルから ID を取得するように SQL 実行タスクを構成する

ここに画像の説明を入力

ステップ 3: ID をFileID変数に格納する

ここに画像の説明を入力

ステップ 4:ForEachコンポーネントを構成する

ここに画像の説明を入力

ここに画像の説明を入力

手順 5: ファイル システム タスクを構成して、directory

ここに画像の説明を入力

于 2013-04-08T12:04:49.707 に答える