入力行をエラー ストリームに追い出すワークフローを使用しています。AAA_Source からのエラー出力に、File Source ノード (AAA_Source と呼びましょう) と Flat File Destination (AAA_ErrorDest と呼びましょう) を持つ DataFlow タスクがあります。
私が見ているのは、AAA_ErrorDest ファイルが作成されていますが、常にゼロ バイトが含まれているということです。また、インポート操作中に最終更新日が変更されていることもわかりますが、ファイル サイズは変更されません。
私はファイル許可のアプローチを追求しましたが、すべての関係者がファイルへの書き込みアクセス権を持っています。BIDS 内から実行するか、コマンド ラインから DTEXEC を実行するかは問題ではありません。(ちなみに、SQL Server 2012 を使用しています。)
エラー出力が 3 つの列 (入力ファイルの行、エラー コード、エラー列の序数) であることに気付きました。また、エラー出力ファイルの接続マネージャーには 3 つの列すべてがマップされていましたが、テキスト列の長さは 50 でした (短すぎます)。ただし、その長さを 300 (短すぎない) に変更しても効果はありませんでした。エラー ファイルには何も書き込まれませんでした (ただし、最終変更のタイムスタンプは変更されました)。
では、エラー ファイルにテキストが出力されない理由を特定するにはどうすればよいでしょうか。