属性:instance-path
プラグマは、ローカル文字列変数に適用できます。このローカル文字列変数は、それが属するPOUのデバイスツリーパスと順番に初期化されるという効果があります。これは、エラーメッセージに役立ちます。
プラグマを適用するには、属性を適用する必要があります '反射'
関連するPOU、および追加属性の適用 'noinit'
STRING変数に。
構文:
{attribute 'instance-path'}
挿入位置:宣言のある行の上の行 STRING
変数。
例 274. 例
次の機能ブロックには、属性が含まれています 'reflection'
、 'instance-path'
と 'noinit'
。
{attribute 'reflection'} FUNCTION_BLOCK POU VAR {attribute 'instance-path'} {attribute 'noinit'} str: STRING; END_VAR
インスタンス myPOU 機能ブロックの POU メインプログラム内で定義されています PLC_PRG:
PROGRAM PLC_PRG VAR myPOU:POU; myString: STRING; END_VAR myPOU(); myString:=myPOU.str;
インスタンスの初期化に続いて myPOU
、インスタンスmyPOUのパスが文字列変数に割り当てられます str
、例では PLCWinNT.Application.PLC_PRG.myPOU
。このパスは、メインプログラムで変数に割り当てられます myString
。
重要
文字列の長さは必要に応じて定義できます(255を超える場合でも)。ただし、データ型が小さすぎる変数に割り当てられた場合、文字列は最後に切り捨てられることを考慮する必要があります。