これは、各ステップに写真を入れずに行うのは非常に困難です。写真は載せられないようなので、出来るだけ詳しく書いてみます。
まず、ストアド プロシージャを実行するデータベースへの接続を設定する必要があります。これは、「新しい OLE DB 接続」用の接続マネージャーを作成することを意味します。この接続を作成するには、データベース情報への有効なログインが必要です。
コントロール領域では、「SQL 実行タスク」を設定します。結果セットを完全な結果セットに設定し、接続を前の手順で名前を付けたものに設定します。SQL タスクからストアド プロシージャを呼び出すには、「exec ? = dbo.usp_check_load_table_all @JobCode = ?, @TransId = ? , @Status = ?, @TurnStatusOff = ?」のようなものを使用します。最初 ?ストアド プロシージャからのリターン コードです。その他は、ストアド プロシージャを実行するためのパラメーターです。現在、10 個の異なるストアド プロシージャを実行しています。私は 1 つの実行方法しか知りませんが、10 個のパッケージを作成して、それぞれを実行し、完了時にファイルを連結することができます。パラメータ マッピングでは、実行する変数の値を設定します。戻りコードの USER::ReturnValue 型 long を必ず作成してください。結果セットには、オブジェクト タイプの USER::Results エントリが 1 つ必要です。
ここで、変数として USER::Results を入れる ADO 列挙子の foreach ループを入れます。これにより、各行を 1 つずつ読み取ることができます。変数マッピングが入るユーザー変数を作成する必要があります。
次に、データ フロー タスクを実行し、派生列タスクを配置して、foreach ループ用に作成した USER:: フィールドからファイルに書き込む各フィールドを設定します。
接続マネージャーでフラット ファイル接続をタブ区切りの区切りファイルとして作成します。ファイル内の各フィールドをマップする必要があるため、希望する出力のようなファイルが必要になります。
フラット ファイルの宛先を deriried 列タスクの下に追加し、作成したばかりのフラット ファイルにマップします。次に、各フィールドを出力にマップします。
私はかつて新しい SSIS だったので、これが役立つことを願っています。