Ga naar hoofdinhoud Ga naar aanvullende inhoud

Bottom

Bottom() evalueert een uitdrukking in de laatste rij (onderste rij) van een kolomsegment in een tabel. De rij waarvoor deze waarde wordt berekend is afhankelijk van de waarde van offset, indien aanwezig. De onderste rij is de standaardwaarde. Voor andere grafieken dan tabellen, wordt de laatste rij van de huidige kolom in het equivalent van de strakke tabel in de grafiek geëvalueerd.

Syntaxis:  

Bottom([TOTAL] expr [ , offset [,count ]])

Retourgegevenstypen: dubbele waarde

Argumenten:  

  • expr: De uitdrukking die of het veld dat de gegevens bevat die moeten worden gemeten.
  • offset: als een offset n, groter dan 0, wordt opgegeven, wordt de evaluatie van de uitdrukking n rijen verder omhoog verplaatst, geteld vanaf de huidige rij. Als de beginwaarde 0 wordt opgegeven, wordt de uitdrukking geëvalueerd op de huidige rij. Als een negatief getal voor de beginwaarde wordt opgegeven, werkt de functie Above op dezelfde wijze als de functie Below met het overeenkomstige positieve getal als beginwaarde.
  • count: als een derde argument count groter dan 1 wordt opgegeven, retourneert de functie niet één maar een bereik van count waarden. Eén waarde voor elke count tabelrijen, omhoog geteld vanaf de oorspronkelijke cel. In deze vorm kan de functie worden gebruikt als argument voor een van de speciale bereikfuncties. Bereikfuncties
  • TOTAL: Als de tabel eendimensionaal is of als de kwalificatie TOTAL wordt gebruikt als argument, is het huidige kolomsegment altijd gelijk aan de hele kolom.

    Het aggregatiebereik definiëren

InformatieEen kolomsegment wordt gedefinieerd als een opeenvolgende subset van cellen die dezelfde waarden hebben voor de dimensies in de huidige sorteervolgorde. Interrecord-grafiekfuncties worden berekend in het kolomsegment met uitzondering van de dimensie uiterst rechts in de equivalente strakke tabel. Als er slechts één dimensie is in de grafiek, of als de kwalificatie TOTAL is opgegeven, wordt de uitdrukking geëvalueerd voor de volledige tabel.
InformatieAls de tabel of het equivalent van de tabel meerdere verticale dimensies heeft, omvat het huidige kolomsegment alleen rijen met dezelfde waarden als de huidige rij in alle dimensiekolommen, met uitzondering van de kolom waarin de laatste dimensie wordt weergegeven in de onderlinge sorteervolgorde van de velden.

Beperkingen:  

  • Recursieve oproepen retourneren een NULL-waarde.

  • Het is niet toegestaan te sorteren op y-waarden in grafieken of op uitdrukkingskolommen in tabellen als deze diagramfunctie wordt gebruikt in een van de uitdrukkingen van de grafiek. Deze sorteeropties worden daarom automatisch uitgeschakeld. Als u deze diagramfunctie gebruikt in een visualisatie of tabel, wordt de sortering van de visualisatie teruggezet naar de gesorteerde invoer van deze functie.

Voorbeelden en resultaten:  

Voorbeeld 1:  

Voorbeeld van tabeluitvoer
Customer Sum(Sales) Bottom(Sum(Sales)) Sum(Sales) + Bottom(Sum(Sales)) Bottom offset 3
- 2566 757 3323 3105
Astrida58775713441126
Betacab53975712961078
Canutility68375714401222
Divadip75775715141296

In de weergave van de tabelgrafiek in dit voorbeeld wordt de tabel gemaakt op basis van de dimensie Customer en de metingen Sum(Sales) en Bottom(Sum(Sales)).

De kolom Bottom(Sum(Sales)) retourneert 757 voor alle rijen omdat dit de waarde van de onderste rij is: Divadip.

In de tabel worden tevens complexere metingen weergegeven: één die is gemaakt op basis van Sum(Sales)+Bottom(Sum(Sales)) en één met het label Bottom offset 3, die is gemaakt met behulp van de uitdrukking Sum(Sales)+Bottom(Sum(Sales), 3) en waarvoor het argument offset is ingesteld op 3. Hiermee wordt de waarde Sum(Sales) voor de huidige rij toegevoegd aan de waarde van de rij die zich drie rijen boven de onderste rij bevindt. Met andere woorden: de huidige rij plus de waarde voor Betacab.

