# inlunarweektodate Komut dosyası ve grafik fonksiyonu

Bu fonksiyon, timestamp'ın ay haftası ile base\_date'in son milisaniyesi arasında yer alıp almadığını bulur. Qlik Sense için ay haftaları 1 Ocak haftanın ilk günü olarak tanımlanır ve yılın son haftası dışında tam olarak yedi gün içerirler.

Söz Dizimi:

InLunarWeekToDate (timestamp, base\_date, period\_no [, first\_week\_day])

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

Bilgi notu

Qlik Sense üzerinde Boolean true değeri -1 ile, false ise 0 ile temsil edilir.

`inlunarweektodate()` fonksiyonunun örnek diyagramı

`inlunarweektodate()` fonksiyonunun örnek diyagramı

`inlunarweektodate()`inlunarweektodate() fonksiyonunun örnek diyagramı ![Giriş bilgilerine göre fonksiyonun TRUE değerini döndüreceği tarihleri gösteren inlunarweektodate fonksiyonunun örnek diyagramı.](https://help.qlik.com/tr-TR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inlunarweektodate-overview.png)

`inlunarweektodate()` fonksiyonu, ay yılı haftasının bitiş noktası işlevi görür. Buna karşılık, `inlunarweek()` fonksiyonu `base_date` tarihinin hangi ay yılı haftasına denk geldiğini belirler. Örneğin, `base_date` değeri 5 Ocak olduğunda 1 Ocak ile 5 Ocak arasındaki tüm zaman damgaları `TRUE` Boole sonucunu döndürürken, 6 ve 7 Ocak ile sonrasına denk gelen tarihler `FALSE` Boole sonucunu döndürür.

Bağımsız Değişkenler

| Bağımsız Değişken | Açıklama |
| --- | --- |
| timestamp | base\_date ile karşılaştırmak istediğiniz tarih. |
| base\_date | Ay haftasını değerlendirmek için kullanılan tarih. |
| period\_no | Ay haftası period\_no ile kaydırılabilir. period\_no bir tamsayı olup, burada 0 değeri base\_date içeren ay haftasını belirtir. period\_no içindeki negatif değerler önceki ay haftalarını; pozitif değerler ise sonraki ay haftalarını gösterir. |
| first\_week\_day | Kaydırma değeri sıfırdan büyük ya da küçük olabilir. Bu değer, belirtilen gün sayısı ve/veya bir günün kesirleri ile yılın başını değiştirir. |

## inlunarweektodate ne zaman kullanılmalı?

`inlunarweektodate()` fonksiyonu bir Boole sonucu döndürür. Bu tür fonksiyonlar genellikle bir IF ifadesinde koşul olarak kullanılır. Kullanıcı, değerlendirilen tarihin söz konusu haftanın belirli bir segmentine denk gelip gelmediğinde bağlı olarak hesaplamanın bir toplama veya hesaplama döndürmesini istediğinde `inlunarweektodate()` fonksiyonu kullanılır.

Örneğin, belirli bir haftada belirli bir tarihe kadar (bu tarih de dahil) üretilen tüm ekipmanları tanımlamak için `inlunarweektodate()` fonksiyonu kullanılabilir.

Fonksiyon örnekleri

| Örnek | Sonuç |
| --- | --- |
| `inlunarweektodate('01/12/2013', '01/13/2013',<br>						0)` | `timestamp` değeri (01/12/2013) 01/08/2013 haftasının 01/13/2013 tarihine kadar olan bölümüne denk geldiğinden `TRUE` döndürür. |
| `inlunarweektodate('01/12/2013', '01/11/2013',<br>						0)` | İki tarih de aynı ay yılı haftasında 01/12/2012 tarihinden önce olsa da, `timestamp` değeri `base_date` değerinden sonraya denk geldiğinden `FALSE` döndürür. |
| `inlunarweektodate('01/12/2006', '01/05/2006',<br>						1)` | `TRUE` döndürür. `period_no` için 1 değerinin belirtilmesi `base_date` değerini bir hafta ileri kaydırır ve böylece `timestamp` değeri ay haftası bölümüne denk gelir. |

`inlunarweektodate()` fonksiyonu genellikle şu fonksiyonlarla birlikte kullanılır:

İlgili fonksiyonlar

| Fonksiyon | Etkileşim |
| --- | --- |
| [lunarweekname Komut dosyası ve grafik fonksiyonu](https://help.qlik.com/tr-TR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/lunarweekname.htm) | Bu fonksiyon, giriş tarihinin içinde bulunduğu yılın ay yılındaki hafta numarasını belirlemek için kullanılır. |

## Bölgesel ayarlar

Aksi belirtilmedikçe bu konudaki örneklerde aşağıdaki tarih formatı kullanılır: MM/DD/YYYY. Tarih formatı, veri yükleme kodunuzda `SET DateFormat` deyiminde belirtilir. Varsayılan tarih formatı, bölgesel ayarlarınız ve diğer unsurlar nedeniyle sisteminizde farklı olabilir. Aşağıdaki örneklerdeki formatları ihtiyaçlarınıza uyacak şekilde değiştirebilirsiniz. Dilerseniz yükleme kodunuzdaki formatları aşağıdaki örneklere uyacak şekilde değiştirebilirsiniz. Daha fazla bilgi için bkz. [Uygulamalar ve komut dosyaları için bölgesel ayarları değiştirme](https://help.qlik.com/tr-TR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/regional-settings-in-apps.htm).

Uygulamalardaki varsayılan bölgesel ayarlarda kullanıcı profili temel alınır. Bu bölgesel format ayarları, Qlik Cloud kullanıcı arayüzünde görüntülenen dil ayarlarıyla ilgili değildir. Qlik Cloud, kullandığınız tarayıcıyla aynı dilde görüntülenir.

Bir uygulama oluşturucuysanız, oluşturduğunuz uygulamalar için varsayılan bölgeyi ayarlayabilirsiniz. Daha fazla bilgi için şuraya bakın: [Qlik Cloud Analytics içinde uygulama ve komut dosyası oluşturmak için tercih ettiğiniz bölgesel ayarları belirleme](https://help.qlik.com/tr-TR/cloud-services/Subsystems/Hub/Content/Sense_Hub/UserInterface/Languages.htm#Setting).

## Örnek 1 – Ek bağımsız değişken yok

#### Yükleme kodu ve sonuçlar

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:

* Ocak ayının işlemlerini içeren ve `Transactions` adlı tabloya yüklenen bir veri kümesi. Varsayılan `DateFormat` sistem değişkeni AA/GG/YYYY kullanılmaktadır.

* Ay yılı haftasında 10 Ocak tarihine kadar gerçekleşen işlemleri belirleyen bir `in_lunar_week_to_date` alanı oluşturun.

Komut dosyası

```
SET DateFormat='MM/DD/YYYY';

Transactions:
    Load
        *,
        inlunarweektodate(date,'01/10/2022', 0) as in_lunar_week_to_date
        ;
Load
*
Inline 
[
id,date,amount
8188,'1/10/2022',37.23
8189,'1/17/2022',17.17
8190,'1/26/2022',88.27
8191,'1/12/2022',57.42
8192,'1/19/2022',53.80
8193,'1/21/2022',82.06
8194,'1/1/2022',40.39
8195,'1/27/2022',87.21
8196,'1/11/2022',95.93
8197,'1/29/2022',45.89
8198,'1/31/2022',36.23
8199,'1/18/2022',25.66
8200,'1/23/2022',82.77
8201,'1/15/2022',69.98
8202,'1/4/2022',76.11
];
```

Sonuçlar

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

* `date`

* `in_lunar_week_to_date`

Sonuçlar tablosu

| tarih | in\_lunar\_week\_to\_date |
| --- | --- |
| 1/1/2022 | 0 |
| 1/4/2022 | 0 |
| 1/10/2022 | -1 |
| 1/11/2022 | 0 |
| 1/12/2022 | 0 |
| 1/15/2022 | 0 |
| 1/17/2022 | 0 |
| 1/18/2022 | 0 |
| 1/19/2022 | 0 |
| 1/21/2022 | 0 |
| 1/23/2022 | 0 |
| 1/26/2022 | 0 |
| 1/27/2022 | 0 |
| 1/29/2022 | 0 |
| 1/31/2022 | 0 |

`inlunarweektodate()` fonksiyonu, ek bağımsız değişken yok

`inlunarweektodate()` fonksiyonu, ek bağımsız değişken yok

`inlunarweektodate()`inlunarweektodate() fonksiyonu, ek bağımsız değişken yok ![Giriş bilgilerine göre fonksiyonun TRUE değerini döndüreceği tarih aralığını gösteren inlunarweektodate fonksiyonunun kullanım örneği.](https://help.qlik.com/tr-TR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inlunarweektodate-example-no-additional-arguments.png)

`in_lunar_week_to_date` alanı, önceki yükleme deyiminde `inlunarweektodate()` fonksiyonu kullanılarak ve fonksiyonun bağımsız değişkenleri olarak `date` alanı, `base_date` değerimiz olarak 10 Ocak için sabit kodlanmış bir tarih ve 0 fark değeri geçirilerek oluşturulur.

Ay yılı haftaları 1 Ocak'ta başladığından, 10 Ocak tarihi 8 Ocak'ta başlayan ay yılı haftasına denk gelir; ayrıca `inlunarweektodate()` fonksiyonunu kullandığımızdan, söz konusu ay yılı haftası 10 Ocak'ta sona erer. Bu nedenle, Ocak ayında bu iki tarih arasında gerçekleşen işlemler `TRUE` Boole değerini döndürür. Bu, sonuçlar tablosunda doğrulanır.

## Örnek 2 – period\_no

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

#### Yükleme kodu ve sonuçlar

Genel bakış

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

Komut dosyası ilk örnek ile aynı veri kümesini ve senaryoyu içerir. Öte yandan bu örnekteki görev, işlemlerin 1 Ocak tarihine kadar ay yılı haftasından iki hafta sonra gerçekleşip gerçekleşmediğini belirleyen bir `2_lunar_weeks_later` alanı oluşturmaktır.

Komut dosyası

```
SET DateFormat='MM/DD/YYYY';
Transactions:
    Load
        *,
        inlunarweektodate(date,'01/10/2022', 2) as [2_lunar_weeks_later]
        ;
Load
*
Inline
[
id,date,amount
8188,'1/10/2022',37.23
8189,'1/17/2022',17.17
8190,'1/26/2022',88.27
8191,'1/12/2022',57.42
8192,'1/19/2022',53.80
8193,'1/21/2022',82.06
8194,'1/1/2022',40.39
8195,'1/27/2022',87.21
8196,'1/11/2022',95.93
8197,'1/29/2022',45.89
8198,'1/31/2022',36.23
8199,'1/18/2022',25.66
8200,'1/23/2022',82.77
8201,'1/15/2022',69.98
8202,'1/4/2022',76.11
];
```

Sonuçlar

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

* `date`

* `2_lunar_weeks_later`

Sonuçlar tablosu

| tarih | 2\_lunar\_weeks\_later |
| --- | --- |
| 1/1/2022 | 0 |
| 1/4/2022 | 0 |
| 1/10/2022 | 0 |
| 1/11/2022 | 0 |
| 1/12/2022 | 0 |
| 1/15/2022 | 0 |
| 1/17/2022 | 0 |
| 1/18/2022 | 0 |
| 1/19/2022 | 0 |
| 1/21/2022 | 0 |
| 1/23/2022 | -1 |
| 1/26/2022 | 0 |
| 1/27/2022 | 0 |
| 1/29/2022 | 0 |
| 1/31/2022 | 0 |

`inlunarweektodate()` fonksiyonu, period\_no örneği

`inlunarweektodate()` fonksiyonu, period\_no örneği

`inlunarweektodate()`inlunarweektodate() fonksiyonu, period\_no örneği ![Giriş bilgilerine göre fonksiyonun TRUE değerini döndüreceği tarih aralığını gösteren inlunarweektodate fonksiyonunun kullanım örneği.](https://help.qlik.com/tr-TR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inlunarweektodate-example-period-no.png)

Bu örnekte, `inlunarweektodate()` fonksiyonu 10 Ocak tarihine kadar olan ay yılı haftasının üç güne eşit olduğunu (8, 9, 10 Ocak) belirler. Offset bağımsız değişkeni olarak değeri 2 olan `period_no` kullanıldığından, bu ay yılı haftası 14 gün kaydırılır. Dolayısıyla, bu üç günlük ay yılı haftasını 22, 23 ve 24 Ocak tarihlerini içerecek şekilde tanımlar. 22 Ocak ile 24 Ocak arasında gerçekleşen tüm işlemleri `TRUE` Boole sonucunu döndürür.

## Örnek 3 – first\_week\_day

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

#### Yükleme kodu ve sonuçlar

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:

* İlk örnek ile aynı veri kümesi ve senaryo.

* Varsayılan `DateFormat` sistem değişkeni AA/GG/YYYY kullanılmaktadır.

* Değeri 3 olan `first_week_date` bağımsız değişkeni. Bu, ay yılı haftalarını 3 Ocak'ta başlayacak şekilde ayarlar.

Komut dosyası

```
SET DateFormat='MM/DD/YYYY'; 

Transactions:
    Load
        *,
        inlunarweek(date,'01/10/2022', 0,3) as in_lunar_week_to_date
        ;
Load
*
Inline
[
id,date,amount
8188,'1/10/2022',37.23
8189,'1/17/2022',17.17
8190,'1/26/2022',88.27
8191,'1/12/2022',57.42
8192,'1/19/2022',53.80
8193,'1/21/2022',82.06
8194,'1/1/2022',40.39
8195,'1/27/2022',87.21
8196,'1/11/2022',95.93
8197,'1/29/2022',45.89
8198,'1/31/2022',36.23
8199,'1/18/2022',25.66
8200,'1/23/2022',82.77
8201,'1/15/2022',69.98
8202,'1/4/2022',76.11
];
```

Sonuçlar

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

* `date`

* `in_lunar_week_to_date`

Sonuçlar tablosu

| tarih | in\_lunar\_week\_to\_date |
| --- | --- |
| 1/1/2022 | 0 |
| 1/4/2022 | -1 |
| 1/10/2022 | -1 |
| 1/11/2022 | 0 |
| 1/12/2022 | 0 |
| 1/15/2022 | 0 |
| 1/17/2022 | 0 |
| 1/18/2022 | 0 |
| 1/19/2022 | 0 |
| 1/21/2022 | 0 |
| 1/23/2022 | 0 |
| 1/26/2022 | 0 |
| 1/27/2022 | 0 |
| 1/29/2022 | 0 |
| 1/31/2022 | 0 |

`inlunarweektodate()` fonksiyonu, first\_week\_day örneği

`inlunarweektodate()` fonksiyonu, first\_week\_day örneği

`inlunarweektodate()`inlunarweektodate() fonksiyonu, first\_week\_day örneği ![Giriş bilgilerine göre fonksiyonun TRUE değerini döndüreceği tarih aralığını gösteren inlunarweektodate fonksiyonunun kullanım örneği.](https://help.qlik.com/tr-TR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inlunarweektodate-example-first-week-date.png)

Bu örnekte, `inlunarweek()` fonksiyonunda değeri 3 olan `the first_week_date` bağımsız değişkeni kullanıldığından ilk ay yılı haftası 3 Ocak ile 10 Ocak arası olacaktır. 10 Ocak aynı zamanda `base_date` olduğundan, bu iki tarih arasına denk gelen tüm işlemler `TRUE` Boole değerini döndürür.

## Örnek 4 – Grafik nesnesi örneği

#### Komut dosyası ve grafik ifadesi

Genel bakış

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

Komut dosyası ilk örnek ile aynı veri kümesini ve senaryoyu içerir.

Ancak bu örnekte uygulamaya değiştirilmemiş veri kümesi yüklenmektedir. İşlemlerin 10 Ocak tarihine kadar olan ay yılı haftasında gerçekleşip gerçekleşmediğini belirleyen hesaplama, uygulamanın grafik nesnesinde bir hesaplama olarak oluşturulur.

Komut dosyası

```
SET DateFormat='MM/DD/YYYY';

Transactions: 
Load
*
Inline
[
id,date,amount
8188,'1/10/2022',37.23
8189,'1/17/2022',17.17
8190,'1/26/2022',88.27
8191,'1/12/2022',57.42
8192,'1/19/2022',53.80
8193,'1/21/2022',82.06
8194,'1/1/2022',40.39
8195,'1/27/2022',87.21
8196,'1/11/2022',95.93
8197,'1/29/2022',45.89
8198,'1/31/2022',36.23
8199,'1/18/2022',25.66
8200,'1/23/2022',82.77
8201,'1/15/2022',69.98
8202,'1/4/2022',76.11
];
```

Sonuçlar

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

Şu hesaplamayı oluşturun:

=inlunarweektodate(date,'01/10/2022', 0)

Sonuçlar tablosu

| tarih | =inlunarweektodate(date,'01/10/2022', 0) |
| --- | --- |
| 1/1/2022 | 0 |
| 1/4/2022 | 0 |
| 1/10/2022 | -1 |
| 1/11/2022 | 0 |
| 1/12/2022 | 0 |
| 1/15/2022 | 0 |
| 1/17/2022 | 0 |
| 1/18/2022 | 0 |
| 1/19/2022 | 0 |
| 1/21/2022 | 0 |
| 1/23/2022 | 0 |
| 1/26/2022 | 0 |
| 1/27/2022 | 0 |
| 1/29/2022 | 0 |
| 1/31/2022 | 0 |

inlunarweektodate() fonksiyonu, grafik nesnesi örneği

inlunarweektodate() fonksiyonu, grafik nesnesi örneği

inlunarweektodate()inlunarweektodate() fonksiyonu, grafik nesnesi örneği ![Bir işlemin 10 Ocak tarihini içeren ay yılı haftasında gerçekleşip gerçekleşmediğini belirleyen bir grafik ifadesinin kullanıldığı, inlunarweektodate fonksiyonu kullanımının örnek diyagramı.](https://help.qlik.com/tr-TR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inlunarweektodate-example-chart-object.png)

in\_lunar\_week\_to\_date hesaplaması, grafik nesnesinde inlunarweektodate() fonksiyonu kullanılarak ve fonksiyonun bağımsız değişkenleri olarak tarih alanı, base\_date öğemiz olarak 10 Ocak için sabit kodlanmış bir tarih ve fark için 0 geçirilerek oluşturulur.

Ay yılı haftaları 1 Ocak'ta başladığından, 10 Ocak tarihi 8 Ocak'ta başlayan ay yılı haftasına denk gelir. Ayrıca inlunarweektodate() fonksiyonunu kullandığımızdan, söz konusu ay yılı haftası 10 Ocak'ta sona erer. Bu nedenle, Ocak ayında bu iki tarih arasında gerçekleşen işlemler TRUE Boole değerini döndürür. Bu, sonuçlar tablosunda doğrulanır.

## Örnek 5 – Senaryo

#### Komut dosyası ve grafik ifadeleri

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:

* Products adlı tabloya yüklenen bir veri kümesi.

* Ürün kimliği, üretim tarihi ve maliyet fiyatı bilgileri.

Ekipman hatası nedeniyle 12 Ocak haftasında üretilen ürünlerin kusurlu olduğu belirlenmiştir. Sorun 13 Ocak'ta çözülmüştür. Son kullanıcı, üretilen hangi ürünlerin ‘kusurlu’ veya ‘kusursuz’ durumda olduğunu ve o hafta üretilen ürünlerin maliyetini haftaya göre görüntüleyen bir grafik nesnesi istemektedir.

Komut dosyası

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff]';

Products:
Load
*
Inline 
[
product_id,manufacture_date,cost_price
8188,'01/02/2022 12:22:06',37.23
8189,'01/05/2022 01:02:30',17.17
8190,'01/06/2022 15:36:20',88.27
8191,'01/08/2022 10:58:35',57.42
8192,'01/09/2022 08:53:32',53.80
8193,'01/10/2022 21:13:01',82.06
8194,'01/11/2022 00:57:13',40.39
8195,'01/12/2022 09:26:02',87.21
8196,'01/13/2022 15:05:09',95.93
8197,'01/14/2022 18:44:57',45.89
8198,'01/15/2022 06:10:46',36.23
8199,'01/16/2022 06:39:27',25.66
8200,'01/17/2022 10:44:16',82.77
8201,'01/18/2022 18:48:17',69.98
8202,'01/26/2022 04:36:03',76.11
8203,'01/27/2022 08:07:49',25.12
8204,'01/28/2022 12:24:29',46.23
8205,'01/30/2022 11:56:56',84.21
8206,'01/30/2022 14:40:19',96.24
8207,'01/31/2022 05:28:21',67.67
];
```

Sonuçlar

Aşağıdakileri yapın:

1. Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun.

2. Hafta adlarını gösteren bir boyut oluşturun:

   =weekname(manufacture\_date)

3. Sonra, hangi ürünlerin kusurlu ve hangilerinin kusursuz olduğunu belirlemek için inlunarweektodate() fonksiyonunu kullanan bir boyut oluşturun:

   =if(inlunarweektodate(manufacture\_date,makedate(2022,01,12),0),'Defective','Faultless')

4. Ürünlerin cost\_price değerini toplamak için bir hesaplama oluşturun:

   =sum(cost\_price)

5. Hesaplamanın Sayı Biçimini Para olarak ayarlayın.

Sonuçlar tablosu

| =lunarweekname(manufacture\_date) | =if(InLunarWeekToDate(manufacture\_date,makedate(2022,01,12),0),'Defective','Faultless') | =Sum(cost\_price) |
| --- | --- | --- |
| 2022/01 | Kusursuz | $142.67 |
| 2022/02 | Kusurlu | $320.88 |
| 2022/02 | Kusursuz | $141.82 |
| 2022/03 | Kusursuz | $214.64 |
| 2022/04 | Kusursuz | $147.46 |
| 2022/05 | Kusursuz | $248.12 |

inlunarweektodate() fonksiyonu, ürünlerin her birinin üretim tarihlerini değerlendirirken mantıksal bir değer döndürür. TRUE Boole değerini döndürenler için ürünleri ‘Defective’ olarak işaretler. FALSE döndüren ve dolayısıyla 12 Ocak'a kadarki hafta içinde yapılmamış olan ürünler ‘Faultless’ olarak işaretlenir.