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

マニュアル > サーバ作成ガイド > イベント編 > イベントの応用 > # イベントを条件により切り替える |

概要

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

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

この機能のサンプルは、以下からご利用頂けます。

設定ファイル：　event_sample03.txt

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

システム構成

タグの設定

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

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

アクションの設定

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

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

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

イベントの設定

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

E01：

•タグ「U01.F01.T01」

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

•実行アクション「A01」

E02:

•周期を１秒に設定

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

E03:

•周期を１０秒に設定

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

解説

▪ビット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を反転します。