# Evaluate Komut dosyası fonksiyonu

Evaluate(), giriş metninin geçerli bir Qlik Sense ifadesi olarak değerlendirilip değerlendirilemeyeceğini bulur ve öyleyse, bu ifadenin değerini bir dize olarak döndürür. Giriş dizesi geçerli bir ifade değilse NULL döndürülür.

Söz Dizimi:

Evaluate(expression\_text)

Dönüş verileri türü: dual

Bağımsız Değişkenler

| Bağımsız Değişken | Açıklama |
| --- | --- |
| text | Değerlendirilecek dize. |

Bilgi notuBu dize fonksiyonu grafik ifadelerinde kullanılamaz.

Fonksiyon örneği ve sonuçları

| Fonksiyon örneği | Sonuç |
| --- | --- |
| `Evaluate( 5 * 8 )` | `40` döndürür |

## Örnek - Değerlendirme temel bilgiler

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Evaluate.htm)

#### Komut dosyası

Genel bakış

Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir bölüme ekleyin.

Komut dosyası şunları içerir:

* `Example` adlı veri tablosuna yüklenen bir veri kümesi.

* Veri tablosunda `ExpressionText` adında bir alan.

* `ExpressionText` alanını değerlendirmek ve iki yeni alan döndürmek için `Evaluate` işlevini kullanan önceki bir yükleme: `Evaluated` ve `Evaluatedx4`.

Komut dosyası

```
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
];
```

Sonuçlar

Aşağıdaki alanlar veri tablosuna yüklenir:

* `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 | - | - |

`Evaluate` fonksiyonunun çıktısı, son satır hariç tüm `ExpressionText` dizeleri için değerler döndürür. `Bob` dizesi değerlendirilemez, bu nedenle işlev hiçbir değer döndürmez - NULL. Tüm satırlar değerlendirilmiştir, örneğin ikinci satırda `5` ve `3` eklenerek `8` döndürülür. `ExpressionText` dizelerinden bazıları, dize zaten bir sayı olarak değerlendirildiği için dizeyi olduğu gibi döndürür. Örneğin, `0123456789012345678` dizesi aynı sayıya değerlendirilir.

Qlik Sense, sayısal değerler için 14 basamaklı bir hassasiyet sınırına sahip olmasına rağmen `Evaluate` fonksiyonu, 18 basamaklı dizeleri bir sayı olarak değerlendirmiş ve komut dosyası içinde çarpma işlemi uygulamıştır. Bu, komut dosyası içinde çok büyük sayıları işlemek için kullanışlıdır.

## Örnek - Değerlendirme senaryosu

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Evaluate.htm)

#### Komut dosyası

Genel bakış

Satış verilerinden oluşan bir veri kümesi ürünleri, fiyatları ve indirimleri içerir. Bu örnek, ürünler için indirimli fiyatı türetir.

Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir bölüme ekleyin.

Komut dosyası şunları içerir:

* `Example` adlı veri tablosuna yüklenen bir veri kümesi.

* Veri tablosundaki şu alanlar:

  * `Product`

  * `Price`

  * `Discount %`

* `Price` ve `Discount %` değerlerini alan ve `DiscountedPrice` adında ek bir alan hesaplayan önceki bir yükleme. Bu yeni alan, fiyat eksi indirimi hesaplamak için `Evaluate` fonksiyonunu kullanır.

Komut dosyası

```
Example:
LOAD
Product,
Price,
[Discount (%)],
Price * (1 - ​​Evaluate([Discount (%)] / 100)) AS DiscountedPrice
INLINE [
Product, Price, Discount (%)
Laptop, 1000, 15
Smartphone, 800, 10
Tablet, 600, 20
Headphones, 200, 5
];
```

Sonuçlar

Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:

* `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 |

`Evaluate` fonksiyonunun çıktısı, değerleri hesaplamak için fonksiyonu nasıl kullanabileceğinizi gösterir.