Voorbeeld 2:  

In de weergaven van de tabelgrafieken in dit voorbeeld, zijn meer dimensies toegevoegd aan de grafieken: Month en Product. Voor grafieken met meer dan één dimensie zijn de resultaten van uitdrukkingen met de functies Above, Below, Top en Bottom afhankelijk van de volgorde waarin de kolom met dimensies in QlikView 12 zijn gesorteerd. QlikView 12 evalueert de functies op basis van de kolomsegmenten die het resultaat zijn van de dimensie die als laatste is gesorteerd. De sorteervolgorde van de kolom wordt beheerd onder Sorteren en is niet per se gelijk aan de volgorde waarin de kolommen in een tabel worden weergegeven.

In de eerste tabel wordt de uitdrukking geëvalueerd op basis van Month en in de tweede tabel wordt deze geëvalueerd op basis van Product. De meting End value bevat de uitdrukking Bottom(Sum(Sales)). De onderste rij voor Month is Dec en de waarde voor Dec beide waarden van Product die worden weergegeven in de tabel zijn 22. (Sommige rijen worden niet weergegeven om ruimte te besparen.)

Voorbeeld van eerste tabeluitvoer
Customer Product Month Sum(Sales) End value
- - - 2566 -
AstridaAAJan4622
AstridaAAFeb6022
AstridaAAMar7022
...............
AstridaAASep7822
AstridaAAOct1222
AstridaAANov7822
AstridaAADec2222
AstridaBBJan4622
Voorbeeld van tweede tabeluitvoer
Customer Product Month Sum(Sales) End value
      2566 -
AstridaAAJan4646
AstridaBBJan4646
AstridaAAFeb6060
AstridaBBFeb6060
AstridaAAMar7070
AstridaBBMar7070
AstridaAAApr1313
AstridaBBApr1313

Zie voor meer informatie voorbeeld 2 in de Above-functie.

Voorbeeld 3:  

De functie Bottom kan worden gebruikt als invoer voor de bereikfuncties. Bijvoorbeeld: RangeAvg (Bottom(Sum(Sales),1,3)).

In de argumenten voor de functie Bottom() is offset ingesteld op 1 en count ingesteld op 3. De functie retourneert de resultaten van de uitdrukking Sum(Sales) voor de drie rijen te beginnen met de rij boven de onderste rij in het kolomsegment (omdat offset=1) en de twee rijen daarboven (waar er een rij is). Deze drie waarden worden gebruikt als invoer voor de functie RangeAvg(), die het gemiddelde van de waarden in het opgegeven bereik van cijfers als resultaat geeft.

Een tabel met Customer als dimensie levert de volgende resultaten op voor de uitdrukking RangeAvg().

Voorbeeld van tabeluitvoer
Customer RangeAvg (Bottom(Sum(Sales),1,3))
Astrida 659.67
Betacab659.67
Canutility659.67
Divadip659.67

Gegevens die worden gebruikt in voorbeelden:

Monthnames:

LOAD * INLINE [

Month, Monthnumber

Jan, 1

Feb, 2

Mar, 3

Apr, 4

May, 5

Jun, 6

Jul, 7

Aug, 8

Sep, 9

Oct, 10

Nov, 11

Dec, 12

];

Sales2013:

crosstable (Month, Sales) LOAD * inline [

Customer|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec

Astrida|46|60|70|13|78|20|45|65|78|12|78|22

Betacab|65|56|22|79|12|56|45|24|32|78|55|15

Canutility|77|68|34|91|24|68|57|36|44|90|67|27

Divadip|57|36|44|90|67|27|57|68|47|90|80|94

] (delimiter is '|');

Als u de maanden in de juiste volgorde wilt sorteren bij het maken van uw grafieken, gaat u naar het tabblad Sort van de grafiekeigenschappen en schakelt u het selectievakje Expression onder Sort by in. Schrijf Monthnumber in het uitdrukkingsvak.

Meer informatie

 

Was deze pagina nuttig?

Als u problemen ervaart op deze pagina of de inhoud onjuist is – een tikfout, een ontbrekende stap of een technische fout – laat het ons weten!

Neem deel aan het Analytics Modernization Program

Remove banner from view

Moderniseer zonder uw waardevolle QlikView-apps op het spel te zetten met het Analytics Modernization Program. Klik hier voor meer informatie of om contact op te nemen: ampquestions@qlik.com