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
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
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 dataset med försäljningsdata innehåller produkter, priser och rabatter. Detta exempel tar fram det rabatterade priset för produkterna.
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
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 laddning 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 funktionen Evaluate 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!