# if Komut dosyası ve grafik fonksiyonu

if fonksiyonu, fonksiyon ile sağlanan koşulun True ya da False olarak değerlendirilmesine göre bir değer döndürür.

[If Function](https://play.vidyard.com/qnkaRddq32LnAGUTTDGdLA)

Söz Dizimi:

if(condition , then [, else])

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

Bağımsız Değişkenler

| Bağımsız Değişken | Açıklama |
| --- | --- |
| condition | Mantıksal olarak yorumlanan ifade. |
| then | Herhangi bir türde olabilen ifade. condition koşulu True ise if fonksiyonu then ifadesinin değerini döndürür. |
| else | Herhangi bir türde olabilen ifade. condition koşulu False ise if fonksiyonu else ifadesinin değerini döndürür.<br><br>Bu parametre isteğe bağlıdır. condition, False olursa else belirtmediyseniz NULL değeri döndürülür. |

Örnek: Grafik ifadeleri

| Örnek | Sonuç |
| --- | --- |
| `if( Amount>=<br>						0, 'OK', 'Alarm' )` | Bu ifade, tutarın pozitif bir sayı (0 veya daha büyük) olup olmadığını test eder ve öyleyse `OK` döndürür. Miktar 0'dan küçükse `Alarm` sonucu döndürülür. |

Bu konudaki bazı örnekler satır içi yüklemeler kullanmaktadır. [Veri yüklemek için satır içi yüklemeler kullanma](https://help.qlik.com/tr-TR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm)

## Örnek - if kullanan kod ekleme

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/if.htm)

#### Komut dosyası

Genel bakış

If, değişkenler de dahil olmak üzere diğer yöntemleri ve nesneleri içeren bir komut dosyasında kullanılabilir. Bu örnekte `threshold` değişkeni kullanılmakta ve veri modelinde eşiğe dayalı yeni bir alan yer almaktadır.

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:

* Şu ada sahip iki veri tablosuna yüklenen bir veri kümesi:

  * `Transactions`: İşlem alanlarını içerir

  * `Transaction_Buckets`: Bir `transaction_id` alanı içerir ve `transaction_amount` alanını `threshold` değişken ayarıyla karşılaştırmak için `if` fonksiyonunu kullanarak yeni bir `[Compared to Threshold]` alanı oluşturur.

* `100` olarak ayarlanmış bir `threshold` değişken deyimi.

Komut dosyası

```
Transactions:
Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, customer_id, size, color_code
3750, 20180830, 23.56, 2, 2038593, L, Red
3751, 20180907, 556.31, 6, 203521, m, orange
3752, 20180916, 5.75, 1, 5646471, S, blue
3753, 20180922, 125.00, 7, 3036491, l, Black
3754, 20180922, 484.21, 13, 049681, xs, Red
3756, 20180922, 59.18, 2, 2038593, M, Blue
3757, 20180923, 177.42, 21, 203521, XL, Black
];
 
set threshold = 100;
					
/* Create new table called Transaction_Buckets 
Compare transaction_amount field from Transaction table to threshold of 100.
Output results into a new field called Compared to Threshold
 */

Transaction_Buckets:
Load
   transaction_id,
   If(transaction_amount > $(threshold),'Greater than $(threshold)','Less than $(threshold)') as [Compared to Threshold]
Resident Transactions;
```

Sonuçlar

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

* `transaction_id`

* `[Compared to Threshold]`

Komut dosyasındaki ifif fonksiyonunun kullanılmasından elde edilen çıktıyı gösteren sonuçlar tablosu.

| işlem\_kimliği | Eşik ile Karşılaştırılan |
| --- | --- |
| 3750 | 100'den küçük |
| 3751 | 100'den büyük |
| 3752 | 100'den küçük |
| 3753 | 100'den büyük |
| 3754 | 100'den büyük |
| 3756 | 100'den küçük |
| 3757 | 100'den büyük |

## Örnek - if kullanarak ürün verilerini değerlendirin

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/if.htm)

#### Grafik ifadesi

Genel bakış

Bir veri kümesi ürün verilerini içerir.Ürünleri sarf edilebilir olup olmadıklarına göre tanımlamak ve kategorize etmek istersiniz.

Komut dosyası

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:

  * `ProductID`

  * `ProductName`

  * `ProductCategory`

```
Example:
LOAD * INLINE [
ProductID, ProductName, ProductCategory
1, "Laptop", "Electronics"
2, "Banana", "Fruits"
3, "Shampoo", "Toiletries"
4, "TV", "Electronics"
5, "Apple", "Fruits"
];
```

Sonuçlar

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

* `ProductID`

* `ProductName`

* `ProductCategory`

Şu hesaplamayı oluşturun:

* `=If(ProductCategory =  'Toiletries' or ProductCategory =  'Fruits', 'Consumable', 'Other')`, gerekli değerleri döndürmek için.

Sonuçlar tablosu

| ProductID | ProductName | ProductCategory | If(ProductCategory = 'Toiletries' or ProductCategory = 'Fruits', 'Consumable', 'Other') |
| --- | --- | --- | --- |
| 1 | Laptop | Electronics | Other |
| 2 | Banana | Fruits | Consumable |
| 3 | Shampoo | Toiletries | Consumable |
| 4 | TV | Electronics | Other |
| 5 | Apple | Fruits | Consumable |

Sonuçlardan, `if` fonksiyonunun ifadeyi değerlendirdiğini ve gereken değerleri döndürdüğünü görebilirsiniz. Örneğin, `Fruits` veya `Toiletries` kategorisindeki ürünler `Consumable` olarak sınıflandırılır.

