Tabellfunktionerna returnerar information om den datatabell som för närvarande läses. Om inget tabellnamn har angetts och funktionen används inom en LOAD-sats antas den aktuella tabellen.
Alla funktioner kan användas i dataladdningsskriptet, men endast NoOfRows kan användas i ett diagramuttryck.
Använd listrutan för varje funktion för att visa en kort beskrivning samt syntaxen för funktionen. En del av funktionerna kan du få mer information om genom att klicka på funktionsnamnet i syntaxbeskrivningen.
Skriptfunktionen FieldName returnerar namnet på fältet med det angivna numret inom en tidigare inläst tabell. Om funktionen används inom en LOAD-sats får den inte referera till den tabell som för närvarande används.
Skriptfunktionen FieldNumber returnerar numret på ett angivet fält i en tidigare inläst tabell. Om funktionen används inom en LOAD-sats får den inte referera till den tabell som för närvarande används.
Skriptfunktionen NoOfFields returnerar antalet fält i en tidigare inläst tabell. Om funktionen används inom en LOAD-sats får den inte referera till den tabell som för närvarande används.
Funktionen NoOfRows returnerar antalet rader (poster) i en tidigare inläst tabell. Om funktionen används inom en LOAD-sats får den inte referera till den tabell som för närvarande används.
Den här skriptfunktionen returnerar antalet tidigare inlästa tabeller.
NoOfTables()
Den här skriptfunktionen returnerar namnet på tabellen med det angivna numret.
TableName(table_number)
Den här skriptfunktionen returnerar numret på den angivna tabellen. Den första tabellen har nummer 0.
Om table_name inte finns returneras NULL.
TableNumber(table_name)
Example:
I det här exemplet vill vi skapa en tabell med information om tabeller och fält som har laddats.
Först ska vi ladda några exempeldata. Detta skapar de två tabeller som kommer att användas för att illustrera tabellfunktionerna som beskrivs i detta avsnitt.
Characters:
Load Chr(RecNo()+Ord('A')-1) as Alpha, RecNo() as Num autogenerate 26;
ASCII:
Load
if(RecNo()>=65 and RecNo()<=90,RecNo()-64) as Num,
Chr(RecNo()) as AsciiAlpha,
RecNo() as AsciiNum
autogenerate 255
Where (RecNo()>=32 and RecNo()<=126) or RecNo()>=160 ;
Sedan itererar vi igenom tabellerna som har laddats med hjälp av funktionen NoOfTables och sedan genom fälten i varje tabell, med hjälp av funktionen NoOfFields och laddar information med hjälp av tabellfunktionerna.
//Iterate through the loaded tables
For t = 0 to NoOfTables() - 1
//Iterate through the fields of table
For f = 1 to NoOfFields(TableName($(t)))
Tables:
Load
TableName($(t)) as Table,
TableNumber(TableName($(t))) as TableNo,
NoOfRows(TableName($(t))) as TableRows,
FieldName($(f),TableName($(t))) as Field,
FieldNumber(FieldName($(f),TableName($(t))),TableName($(t))) as FieldNo
Autogenerate 1;
Next f
Next t;