Evaluate() undersöker om indatatexten kan utvärderas som ett giltigt Qlik Sense-uttryck och returnerar i så fall värdet för uttrycket som en sträng. Om indatasträngen inte är ett giltigt uttryck returneras NULL.
Syntax:
Evaluate(expression_text)
Returnerad datatyp: dual
Argument
Argument
Beskrivning
text
Sträng som ska utvärderas.
Anteckning om informationDenna strängfunktion kan inte användas i diagramuttryck.
Funktionsexempel och resultat
Funktionsexempel
Resultat
Evaluate( 5 * 8 )
Returnerar 40
Exempel – grunderna i utvärdering
Översikt
Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.
Laddningsskriptet innehåller:
En datauppsättning som läses in i en datatabell som heter Example.
Ett fält i datatabellen heter ExpressionText.
En föregående laddning som använder funktionen Evaluate för att utvärdera fältet ExpressionText och returnera två nya fält: Evaluated och Evaluatedx4.
Laddningsskript
Example:
Load
ExpressionText
, Evaluate(ExpressionText) as Evaluated
, Evaluate(ExpressionText)*4 as Evaluatedx4
;
Load * Inline
[ExpressionText
4
5+3
100/5
123*2
329-9
0123456789012345678
1234567890123456789
0123456.5512
0123456.5512479994578952364859346469
Today()
Bob
];
Resultat
Följande fält laddas i datatabellen:
ExpressionText
Evaluated
Evaluatedx4
Results table
ExpressionText
Evaluated
Evaluatedx4
4
4
16
5+3
8
32
100/5
20
80
123*2
246
984
329-9
320
1280
0123456789012345678
0123456789012345678
4.9382715604938e+17
1234567890123456789
1234567890123456789
4.9382715604938e+18
0123456.5512
0123456.5512
493826.2048
0123456.5512479994578952364859346469
0123456.5512479994578952364859346469
493826.204992
Today()
11/5/2024
182404
Bob
-
-
Utdata från Evaluate-funktionen returnerar värden för alla ExpressionText-strängar utom den sista raden. Strängen Bob kan inte utvärderas, så funktionen returnerar inget värde – NULL. Alla rader har utvärderats, till exempel lägger den andra raden till 5 och 3 för att få 8. Vissa av ExpressionText-strängarna returnerar strängen som den är eftersom strängen redan utvärderas till ett tal. Till exempel utvärderas strängen 0123456789012345678 till samma tal.
Även om Qlik Sense har en 14-siffrig precisionsgräns för numeriska värden, utvärderade Evaluate-funktionen 18-siffriga strängar som ett tal och tillämpade multiplikation i skriptet. Detta är användbart för att hantera mycket stora tal i skriptet.
Exempel – Utvärderingsscenario
Översikt
En dataupsättning med försäljningsdata innehåller produkter, priser och rabatter. Detta exempel tar fram det rabatterade priset för produkterna.
Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.
Laddningsskriptet innehåller:
En datauppsättning som läses in i en datatabell som heter Example.
Följande fält i datatabellen:
Product
Price
Discount %
En föregående inläsning som tar värdena Price och Discount % och beräknar ett ytterligare fält som heter DiscountedPrice. Det här nya fältet använder Evaluate-funktionen för att beräkna priset minus rabatten.
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
Product
Price
Discount %
DiscountedPrice
Results table
Product
Price
Discount %
DiscountedPrice
Headphones
200
5
190
Tablet
600
20
480
Smartphone
800
10
720
Laptop
1000
15
850
Utdata från Evaluate-funktionen visar hur du kan använda funktionen för att beräkna värden.
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!