Ok, ich hab grad gesehen dass ich dann auch den Komfort verlieren würde mir den GlobalDB aus Excel heraus erstellen zu können da hier keine UDTs möglich sind...
Des weiteren würde es die Sache (nach dem ich den Siemens Beitrag gelesen habe) noch mehr verkomplizieren -> dann lieber im OB die direkte Adresse hinschreiben (kommt pro Aufruf 8 mal vor - geht schon...)
Ich bin aber gerade auf ein ganz anderes Problem gestossen.
Ich habe im FB diverse Timer als IN-Parameter definiert wovon ein paar an Unterprogramme weitergegeben werden müssen.
Ich würde ja nicht so dumm fragen aber mit der "alten" Struktur ging das dass der Timer als z.B. T 37 im Haupt- sowie im Unterprogramm angegeben wurde.
Nun habe ich im ersten Unterprogramm ebenfalls einen IN-Parameter definiert an den dann der ehemalige T 37 weitergereicht werden soll --> geht nicht !
"Unzulässige Parameterversorgung" sagt mir Step7.
Und jetzt ? Direkt geht indirekt nicht
Auf SFB-Timer "umbauen" kommt jedenfalls nicht gleich in Frage
(schwierig zum Testen in dem Zustand - dann lieber das wo schon funktioniert hat)
Edit:
In der Hilfe zur Meldung steht:
-------------------------------------------------------------------------------------------------
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.
--------------------------------------------------------------------------------------------
Anmerkung: Das "Durchreichen" hat aber mit allem anderen einschließlich #S5Time bis jetzt geklappt...