SSIS パッケージ内のある場所から別の場所にファイルをロボコピーする必要があります。フォルダーは別のドメインにあるため、robocopy.exe コマンドを実行する前に、別のアカウントを偽装する必要があります。「net use」コマンドを実行して必要なユーザー アカウントを偽装し、その後すぐに robocopy コマンドを実行できることがわかりました。プロセス実行コマンドでこれを直接実行する方法が見つからないため、プロセス実行タスクを使用して、これら 2 つのコマンドを別々の行として含むバッチ ファイルを実行します。このアプローチの欠点は、プロセスの実行コマンドの結果を読み取れないことです。したがって、これは私に3つの質問を導きます:
- 単一のプロセス実行タスクで複数行のコマンドを実行する方法はありますか?
- 1 行で別のアカウントになりすましている間に robocopy.exe を実行する方法はありますか?
- バッチ ファイルの結果を SSIS の変数または SSIS データベース ログに書き戻す方法はありますか?
上記の 3 つの質問のいずれかに肯定的な答えがあれば、robocopy コマンドの結果に基づいて、ジョブの成功または失敗のルールを追加する方法を考え出すことができるかもしれません。