# GetVal

マニュアル > コントロールリファレンス > 全コントロール共通 > 共通メソッド > # GetVal |

| タグの値をキャッシュから取得する（推奨・高速)。配列による一括読み込みも可能。 構文 GetVal( TagName ) パラメータ
TagName
| 型： | 文字
| タグ名。配列として複数のタグ名を指定することが可能。
戻り値
| 型： | 汎用
| 取得したタグ値。複数のタグ名が指定された場合、配列として値が返される。
解説
タグの値をブラウザ のクライアントキャッシュから取得します。GetVal は返値としてタグの値を返します。タグ名を間違えない限り、返値は必ず効な値が返ってくることが保障されます。 外部タグでPLC やサーバとの通信に異常がある場合、最後に正常に取得できた値が返ってきます。 通信状態の詳細を知りたい場合には、品質フラグ（GOOD/BAD/UNCERTAIN)を参照します。品質フラグは下記のメソッドを用いて取得できます。 例えば、通信状態により処理を切り替えたい場合などには品質フラグを用いてください。 外部タグの場合、まだ１度も通信が行われていない場合は"N/A"（UNCERTAINが）返ります。 AddTag 直後はまだ一度も通信が行われていないため、数秒間はUNCERTAIN 状態になります。AddTag 後、即座に通信を行わせるには、AddTag の直後にReadRefresh メソッドを呼び出します。 タグの値をブラウザ のクライアントキャッシュから取得します。GetVal は返値としてタグの値を返します。タグ名を間違えない限り、返値は必ず有効な値が返ってくることが保障されます。 外部タグでPLC やサーバとの通信に異常がある場合、最後に正常に取得できた値が返ってきます。 通信状態の詳細を知りたい場合には、品質フラグ（GOOD/BAD/UNCERTAIN)を参照します。品質フラグは下記のメソッドを用いて取得できます。 例えば、通信状態により処理を切り替えたい場合などには品質フラグを用いてください。 外部タグの場合、まだ１度も通信が行われていない場合は"N/A"（UNCERTAIN)が返ります。 AddTag 直後はまだ一度も通信が行われていないため、数秒間はUNCERTAIN 状態になります。AddTag 後、即座に通信を行わせるには、AddTag の直後にReadRefresh メソッドを呼び出します。
    var vVal = this.GetVal("U01.F01.T01");

    ::IsQualityGood(vVal);        //通信がうまくいっている場合（GOOD)、TRUE
    ::IsQualityBad(vVal);          //通信が失敗している場合（BAD)、TRUE
    ::IsQualityUncertain(vVal); //通信が１度も行われていない場合（UNCERTAIN)、TRUE
    ::GetQuality(vVal);             //"GOOD" or "BAD" or "UNCERTAIN"
GetVal はAddTag でタグの登録を行ったオブジェクトで使用できます。
例
例１)登録したコントロールのスクリプトでGetVal を呼び出す場合
    event OnInitialize()
    {
     this.AddTag("$D0");
    }

    event OnMouseUp(button)
    {
     this.Text = this.GetVal("$D0");
    }
例２）フォームでタグを登録し、各コントロールからメソッドを呼び出す場合
    // フォームのイベント（OnInitialize)
    event OnInitialize()
    {
     this.AddTag("$D0");
    }

    // 各コントロールのイベント
    event OnMouseUp(button)
    {
     this.Text = parent.GetVal("$D0");
    }
また下記のように複数のタグ名を文字配列として指定することができます。 複数のタグを指定した場合、返ってくる値も配列になります。下記の例では、a[0]に"$D0"の値、a[1]に"$D1"の値が格納されます。
    var a = this.GetVal( c("$D0","$D1","$D2","$D3","$D4") );
なお、サーバ では下記のようにタグを配列タグとして設定できます。例えば、PLC デバイスのD0000 からD9999 を、１つの配列タグとして定義することができます。 配列タグの値をGetVal で取得する場合は、「a = this.GetVal("TAG01");」のようにタグ名は１つのみを指定します。 その場合の返値は配列で返ります。例えば、a[0]にD0000 の値、a[1]にD0001、a[1000]にD1000 の値が格納されます。
サポート対象
| ○ | スクリプトアクション
サーバのスクリプトVer2アクションで使用可能
| ○ |
ブラウザスクリプト
ブラウザのスクリプトにて使用可能
| × |
演算式構文
演算式構文（バインド書式など）にて使用可能
参照 AddTag DelTag ClearAllTag GetVal ReadVal WriteVal ReadRefresh WriteRefresh ReadRequest ReadRequestRefresh WriteRequest WriteRequestRefresh