Step 7 Pointer aus Real-Wert am InOut in FC

funkey

Level-2
Beiträge
364
Reaktionspunkte
109
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich wollte wissen wie und ob es möglich ist aus einem Real-Wert an einem InOut eines FCs die Adresse zu bekommen.

Hintergrund: Der Baustein wird unzählige Male aufgerufen und ich müsste überall händisch ein Bit programmieren, welches zur gleichen Struktur gehört wie der Real-Wert am InOut. Also ich würde gerne ein Bit mit Offset z.B. 20 Byte zum Real beschreiben.

Geht das irgendwie oder muss ich doch das ganze überall händisch nachtragen?
Ich weiß, dass das nicht die schöne Variante ist, das wäre mir aber in diesem Fall egal.

Schönen Gruß und vielen Dank für eure Hilfe!
funkey
 
So wie ich das sehe, kann man leider nur die Adresse herausfinden, wenn man als Datentyp Any oder Pointer verwendet.
Also wird da wohl nichts gehen... Außer es gibt da eben einen Trick den ich noch nicht kenne.
 
Bei elementaren Typen geht da auf jeden Fall nichts, weil diese außer bei Merker-, oder im EA-Bereich als Kopie übergeben wird. D.h. wenn du de Eingang mit DB1.DBD0, dann wird der Wert in den Lokaldatenbereich geschrieben, und diese Adresse übergeben und nicht die DB-Adresse. Anschließend wird von der Lokaldatenadresse wieder auf den DB geschrieben.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vielen Dank für eure Antworten, habe mir schon gedacht, dass es so nicht funktionieren würde. Dann mal ran an die Arbeit.
Ändern kann ich alles, wollte nur den Mehraufwand verhindern.

Bei elementaren Typen geht da auf jeden Fall nichts, weil diese außer bei Merker-, oder im EA-Bereich als Kopie übergeben wird. D.h. wenn du de Eingang mit DB1.DBD0, dann wird der Wert in den Lokaldatenbereich geschrieben, und diese Adresse übergeben und nicht die DB-Adresse. Anschließend wird von der Lokaldatenadresse wieder auf den DB geschrieben.
Danke Thomas für die Erklärung, habe mich schon gewundert dass der Pointer die Kennung 87 für Lokaldaten enthält. Jetzt weiß ich auch wieso.
 
Zurück
Oben