Deutsch English
Alphabetischer Index
Array-Funktionen
  • bitand()
  • bitandnot()
  • bitnot()
  • bitor()
  • bitsum()
  • bittrunc()
  • clrarray()
  • 'DELSESSION'
  • getauto()
  • getmarksauto()
  • high()
  • inarray()
  • inarraypos()
  • initarray()
  • nbits()
  • putmarksauto()
  • 'SETSESSIONIDENT'
  • strsort()
    CGI-Funktionen
    Datentypen
    Datums/Uhrzeit-Funktionen
    Debugging
    Operatoren
    Ramtext-Funktionen
    Selektion
    Socket-Funktionen
    Sonstige-Funktionen
    Sprachelemente
    Statistik-Funktionen
    Stream-Funktionen
    String-Funktionen
    System-Funktionen
    Tabellen-Funktionen
    Text-Funktionen
    Volltext-Funktionen
    Zahlen-Funktionen
    Home    Überblick    Suche    Impressum    Kontakt    Mitglieder
    Themenkomplex Array-Funktionen
    Funktion strsort()
    Kurz Sortiert ein- und zweidimensionale STRING-Arrays
    Syntax STRSORT(StrArray : STRING[]; MaxIndex : INTEGER [;FirstIndex : INTEGER [; SortStr : STRING]]) : INTEGER
    Parameter StrArray : ein oder zweidimensionales STRING-Array
    MaxIndex : das Array wird sortiert von FirstIndex..MaxIndex
    FirstIndex : Index, ab dem das Feld sortiert wird (0 = Vorgabe)
    SortStr : Sortierreihenfolge
    Ergebnis 0 oder Fehlercode (wenn es sich um kein String-Array handelt)
    Siehe auch:
    Beschreibung Die Felder werden immer Zeilenweise sortiert.
    Mit dem StrSort() wird festgelegt, wie das Feld sortiert wird.
    Es besteht aus Spaltennummern, denen ein Minuszeichen vorangestellt werden kann, wenn eine absteigende Sortierung erwünscht ist.
    Zusätzlich kann einer Spalte das '%'-Zeichen voangestellt werden, wenn es sich um eine rein numerische Spalte handelt, die dann entsprechend sortiert wird.

    Beispiel 1: StrSort

    Kreuzprodukt zweier Tabellen sortiert nach der 1. und 2. Spalte

    VAR db_1 : INTEGER = opendb('database/customer.dat')
    VAR db_2 : INTEGER = opendb('database/orders.dat')
    VAR query : STRING = '$customer.KDNR=$orders.KDNR, $orders.date<=today-14'
    VAR result : STRING[,]
    VAR i,j : INTEGER
    InitArray(result[maxlabel(db_1)+maxlabel(db_2),filesize(db_1)*filesize(db_2)]
    
    SUB _query
    nloop(i,maxlabel(db_1)-1,result[j,i]:=getfield(db_1,i+1))
    nloop(i,maxlabel(db_2)-1,result[j,maxlabel(db_1)+i]:=getfield(db_2,i+1))
    j++
    ENDSUB
    StrSort(result,j-1,0,'1,2')


    tdbengine chat
    irc.tdbengine.org
    #tdbengine

       Copyright © 2003-2004 tdb Software Service GmbH
       Alle rechte vorbehalten. / All rights reserved
       Letzte Änderung: 21.10.2004
    {Fehler für :execmacro{execmacro="sessionspy"}