PI System ExplorerのAnalysis 式について

IF - THEN -ELSE の条件式にて、ELSEは必ず定義する必要があるのでしょうか?

ELSEの時には「何もしない」としたいです。

 

IF (EXPRESSION) THEN (X) ELSE (Y) でOutput AttributeにXかYが出力される。

Parents Reply Children
  • PI Pointに出力しない場合、代わりに出力属性の名前を指定することで、

    Elseの条件となった場合前回と同じ計算結果とすることができます。

     

     

    IF (EXPRESSION) THEN (X) ELSE 'Output Attribute'

     

    そもそもElse時に何も出力したくないということであれば、PI Pointに結果を出力するようにし、

     

    NoOutput()を使用したほうが良いと思います。

     

  • IF (EXPRESSION) THEN (X) ELSE 'Output Attribute'

    Elseの場合元々出力されていた値を再出力するイメージでしょうか?

    分析式を変更し計算を行ってみたのですが以下メッセージが出力されるようになりました。

     

     

    Output: 属性 'Output Attribute' に循環参照が検知されました。

  • 確認したところ、現在のバージョンでは上記の設定ではエラーとなるようです。

     

    PI Pointを出力しない場合は、以下のようにシステムデジタルステートの値を出力することは可能です。

     

    IF (EXPRESSION) THEN (X) ELSE DigState("No Data")

     

    Elseの条件になると、値の代わりに"No Data"のシステムデジタルステートの値が表示されます。