質問
Salesforceレコード挿入処理にて発生したエラーの情報を取得したいです。
データ起因の場合、発生レコードが何件目のデータであるかやエラーメッセージ、システム起因の場合にはエラーメッセージが取得したいです。
回答
データ起因の場合には、出力スキーマより出力データを取得し、コンポーネントエラーのようなシステム起因の場合には、コンポーネント変数よりエラー情報を取得する必要があります。
Salesforceコネクターの[レコード挿入処理]は、1回のオペレーションで複数のレコードを書き込みする処理を想定しています。そのため、特定のレコードの書き込み処理エラーが発生してもコンポーネントとしてエラーとはならず、レコード毎の処理結果を出力データやコンポーネント変数に出力する仕様となっています。
Salesforceコネクターの[レコード挿入処理]の出力スキーマおよびコンポーネント変数については、以下マニュアルサイトを参照してください。
以下にそれぞれの出力方法の例を紹介します。
■出力スキーマより書き込み結果などを実行ログに出力する
以下手順より[レコード挿入処理]の出力データのデータログを実行ログに出力することが可能です。
- ツールパレットより[基本] > [処理] > [データログ出力(テーブルモデル型)]を配置し、[レコード挿入処理]の後続のプロセスフローに接続する
- [データログ出力(テーブルモデル型)]の入力データに[レコード挿入処理]を指定し、ログレベルをDEBUGに指定する
- スクリプトをログレベルDEBUGでデバッグ実行する事で、[レコード挿入処理]の出力データを確認する
■コンポーネント変数よりコンポーネントのエラー情報を実行ログに出力する
以下手順より[レコード挿入処理]のコンポーネント変数をログに出力することが可能です。
- 該当のスクリプトで以下のコンポーネント変数に対応するスクリプト変数を作成する
※実際には必要分のみを作成してください。
・count
・error_count
・message_category
・message_code
・message_level
・error_type
・error_message
・error_trace
- ツールパレットより[基本] > [処理] > [変数代入]を配置し、[レコード挿入処理]の後続のプロセスフローに接続する
- 変数代Mapperで、[レコード挿入処理]の各コンポーネント変数を作成したスクリプト変数に代入する
- スクリプトをログレベルDEBUGでデバッグ実行する事で、[レコード挿入処理]のコンポーネント変数を確認する
コメント
0件のコメント
記事コメントは受け付けていません。