Zugriff mit mehreren FCs auf einen variablen DB

C

Carsten

Guest
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo!

Ich möchte in meinem Programm mit mehreren FCs auf einen (globalen) DB zugreifen. Das sollte normalerweise nicht das Problem sein, aber erschwerend kommt hinzu, dass sich die Nummer des DB ändern lassen soll, d.h. als Variable vorliegt. Innerhalb des DB sind logischerweise auch Felder deklariert, auf die ebenfalls direkt zugegriffen werden soll. Hat jemand eine Idee, wie ich das bewerkstelligen könnte??

Danke schon mal im voraus!

Gruß
-Carsten-

PS: Derzeit habe ich versucht das Problem so in den Griff zu kriegen:

L #Datenbaustein // INT Eingangsvariable im FC, die die Nr. des DB angibt
T #zugeord_DB // INT Temp-Variable, da der nächste Befehl nicht mit IN-Var. funktioniert
AUF DB[#zugeord_DB] // Öffnen des DB mit der Nr. "zugeord_DB"

Jetzt will ich aber einen sinngemäßen Aufruf/Zuweisung vornehmen wie

L DB[#zugeord_DB].Eingangsdaten.Adresse,
wobei Eingangsdaten als STRUCT im DB und Adresse ein Feld im Struct darstellt.

Leider funktioniert das so aber nicht - hat jemand eine Idee, wie das geht??
 

Stefan Beck

Member
Beiträge
18
Punkte Reaktionen
0
Hallo Carsten,

wenn ich dich richtig verstanden habe solltest du eine IN-Variable als POINTER anlegen. Mit dieser kannst du dann den jeweiligen DB öffnen und auf das entsprechende STRUCT zugreifen.

Bsp.:

L P##BILDNUMMER_OP
LAR2
L W [AR2,P#0.0]
T #TEMP_INT
AUF DB [#TEMP_INT] // öffne DB
L D [AR2,P#2.0]
LAR2
L B [AR2,P#0.0] // lade 1.Byte vom STRUCT

mfG, Stefan
 
Oben