■仕様説明
Mapper では、スクリプト変数に対する値の代入を、内部で決めた順番で実行しています。
このため、「スクリプト変数1」、「スクリプト変数2」があり、「スクリプト変数1」から取得した値をロジックで変換して、「スクリプト変数1」と「スクリプト変数2」の両方に代入するように設定している場合、以下のような順番で処理が実行されます。
- 「スクリプト変数1」から取得した値をロジックで変換して、「スクリプト変数1」に代入
- 「スクリプト変数1」から取得した値(※1. で変換済)をロジックで変換して、「スクリプト変数2」に代入
このため、「スクリプト変数2」には、二回変換処理が実行された値が代入されます。
■対応策
スクリプト変数から取得した値をロジックで変換した後で、元のスクリプト変数と別のスクリプト変数に代入したい場合には、元のスクリプト変数への代入と、別のスクリプト変数への代入を異なる Mapper で実行するように設定してください。
例にある「・数値の場合」の場合、スクリプト変数1の値 に 1 を足す処理と、その結果をスクリプト変数2 に代入する処理を、別々の Mapper で実行するように設定してください。