Field := RecordRef.FIELDINDEX(Index);
FIELDINDEX
Der Befehl FIELDINDEX gibt die Feldreferenz aus einer zuvor festgelegten Tabelle zurück. Die Tabelle muss vom Datentyp „RecordRef“ sein.
Parameter
Der erste Parameter (RecordRef) zeigt auf die Tabelle, in der nach der gewünschten Feldreferenz gesucht werden soll.
Der zweite Parameter (Index) muss vom Datentyp „Integer“ sein und gibt die Feldnummer in der aktuell geöffneten Tabelle an.
Rückgabewert
Der Rückgabeparameter (Field) ist vom Datentyp „FieldReference“ und verweist auf das verlinkte Feld der geöffneten Tabelle.
Wenn der Index außerhalb des angegebenen Bereichs liegt oder keine Tabelle ausgewählt ist, gibt die Funktion einen Fehler zurück.
Beispiel
Zunächst werden folgende neue Variablen hinterlegt.
Name | Datentyp | Subtyp |
---|---|---|
SalesInvHdr | RecordRef | |
FldRef1 | FieldRef | |
FldRef2 | FieldRef |
Anschließend wird folgender Code eingefügt.
SalesInvHdr.OPEN(DATABASE::Item); FldRef1 := SalesInvHdr.FIELDINDEX(1); FldRef2 := SalesInvHdr.FIELDINDEX(10); MESSAGE( 'Feldreferenz 1: %1\Feldreferenz 2: %2', FldRef1.CAPTION,FldRef2.CAPTION);
Sobald der Code ausgeführt wird, erscheint das folgende Ergebnis.