- Beiträge
- 5.465
- Reaktionspunkte
- 1.425
VAR_INPUT [COLOR=#ff0000]LS_ZLV_GW [/COLOR]: ANY;// Hier wird das Erste Wort aus dem LS DB aufgelegt
END_VAR
VAR_OUTPUT
LS_ZLV_GW_OUT : LS_ZLV_GW;
END_VAR
VAR_TEMP
[COLOR=#ff0000]tLS_ZLV_GW [/COLOR]: ANY; // hier wird der Pointer für die Lokaldaten gespeichert um den Any draufzulegen
pLS_ZLV_GW AT tLS_ZLV_GW : ANY_POINTER;
para : LS_ZLV_GW; // temporäre Variablen vom UDT Typ
Ret : INT;
END_VAR
(*Pointer auf UDT schreiben zum arbeiten*) // Ventilator allgemein
[COLOR=#ff0000]tLS_ZLV_GW := LS_ZLV_GW[/COLOR]; // Pointer aus schnittstelle in Temporärbereich holen.
pLS_ZLV_GW.Bereichstyp := 2; // Typ des Bereichs soll Byte sein (INT = 2)
pLS_ZLV_GW.Anzahl_Werte := 42; // Länge des Pointers weil wir einen Any ohne Länge angeben wollen
// Muss so lange sein wie der UDT der angezeigt werden soll.
Ret := BLKMOV(SRCBLK := pLS_ZLV_GW ,DSTBLK := para); // Kopieren in die Temporäre Variable.
Ret := BLKMOV(SRCBLK := pLS_ZLV_GW ,DSTBLK := para); // Kopieren in die Temporäre Variable.
Hallo Rene,
in deinem Fall würden es für den Blockmove Vor-Vorgänger-Lokaldaten werden.
Die kann der Baustein nicht mehr adressieren ...
Versuch mal
Code:Ret := BLKMOV(SRCBLK := [COLOR=#ff0000]t[/COLOR]LS_ZLV_GW ,DSTBLK := para); // Kopieren in die Temporäre Variablen
Deinem letzten Post mit dem hinweis auf den Pointerinhalt ist es mir wie dachziegel von den Augen gefallen. Ich bin so ein DEPP. Danke funktioniert
Ich hab jetzt echt ne Stunde an dem ding Rumstudiert den Pointer auseinandergenommen etc. aber das ich garnicht den Pointer am Blockmove habe ist mir jetzt erst aufgefallen.
mfG René
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?