TIA Struktur Adresse variabel abfragen

Mok_1988

Level-2
Beiträge
322
Reaktionspunkte
73
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich habe eine Stuktur mit einigen UDT's. Diese ist wie folgt aufgebaut:
1719230947542.png

Nun möchte ich gerne die Summe aller REAL Werte haben, bei denen Prio1 angewählt ist. Das selbe später für Prio2 und Prio3.

Ich möchte natürlich ungerne eine IF Abfrage für jedes Element programmieren, da die Sturktur so ca 50 Elemente haben wird.
Gibt es also eine Möglichkeit die Adresse von Prio1 variabel zu gestalten? Ähnlich wie man es bei einem Array machen würde (ein Array kommt nicht in Frage, da ich die Struktur gerne lesbar haben möchte)

Also in etwa sowas:
Code:
FOR item 1 TO 50 DO
IF DBx.myStruct.(item).Prio1 THEN
   tmp_real := tmp_real + DBx.myStruct.(item).Real;
END_IF;
 

Anhänge

  • 1719230217469.png
    1719230217469.png
    7,4 KB · Aufrufe: 2
Zuviel Werbung?
-> Hier kostenlos registrieren
Das möchte ich verhindern, da ich nachher die Elemente der Struktur einem Antrieb zuordne. Und damit es übersichtlich ist, möchte ich die Elemente eben nach der AKZ des Antriebes benennen. In einem Array wird das einfach unübersichtlich und es passieren schnell Fehler bei der Zuordnung
 
Du könntest für jeden Antrieb eine einzelne Instanz des UDT deklarieren und damit übersichtlich arbeiten, und vor der Auswertung per Schleife die 50 einzelnen Instanzen einzeln in ein Array of UDT kopieren. Da musst du allerdings einmal ganz stark und konzentriert sein, und beim 50 mal kopieren keine Fehler machen ;)
 
... oder du machst auf deine Struktur eine AT-Sicht als Array (of UDT) - dann geht es auch wieder ganz einfach mit der Schleife ...
 
Zurück
Oben