ich habe folgende Überlegung, mit der ich nicht weiterkomme:
Es gibt die Funktionsblöcke FB_Main, FB_Super und FB_Sub. FB_Sub enthält eine Property Prop, eine Eingangsvariable iIn (deklariert in VAR_INPUT) und eine Ausgangsvariable iOut (deklariert in VAR_OUTPUT).
FB_Main ruft eine Instanz InstSuper des FB_Super auf, die wiederum eine Instanz InstSub des FB_Sub beinhaltet.
Ziel ist die Realisierung folgenden Zugriffes von FB_Main aus auf
Prop:
InstSuper.InstSub.Prop := iValue;
iValue1 := InstSuper.InstSub.Prop;
iOut:
iValue2 := InstSuper.InstSub.iOut;
Nun das Problem: Scheinbar funktioniert alles.
Aber ich möchte Klarheit: Ist die Deklaration von InstSub als VAR_INPUT von FB_Super korrekt, oder könnte es Probleme mit den Schreibzugriffen innerhalb von InstSub geben ?
In diesem Fall ist InstSub eine lokale Variable in InstSuper. Du kannst darauf nur innerhalb von InstSuper zugreifen; in InstMain ist InstSub nicht bekannt.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
SPSstudent hat geschrieben:
Eine Anmerkung zu dieser Sache:
VAR//InstSub:FB_Sub;//Funktioniertnicht!END_VAR
In diesem Fall ist InstSub eine lokale Variable in InstSuper. Du kannst darauf nur innerhalb von InstSuper zugreifen; in InstMain ist InstSub nicht bekannt.
Hallo SPSstudent,
danke für die Rückantwort.
Bei dieser auskommentierten Variante dachte ich an die eventuelle Möglichkeit, von InstMain aus über in InstSub angelegte Propertys auf dessen private Variablen Zugriff zu erhalten.
Aber diese Propertys sind natürlich auch nur in InstSuper sichtbar, nicht in InstMain. Deshalb funktioniert es nicht.
Freundliche Grüße
r2d2
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo,
ich habe folgende Überlegung, mit der ich nicht weiterkomme:
Es gibt die Funktionsblöcke FB_Main, FB_Super und FB_Sub. FB_Sub enthält eine Property Prop, eine Eingangsvariable iIn (deklariert in VAR_INPUT) und eine Ausgangsvariable iOut (deklariert in VAR_OUTPUT).
FB_Main ruft eine Instanz InstSuper des FB_Super auf, die wiederum eine Instanz InstSub des FB_Sub beinhaltet.
Ziel ist die Realisierung folgenden Zugriffes von FB_Main aus auf
InstSuper.InstSub.Prop := iValue;
iValue1 := InstSuper.InstSub.Prop;
iValue2 := InstSuper.InstSub.iOut;
Nun das Problem: Scheinbar funktioniert alles.
Aber ich möchte Klarheit: Ist die Deklaration von InstSub als VAR_INPUT von FB_Super korrekt, oder könnte es Probleme mit den Schreibzugriffen innerhalb von InstSub geben ?
Freundliche Grüße an das Forum
r2d2
PropAccess.zip [175.8 KiB]
Eine Anmerkung zu dieser Sache:
In diesem Fall ist InstSub eine lokale Variable in InstSuper. Du kannst darauf nur innerhalb von InstSuper zugreifen; in InstMain ist InstSub nicht bekannt.
In diesem Fall ist InstSub eine lokale Variable in InstSuper. Du kannst darauf nur innerhalb von InstSuper zugreifen; in InstMain ist InstSub nicht bekannt.
Hallo SPSstudent,
danke für die Rückantwort.
Bei dieser auskommentierten Variante dachte ich an die eventuelle Möglichkeit, von InstMain aus über in InstSub angelegte Propertys auf dessen private Variablen Zugriff zu erhalten.
Aber diese Propertys sind natürlich auch nur in InstSuper sichtbar, nicht in InstMain. Deshalb funktioniert es nicht.
Freundliche Grüße
r2d2