バグ:コモン設定数式中のIFの挙動がおかしい

Issue #922 resolved
Panda Gruel created an issue

コモン設定コンテントで以下のような式を記述してシナリオ中で実行した場合、論理的には正しいはずなのにエラー表示が出てしまいます。

どうも、IF(条件,TRUE,FALSE)の結果がT/Fどちらであっても両方の内容に関してエラーチェックが行われているようです。

(コモン変数"a”の値文字列が1文字の場合)

IF(LEN(@"a")>=2,LEFT(@"a",-2),LEFT(@"a",-1))

Comments (5)

  1. k4nagatsuki repo owner

    ご報告ありがとうございます。

    これは一応仕様という事になりそうなのですが、そもそも仕様を検討している時に考慮していない部分なので微妙なところです。検討漏れから来た仕様バグと考えた方がいいかもしれません。

    解決するには引数を遅延評価(実際に使われる時まで式を実行しない)すればよいはずです。

    式の性質上、その変更によって動かなくなるシナリオは存在しないと思われるので、直してしまった方がよさそうです。

  2. Log in to comment