## Örnek - if kullanarak müşteri verilerini değerlendirin ve sınıflandırın

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/if.htm)

#### Grafik ifadesi

Genel bakış

Bir veri kümesi müşteri verilerini içerir. Bölge ve sektör kategorisi sınıflandırma gereksinimlerinizi karşılayan müşterileri belirlemek ve kategorize etmek istiyorsunuz.

Komut dosyası

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:

  * `ClientID`

  * `ClientName`

  * `Region`

  * `Industry`

```
Example:
LOAD * INLINE [
ClientID, ClientName, Region, Industry
1, "Acme Corp", "North", "Manufacturing"
2, "Beta Ltd", "East", "Technology"
3, "Gamma Inc", "West", "Retail"
4, "Delta LLC", "North", "Technology"
5, "Epsilon GmbH", "South", "Healthcare"
];
```

Sonuçlar

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

* `ClientID`

* `ClientName`

* `Region`

* `Industry`

Şu hesaplamayı oluşturun:

* `=If((Region = 'North' or Region = 'East') AND (Industry= 'Technology' or Industry = 'Manufacturing'), 'Target Segment', 'Secondary Segment')`, gerekli değeri döndürmek için.

Sonuçlar tablosu

| ClientID | ClientName | Region | Industry | If((Region = 'North' or Region = 'East') AND (Industry= 'Technology' or Industry = 'Manufacturing'), 'Target Segment', 'Secondary Segment') |
| --- | --- | --- | --- | --- |
| 1 | Acme Corp | North | Manufacturing | Target Segment |
| 2 | Beta Ltd | East | Technology | Target Segment |
| 3 | Gamma Inc | West | Retail | Secondary Segment |
| 4 | Delta LLC | North | Technology | Target Segment |
| 5 | Epsilon GmbH | Sound | Healthcare | Secondary Segment |

Sonuçlardan, `if` fonksiyonunun ifadeyi değerlendirdiğini ve gereken değerleri döndürdüğünü görebilirsiniz. Örneğin, `Acme Corp`, `North` veya `East` bölgesinin ve `Manufacturing` ya da `Technology` endüstrisinin bir parçası olmak için gereken şartları karşıladığından `Target Segment` olarak sınıflandırılır.

## Örnek - if kullanarak olay verilerini değerlendirin

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/if.htm)

#### Grafik ifadesi

Genel bakış

Olay raporlarından oluşan bir veri kümesini kategorilere ayırmak için if fonksiyonunu kullanın.

Komut dosyası

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:

  * Date

  * Location

  * Incidents

```
Example:
LOAD * inline [
Date, Location, Incidents
1/3/2016, Beijing, 0
1/3/2016, Boston, 12
1/3/2016, Stockholm, 3
1/3/2016, Toronto, 0
1/4/2016, Beijing, 0
1/4/2016, Boston, 8];
```

Sonuçlar

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

* Tarih

* Konum

* Olaylar

Aşağıdaki hesaplanan boyutları oluşturun:

* =if(Incidents&gt;=10, 'Critical', 'Ok' )

* =if(Incidents&gt;=10, 'Critical', If( Incidents&gt;=1 and Incidents&lt;10, 'Warning', 'Ok'))

Sonuçlar tablosu

| Date | Location | Incidents | if(Incidents&gt;=10, 'Critical', 'Ok' ) | if(Incidents&gt;=10, 'Critical', If( Incidents&gt;=1 and Incidents&lt;10, 'Warning', 'Ok')) |
| --- | --- | --- | --- | --- |
| 1/3/2016 | Beijing | 0 | Ok | Ok |
| 1/3/2016 | Boston | 12 | Critical | Critical |
| 1/3/2016 | Stockholm | 3 | Ok | Warning |
| 1/3/2016 | Toronto | 0 | Ok | Ok |
| 1/4/2016 | Beijing | 0 | Ok | Ok |
| 1/4/2016 | Boston | 8 | Ok | Warning |

## Örnek - if kullanarak tarihleri kategorize edin

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/if.htm)

#### Grafik ifadesi

Genel bakış

Tarihleri kategorize etmek için if fonksiyonunu kullanın.

Komut dosyası

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

```
SET FirstWeekDay=0;
Load 
Date(MakeDate(2022)+RecNo()-1) as Date
Autogenerate 14;
```

Sonuçlar

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

* Date

Aşağıdaki hesaplanan boyutları oluşturun:

* WeekDay(Date)

* =If(WeekDay(Date)&gt;=5,'WeekEnd','Normal Day')

Sonuçlar tablosu

| Date | WeekDay(Date) | If(WeekDay(Date)&gt;=5,'WeekEnd','Normal Day') |
| --- | --- | --- |
| 1/1/2022 | Sat | WeekEnd |
| 1/2/2022 | Sun | WeekEnd |
| 1/3/2022 | Mon | Normal Day |
| 1/4/2022 | Tue | Normal Day |
| 1/5/2022 | Wed | Normal Day |
| 1/6/2022 | Thu | Normal Day |
| 1/7/2022 | Fri | Normal Day |
| 1/8/2022 | Sat | WeekEnd |
| 1/9/2022 | Sun | WeekEnd |
| 1/10/2022 | Mon | Normal Day |
| 1/11/2022 | Tue | Normal Day |
| 1/12/2022 | Wed | Normal Day |
| 1/13/2022 | Thu | Normal Day |
| 1/14/2022 | Fri | Normal Day |