ランタイム時のカスタムプロパティの式または参照の変更
- Last UpdatedJun 08, 2026
- 1 minute read
クライアントスクリプトを使用するグラフィックで、SetCustomPropertyValue()メソッドを呼び出すことで、ランタイム時にカスタムプロパティの式または参照が変更できます。
SetCustomPropertyValue(System.String name, System.String value, System.Boolean isConstant);
このメソッドは、産業用グラフィック エディタから要素ブラウザを使用して選択できます。
このメソッドには 3 つのパラメータがあります。
-
name - グラフィックで修正されるカスタム プロパティの名前。このパラメータは文字列型で、参照または定数です。
-
value - 設定する新しい値。このパラメータは文字列型で、式、参照、または定数です。引用符 (") で値を指定する場合、値は定数とみなされます。引用符なしで値を指定する場合、式の値は参照とみなされます。
-
isConstant - 新しい値が定数または参照として評価されるかどうかを示すフラグ。このパラメータはブール型です。True (1) に設定した場合、新しい値は定数として扱われます。False (0) に設定した場合、新しい値は参照として扱われます。このパラメータは、value パラメータが参照または定数で、name パラメータで指定されたカスタム プロパティが文字列型または時間型である場合にのみ適用されます。カスタム プロパティが整数、浮動小数点、ブール値、または倍精度型である場合、このパラメータに意味はありません。
注:isConstantパラメーターは、value パラメーターの入力のタイプを上書きしません。value パラメータ自体は、それを引用符で囲むかどうかに応じて定数または参照になります。isConstant パラメータによって決定されるのは、(value パラメータから)取得される実際の値を評価する方法だけです。
カスタム プロパティの式または参照全体は、上書きするかどうかに関わらず、新しい値に置換されます。部分置換はサポートされていません。
変更できるのはグラフィックのパブリック カスタム プロパティだけです。
メソッドが実行されると、ネイティブ InTouch スクリプトによって呼び出された以前の IOSetRemoteReference() によって行われた修正が上書きされます。
カスタムプロパティを参照として設定する例として、モーターの現在の状態(「Running」または「Stopped」)を保存する文字列属性名「State」を持つMotor_001オブジェクトを考えてみます。文字列データ型のカスタムプロパティ「MotorState」がある産業用グラフィックもあるとします。その場合、以下のスクリプトコードは、ランタイム時にMotorStateカスタムプロパティをMotor_001.Stateに設定します。
GraphicA.SetCustomPropertyValue("MotorState","Motor_001.State",False);
呼び出しの結果として、機能は文字列カスタム プロパティ GraphicA.MotorState を参照として「Motor_001.State」に設定します。文字列カスタム プロパティ GraphicA.MotorStatus は、参照を解決し、その値を参照値 (「Running」または「Stopped」) で更新します。
定数としてカスタムプロパティを設定する例については、モーターの現在の状態(TrueまたはFalse)を反映するBoolean属性名「State」を持つMotor_001オブジェクトを考えてみます。文字列データ型のカスタムプロパティ「MotorState」がある産業用グラフィックもあるとします。その場合、以下のスクリプト コードは、MotorState カスタム プロパティが Motor_001 に返される値に基づくテキストとして機器の状態 (「Running」または「Stopped」) を保持します。
IF Motor_001.State THEN
GraphicA.SetCustomPropertyValue("MotorState","Running",True);
ELSE
GraphicA.SetCustomPropertyValue("MotorState","Stopped",True);
ENDIF;
呼び出しの結果として、この関数は、Motor_001.Stateの値に応じて文字列カスタムプロパティGraphicA.MotorStateを「Running」または「Stopped」に設定します。