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 laddningsskriptet, men endast NoOfRows kan användas i ett diagramuttryck.
Använd listrutan för varje funktion för att visa en kort beskrivning och syntax för varje funktion. 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 existerar kan inget värde returneras. Om en funktion anges för att returnera ett funktionellt värde initialiseras inte den här variabeln. Som workaround kan du ange LET vImaginaryTabNum = If(TableNumber('NotExistingTable')>=0,TableNumber('NotExistingTable'),'NULL') ;
TableNumber(table_name)
Exempel:
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;
Tabellen Tables som skapas ser ut så här:
Tables table
Table
TableNo
TableRows
Field
FieldNo
Characters
0
26
Alpha
1
Characters
0
26
Num
2
ASCII
1
191
Num
1
ASCII
1
191
AsciiAlpha
2
ASCII
1
191
AsciiNum
3
Var den här sidan till hjälp för dig?
Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!
Modernisera utan att kompromissa med dina värdefulla QlikView-appar med programmet för analysmodernisering. Klicka här för mer information eller ta kontakt: ampquestions@qlik.com