Version 2004 (Geändert)
GOTO SELECTED RECORD ({Tabellenname; }Position)
Parameter | Typ | Beschreibung | |
Tabellenname | Tabelle | Zu bearbeitende Tabelle, oder | |
Haupttabelle ohne Angabe | |||
Position | Numerisch | Position des ausgewählten Datensatzes |
Beschreibung
Der Befehl GOTO SELECTED RECORD bestimmt den Datensatz mit Nummer Position der aktuellen Auswahl der Tabelle Tabellenname als aktuellen Datensatz für den laufenden Prozess. Der Parameter Position ist nicht die Nummer, die durch die Funktion Record number zurückgegeben wird. Er gibt die Position des Datensatzes in der aktuellen Auswahl an. Sie hängt davon ab, wie die Auswahl gemacht und sortiert wurde.
GOTO SELECTED RECORD hat keine Wirkung, wenn
Position größer als die Zahl der ausgewählten Datensätze ist.
Position kleiner als 1 ist.
die aktuelle Auswahl leer ist.
Übergeben Sie 0 (Null) in Position, gibt es in Tabelle nicht länger einen aktuellen Datensatz. Ist der Auswahlmods "single" gewählt, können Sie alle Datensätze in einer Liste abwählen. Das ist besonders hilfreich bei eingebundenen Unterformularen.
Beispiel
Folgendes Beispiel lädt Daten von Datenfeldern aus der Tabelle [People] in ein Array mit Namen atNames. Das Array vom Typ Lange Ganzzahl mit Namen alRecNum erhält die Nummern dieser Datensätze. Beide Tabellen werden dann sortiert. Diese Tabellen können anschließend benutzt werden, um die Datensätze der Auswahl anzusprechen:
` Erstelle eine Auswahl für die Tabelle [People] ` ... ` Erhalte die Namen SELECTION TO ARRAY ([People]Last Name;atNames) `Erstelle ein Array für die ausgewählten Datensatznummern $vlNbRecords:=Size of array (atNames) ARRAY LONGINT (alRecNum;$vlNbRecords) For ($vlRecord; 1; $vlNbRecords) alRecNum{$vlRecord}:=$vlRecord End for ` Sortiere beide Arrays in alphabetischer Reihenfolge SORT ARRAY (atNames; alRecNum; >)
Wird das Array atNames in einem rollbaren Bereich dargestellt, kann der Benutzer eines der Elemente im Array anklicken. Da beide Arrays synchron sortiert sind, erhält der Name im Array dann die dazugehörige Nummer.
Folgende Objektmethode für atNames wählt den richtigen Datensatz in der Auswahl [People] nach dem im rollbaren Bereich ausgewählten Namen:
Case of : (Form event=On Clicked) If (atNames#0) GOTO SELECTED RECORD (alRecNum{atNames}) End if End case
Referenz