Jochen Kühner
Level-3
- Beiträge
- 4.396
- Reaktionspunkte
- 618
// UDT-Typdefinitionen
TYPE TYP_E1Kopf
STRUCT
.....
auftrnr : DINT; // Auftragsnummer
masch : INT; // Maschinennummer
fertlen : REAL := 6.0; // Soll-Fertigungslänge [m]
.....
END_STRUCT;
END_TYPE
TYPE TYP_AdKomp
STRUCT
SapMat : DINT; // Materialnummer
Bez : STRING [12] := ' '; // Bezeichnung
Sollgew : REAL; // Sollgewicht
Mischnr : INT; // Mischungsnummer
Farbnr : INT; // Farbnummer
END_STRUCT;
END_TYPE
TYPE TYP_E1Meld
STRUCT
Kopf : TYP_E1Kopf; // E1-Kopfdaten
AnzKomp : INT; // Anzahl aktiver Komponenten
Komp : ARRAY[1..10] OF TYP_AdKomp; // Komponentendaten
END_STRUCT;
END_TYPE
// Datenbaustein-Definition
DATA_BLOCK E1Buffer
TITLE = Puffer für E1-Meldungen
STRUCT
E1 : ARRAY [0..15] OF TYP_E1Meld;
END_STRUCT ;
BEGIN
END_DATA_BLOCK
// Ausschnitt aus einer Funktion, die indirekt darauf zugreift
FUNCTION CreateE1 : BOOL
TITLE = 'Neue E1 aus Auftragsdaten erzeugen'
// Erzeugen neuer E1-Meldung aus Auftragsdaten, alte Istwerte werden gelöscht
VERSION : '0.2'
VAR_INPUT
AktBuf : INT;
END_VAR
VAR_TEMP
i : INT;
RetBool : BOOL;
END_VAR
BEGIN
......
// Werte aus Auftrag übernehmen
E1Buffer.E1[AktBuf].Kopf.auftrnr := ProdAuft.Auft[0].Kopf.auftrnr;
E1Buffer.E1[AktBuf].Kopf.masch := ProdAuft.Auft[0].Kopf.masch;
E1Buffer.E1[AktBuf].Kopf.fertlen := ProdAuft.Auft[0].Kopf.Fertlen;
......
// und hier mit mehrfach-indirekt-Zugriff !
FOR i := 1 TO 5 BY 1 DO
E1Buffer.E1[AktBuf].Komp[i] := ProdAuft.Auft[0].Komp[i];
END_FOR;
.....
END_FUNCTION
Jochen Kühner schrieb:....gibt es eine möglichkeit das mir step7 bei meinen anypointer die größe (also byte 10 beispielsweise) durch die größe meines udts ersetzt...
CALL FC 23
MY_ARRAY:="DB_ARRAY".MY_ARRAY[1]
Jochen Kühner schrieb:habe in einem db ein array meines udts deklariert!
wie kann ich nun auf die elemente des udts über mein array zugreifen??
gibt es irgendwo eine gute beschreibung zu step7 arrays und uooooooooooooooooooodts??
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?