質問
Mapperの繰り返し処理で、2回目以降の繰り返しでもスクリプト変数に1件目のデータが使われ続けてしまいます。原因と対処法を教えてください。
回答
Mapperの仕様制限により、スクリプト変数への代入は出力先コンポーネントへの書き込みよりも先に一度だけ行われます。
入力スキーマに繰り返しロジックを使用している場合でも、スクリプト変数に代入されるのは最初の行のみとなります。
そのため、繰り返し処理の2回目以降も1件目の値が使われ続けます。
対処法として、以下の方法が挙げられます。
1. 1つのMapper内で「条件による抽出」と「スクリプト変数への代入」を行うのではなく、一度一致したデータを出力し、次のMapperで変数へ代入する
2. ファイル名一覧取得の結果をそのままforeachする構成にする
補足
参考情報
- Mapper
コメント
0件のコメント
記事コメントは受け付けていません。