- Beiträge
- 15.414
- Reaktionspunkte
- 4.043
-> Hier kostenlos registrieren
Ich haben einen fremden FB, welcher als IN_OUT-Variable eine UDT verlangt. Das funktioniert problemlos.
Jetzt will ich diesen FB in einen eigenen FC verpacken, welcher also u.a. diese UDT-Var weitergibt. Das geht lt. Siemens nicht:
Kennt jemand eine elegante Möglichkeit dies doch zu bewerkstelligen, ohne den ganzen UDT-Bereich mit BLK_MOVE umzukopieren?
Jetzt will ich diesen FB in einen eigenen FC verpacken, welcher also u.a. diese UDT-Var weitergibt. Das geht lt. Siemens nicht:
Code:
Beschreibung:
Obwohl kein Typkonflikt zwischen Aktualparameter (rechte Seite) und Formalparameter (linke Seite) vorliegt, kann diese Parameterzuweisung nicht zugelassen werden. Folgende Gründe können vorliegen:
· Die Zuweisung ist aus technischen Gründen nicht möglich, z.B. kann keine STRING- oder DATE_AND_TIME-Konstante als Aktualparameter verwendet werden (zu viele Einzelbefehle).
· Das Maschinenmodell STEP 7 erlaubt die Zuweisung nicht, z.B. kann ein STRUCT/ARRAY/ANY/UDT/STRING - INPUT/OUTPUT/IN_OUT - Parameter eines FCs nicht an einen darin aufgerufenen Baustein weitergereicht werden.
· Ihr Formalparameter trägt ein S7_server Attribut und läßt daher die entsprechende Versorgung nicht zu, da z.B. der Aktual Parameter vom Server selbst vergeben werden muß oder lokal versorgt werden soll.
Behebung:
Bitte passen Sie Ihren Bausteinaufruf entsprechend diesen Regeln an.
Kennt jemand eine elegante Möglichkeit dies doch zu bewerkstelligen, ohne den ganzen UDT-Bereich mit BLK_MOVE umzukopieren?