<< Click to Display Table of Contents >> 演算式構文 |
演算式構文とは
演算式を表現するための構文です。バインド書式、アラームマスタの発生条件、メールマスタの送信条件など様々な場面で利用されます。
▪Panel Browserのバインド書式の「IN: / OUT: / INOUT:」以降の書式
例)
INOUT : U01.F01.T01 IN: U01.F01.T01 * 100 + 50 IN:CNumStr((#D0 + #D1) / 2, 2) IN: {$M0}{"ON"},{default}{"OFF"} |
▪アラームアクションのメール送信条件
例)
[CM0] == "重故障" [CM0] > 10 && [CM1] == 1 |
構文
演算子構文には値(T/F、123、"abc"など)、オペレータ(+ - + / & | など)、変数(U01.F01.T01、[CM0]など)及び関数(CNumStrなど)が使用できます。演算子構文の仕様は以下になります(本マニュアルでは抽象化のため、変数をVAR1、VAR2、VAR3、、と表現します)。
構文1
演算式
構文1は演算式のみを記述します。
例)
VAR1 * 100 VAR2 * VAR3 + 100 CNumStr((VAR1 + VAR2) / 2, 2) |
構文2
{条件式1}{条件値1},{条件式2}{条件値2 }, … ,{default}{デフォルト値}
構文2は条件式とその条件が成立したときの条件値を記述します。条件式を左から順番に評価し、条件が満たされたときの値(条件値)が結果値になります。もしどれにも当てはまらない場合は、右端のデフォルト値が結果値となります。
例)
{VAR1}{"ON"},{default}{"OFF"} {VAR1>=80}{"High"},{VAR2>20}{"Normal"},{default}{"Low"} {VAR1>=80}{"#FFFFFF"},{VAR3>20}{"#FF0000"},{default}{"#0000FF"} |
FA-Panelのバインド専用関数(「B.In」「B.BF」など)は、バインド以外から呼び出すことはできません。 |
変数
演算子構文は様々な場面で利用されますが、その際、演算式の中に変数を利用することができます。変数として何が指定できるかについては機能毎に異なります。Panel Browserのバインド書式の場合、タグパス(U01.F01.T01など)が変数として利用できます。
アラームアクションのメール送信条件の場合、フィールド名([CM0]、[CM1]など)を変数として利用できます。変数としてなにが使用できるかについては、各機能説明を参照して下さい。
禁則文字について
演算子構文で使用される変数に以下の文字を含めることはできません。
1)以下「オペレーター(演算子)」に定義されているオペレーター記号と同じ文字は使用してはならない。但し、以下のように変数の前後を「'」(シングルクオーテーション)で囲む事によって使用する事ができます。
例)
'U01.F01.TAG-01' //「-」記号が含まれる場合 'U01!Alive' //「!」記号が含まれる場合 'U01.F01.#SD0000+FIL=LIN:0|1|0|100' // アクティブタグのフィルタを使用した場合 |
2)空白文字。 例:「TAG 01」
3)「"」ダブルクオーテーション及び「'」シングルクオーテーション 例:「TAG"02"」
4)先頭の文字には数値は使用できない。 例:「123TAG」
5)先頭の文字にはアンダーバーは使用できない。
例:「_TAG01」
6)全角文字。 例:「U01.F01.ポンプ1」 ※すべての全角文字が使用できないわけではありませんが、文字コードにより使用できない場合があるため、全角文字はなるべく避けてください。
データ型
演算子構文で扱える値のタイプ(型)は以下の4種類です。
データ型 |
説明 |
ブール |
ブール値(T or F)です。“T”はOnの状態を表し、“F”はOffの状態を表します。 |
数値 |
数値です。小数点も扱えます。 |
文字 |
文字列です。 |
時刻 |
時刻(日時)です。 |
各値の仕様ついてはSC2構文のデータ型と同様です。
オペレーター(演算子)
演算子構文で扱えるオペレータは以下の通りです。
オペレーター |
|||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
算術演算子 |
|
||||||||||||||||||
比較演算子 |
|
||||||||||||||||||
論理演算子 |
|
||||||||||||||||||
ビット演算子 |
|
使用できる関数
演算子構文から関数(ルートメソッド)を呼び出すことができます。ルートメソッド一覧の「演算式構文」に「○」が指定されているメソッドがご利用頂けます。