イベントを条件により切り替える

<< Click to Display Table of Contents >>

マニュアル > サーバ作成ガイド > イベント編 > イベントの応用 >

イベントを条件により切り替える

概要

ここでは、イベントそのものを条件に応じて切り替えたい場合の設定方法について解説します。

 

例として、2つの定周期イベント(1秒周期、10秒周期)を用意し、「U01.F01.T01」のON・OFFによりそれぞれのイベントを有効・無効に切り替えを行います。

 

「U01.F01.T01」がONの間、イベント「E02」を有効にし、OFFの間、イベント「E03」を有効にします。

 

c_event_0065

 

 

サンプルのダウンロード

このページで紹介されている作成例には、サンプルが用意されています。

 

サンプルは以下からダウンロードすることができます。

 

設定ファイル: event_sample03.txt

 

 

設定内容

 

タグの設定

 

イベントを有効・無効にするトリガとなるビットタグを設定します。

ここでは、「U01.F01.T01」を設定します。

 

c_event_0066

 

 


 

アクションの設定

 

スクリプトアクション「A01」を追加し、スクリプトを以下のように設定する。
c_event_0058

 

//Event/E02!Enable = U01.F01.T01

//Event/E03!Enable = Not U01.F01.T01

 

つまり、「U01.F01.T01」がTRUE時E02を有効にし、FALSEの時E03を有効にします。

 

 


 

イベントの設定

 

タグイベント「E01」及び定周期イベント「E02」「E03」を追加します。

c_event_0067

E01:

タグ「U01.F01.T01」

比較条件「タグ値が変化した」

実行アクション「A01」

 

E02:

周期を1秒に設定

初期状態を無効にするために「無効にする」をチェック

 

E03:

周期を10秒に設定

初期状態を無効にするため、「無効にする」をチェック

 

 

解説

 

c_event_0068

 

 

ビットON時

1.U01.F01.T01がTRUEになるとタグイベント「E01」が発生し、スクリプトVer1アクション「A01」が実行される

2.「A01」では「//Event/E02!Enable = U01.F01.T01」の式が実行され、イベント「E02」が有効になる

3.同時に「//Event/E03!Enable = Not U01.F01.T01」の式が実行され、イベント「E03」が無効になる

 

ビットOFF時

1.U01.F01.T01がFALSEになるとタグイベント「E01」が発生し、スクリプトVer1アクション「A01」が実行される

2.「A01」では「//Event/E02!Enable = U01.F01.T01」の式が実行され、イベント「E02」が無効になる

3.同時に「//Event/E03!Enable = Not U01.F01.T01」の式が実行され、イベント「E03」が有効になる

 

※スクリプト中の「Not」とは、TRUE/FALSEを反転します。