TIA Datentyp konvertiert von Any nach Variant bei 300er nach 1500er

Outrider

Level-1
Beiträge
745
Reaktionspunkte
5
Zuviel Werbung?
-> Hier kostenlos registrieren
Habe beim tauschen der CPU 315er nach 1516er festgestellt, dass die Funktionen WRREC und RDREC sich im Datentyp automatisch verändert haben, ANY nach VARIANT !
Nun stellt sich die Frage ob man dass alles so lassen kann ?
In der Hilfe habe ich gelesen dass bei ANY der Eingangsparameter RECORD imer das vollständige P#DBx.DBXx.x Bytex haben muss
Kann man das bei VARIANT auch so nutzen ohne es zu ändern ?
Was mich etwas nachdenklich gemacht hat, warum gibtes den Parameter LEN wenn doch die Länge im P#DB..Bytexx gegeben ist ?
Im Anhang habe ich die beiden Bausteine dargestellt. Im DB sieht man den Bereich, den ich übertragen möchte.
Gruß und Danke für Rückmeldungen
 

Anhänge

  • Variant.GIF
    Variant.GIF
    21,6 KB · Aufrufe: 22
  • DB.jpg
    DB.jpg
    57,9 KB · Aufrufe: 17
  • Any.GIF
    Any.GIF
    21,1 KB · Aufrufe: 21
Zuviel Werbung?
-> Hier kostenlos registrieren
Dass man die Länge an LEN angeben muss obwohl mit einem ANY Pointer auch die länge angegeben wird, war schon immer so. z.B. auch bei den Kommunikationsbausteinen PUT und GET.
Ist halt so, wieso? keine Ahnung.
Mit Any funktioniert RDREC einwandfrei, solange der Zielbaustein nicht optimiert ist. bei optimierten Bausteinen muss entweder ein Struct oder ein UDT angehängt werden.

mfG René
 
Zurück
Oben