Freigeben über


FOR( )-Funktion

Gibt den Indexfilterausdruck einer offenen Einfachindexdatei (IDX) oder eines Indexnamens in Großbuchstaben zurück.

FOR([nIndexNumber [, nWorkArea | cTableAlias]])

Rückgabewerte

Zeichen

Parameter

Wenn Sie keines der optionalen Argumente angeben, gibt FOR( ) den Indexfilterausdruck für die Hauptindexdatei oder den Hauptindexnamen zurück. Ist keine Hauptindexdatei oder kein Indexname wirksam, weil Sie z. B. die physische Reihenfolge der Datensätze in der Tabelle mit SET ORDER TO wiederhergestellt haben, gibt FOR( ) eine leere Zeichenfolge zurück.

  • nIndexNumber
    Gibt die Indexdatei oder den Indexnamen an, deren bzw. dessen Filterausdruck zurückgegeben werden soll. FOR( ) gibt Filterausdrücke in der folgenden Reihenfolge zurück, wenn nIndexNumber von 1 bis zur Gesamtanzahl der offenen Einfachindexdateien sowie der Indexnamen strukturierter und unabhängiger Mehrfachindexdateien erhöht wird:
  1. Filterausdrücke aus Einfachindexdateien (sofern solche geöffnet sind) werden als erste zurückgegeben. Die Reihenfolge, in der die Einfachindexdateien in USE oder SET INDEX aufgeführt sind, legt die Reihenfolge fest, in der die Filterausdrücke zurückgegeben werden.

  2. Filterausdrücke für jeden Indexnamen eines strukturierten Mehrfachindex (sofern vorhanden) werden als nächstes zurückgegeben. Die Filterausdrücke der Indexnamen werden in der Reihenfolge zurückgegeben, in der die Indexnamen im strukturierten Index erstellt wurden.

  3. Filterausdrücke für jeden Indexnamen aller offenen unabhängigen Mehrfachindizes werden als letztes zurückgegeben. Die Filterausdrücke der Indexnamen werden in der Reihenfolge zurückgegeben, in der die Indexnamen in den unabhängigen Mehrfachindizes erstellt wurden.

    Eine leere Zeichenfolge wird zurückgegeben, wenn ein Index oder ein Indexname ohne FOR-Klausel erstellt wird oder wenn nIndexNumber größer ist als die Gesamtanzahl der offenen Einfachindexdateien sowie der Indexnamen strukturierter und unabhängiger Mehrfachindexdateien.

  • nWorkArea
    Gibt den Arbeitsbereich der Tabelle an, deren Indexfilterausdrücke von FOR( ) zurückgegeben werden.

    FOR( ) gibt eine leere Zeichenfolge zurück, wenn im angegebenen Arbeitsbereich keine Tabelle geöffnet ist.

  • cTableAlias
    Gibt den Alias der Tabelle an, deren Indexfilterausdrücke von FOR( ) zurückgegeben werden.

    Visual FoxPro generiert eine Fehlermeldung, wenn Sie einen nicht vorhandenen Tabellenalias angeben.

Hinweise

Sie können in Visual FoxPro gefilterte Indizes erstellen. Wenn Sie die optionale Klausel FOR lAusdruck in einem INDEX-Befehl angeben, fungiert die Indexdatei wie ein Filter für die Tabelle. Für Anzeige und Zugriff sind nur Datensätze verfügbar, die dem Filterausdruck lAusdruck entsprechen. Indizes werden in der Indexdatei nur für die Datensätze erstellt, die dem Filterausdruck entsprechen.

USE und SET INDEX unterstützen eine Indexdateinamenliste, mit der Sie mehrere Indexdateien für eine Tabelle öffnen können. In die Indexdateinamenliste können beliebige Kombinationen aus den Namen von Einfachindexdateien, von strukturierten und von unabhängigen Mehrfachindexdateien aufgenommen werden. FOR( ) ähnelt SYS(2021) und wird aus Gründen der Kompatibilität mit dBASE IV zur Verfügung gestellt.

Siehe auch

INDEX