トップカテゴリー
>
テクニカルFAQ-一般公開向け-
>
DataSpider関連
>
DataSpider Servista
>
【DataSpider Servista】Mapperの[足し算]ロジックでスクリプト変数と出力先コンポーネントへ同時に出力を行うと、出力される値が足し算2回分の値になる
戻る
No : 32725
公開日時 : 2021/02/16 15:52
更新日時 : 2021/02/17 12:10
印刷
【DataSpider Servista】Mapperの[足し算]ロジックでスクリプト変数と出力先コンポーネントへ同時に出力を行うと、出力される値が足し算2回分の値になる
Mapper の [足し算] ロジックで、数値型のスクリプト変数に値を加算した後、出力先コンポーネントのスキーマへのマッピングとスクリプト変数への代入を同時に行うと、出力先のコンポーネントにて出力される値が足し算を2回行った値となります。
原因と対処方法を教えてください。
カテゴリー :
トップカテゴリー
>
テクニカルFAQ-一般公開向け-
>
DataSpider関連
>
DataSpider Servista
回答
■仕様説明
出力先のコンポーネントへの出力とスクリプト変数への代入を同時に行った際に、出力先の値が足し算を2回行った値になる動作は、ドキュメント Mapper と変数 Mapperの以下の仕様によるものです。
------
スクリプト変数への代入は、出力先コンポーネントへの書き込みよりも先に一度だけ行われます。
------
例として、初期値 「0」 の数値型のスクリプト変数 「var」 に [足し算] ロジックで 2 を加算した後、出力先のコンポーネントとスクリプト変数に同時に値を代入する場合は、以下のような動作となります。
スクリプト変数 「var」 に [足し算] ロジックで 2 が加算され、同じ変数 「var」 に代入される。
値が 2 となった 「var」 に [足し算] ロジックで 2 が加算され、出力先のコンポーネントには4 が出力される。
■対応策
スクリプト変数にロジックで変換した値を再度代入する場合は、出力先のコンポーネントへの出力とはそれぞれ別の Mapper にて行ってください。
参考情報
[ドキュメントMapper/変数Mapper] - [仕様制限]
URL:
https://www.hulft.com/help/ja-jp/DataSpider/latest/help/ja/mapper/mapper_basic.html
目的別で検索
仕様確認