Das Pragma kann auf eine lokale STRING-Variablen angewandt werden und bewirkt, dass
diese lokale STRING-Variable in Folge mit dem Gerätebaumpfad der POU, zu der sie gehört,
initialisiert wird. Dies kann für Fehlermeldungen nützlich sein. Die Anwendung des
Pragmas setzt die Anwendung des Attributs 'reflection'
auf die zugehörige POU voraus, sowie die Anwendung des zusätzlichen Attributs 'noinit'
auf die STRING-Variable selbst.
Syntax:
{attribute 'instance-path'}
Einfügeort: Die Zeile oberhalb der Zeile mit der Deklaration der STRING
-Variablen.
Beispiel
Der folgende Funktionsbaustein enthält die Attribute 'reflection'
, 'instance-path'
und 'noinit'
.
{attribute 'reflection'} FUNCTION_BLOCK POU VAR {attribute 'instance-path'} {attribute 'noinit'} str: STRING; END_VAR
Im Hauptprogramm „PLC_PRG“ ist eine Instanz „myPOU “des Funktionsbausteins „POU“ definiert:
PROGRAM PLC_PRG VAR myPOU:POU; myString: STRING; END_VAR myPOU(); myString:=myPOU.str;
Nach der Initialisierung von Instanz myPOU
wird der String-Variablen str
der Pfad der Instanz myPOU zugewiesen, im Beispiel PLCWinNT.Application.PLC_PRG.myPOU
. Dieser Pfad wird im Hauptprogramm der Variablen myString
zugewiesen.




HINWEIS

Die Länge einer Zeichenkette können Sie beliebig definieren (auch >255), allerdings müssen Sie bedenken, dass die Zeichenkette (von hinten her) abgeschnitten wird, wenn sie einer Variablen zugewiesen ist, deren Datentyp zu klein dafür ist.
Siehe auch