# weekstart - Komut dosyası ve grafik fonksiyonu

Bu fonksiyon, date değerini içeren takvim haftasının ilk gününün (Pazartesi) ilk milisaniyesinin zaman damgasına karşılık gelen bir değer döndürür. Varsayılan çıktı biçimi kodda ayarlanan DateFormat olur.

Söz Dizimi:

WeekStart(timestamp [, period\_no [, first\_week\_day ]])

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

`weekstart()` fonksiyonu tarihin hangi haftanın içinde bulunduğunu belirler. Ardından söz konusu haftanın ilk milisaniyesi için tarih biçiminde bir zaman damgası döndürür. Haftanın ilk günü `FirstWeekDay` ortam değişkeni tarafından belirlenir. Ancak bu, `weekstart()` fonksiyonundaki `first_week_day` bağımsız değişkeni tarafından geçersiz kılınabilir.

Bağımsız Değişkenler

| Bağımsız Değişken | Açıklama |
| --- | --- |
| timestamp | Değerlendirilecek tarih veya zaman damgası. |
| period\_no | shift bir tamsayı olup, burada 0 değeri date içeren haftayı belirtir. Shift içindeki negatif değerler önceki haftaları; pozitif değerler ise sonraki haftaları gösterir. |
| first\_week\_day | Haftanın başladığı günü belirtir. Atlandığı takdirde, FirstWeekDay değişkeninin değeri kullanılır.<br><br>Olabilecek first\_week\_day değerleri Pazartesi için 0, Salı için 1, Çarşamba için 2, Perşembe için 3, Cuma için 4, Cumartesi için 5 ve Pazar için 6'dır.<br><br>Sistem değişkeni hakkında daha fazla bilgi için bkz. [FirstWeekDay](https://help.qlik.com/tr-TR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm). |

## Ne zaman kullanılır?

Genel olarak `weekstart()` fonksiyonu, kullanıcının hesaplamada haftanın şu ana kadar geçen kısmını kullanmak istemesi durumunda, ifadenin içinde kullanılır. Örneğin, kullanıcı haftanın şu ana kadar geçen süresinde kazanılan toplam ücreti hesaplamak istediğinde kullanılabilir.

Aşağıdaki örneklerde varsayılanlar:

```
SET FirstWeekDay=0;
```

Fonksiyon örnekleri

| Örnek | Sonuç |
| --- | --- |
| `weekstart('01/12/2013')` | 01/07/2013 döndürür. |
| `weekstart('01/12/2013', -1 )` | 11/31/2012 döndürür. |
| `weekstart('01/12/2013', 0, 1)` | 01/08/2013 döndürür. |

## Bölgesel ayarlar

Aksi belirtilmedikçe bu konudaki örneklerde aşağıdaki tarih formatı kullanılır: AA/GG/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.

Uygulamalardaki bölgesel ayarlarda Qlik Sense'in yüklü olduğu bilgisayarın veya sunucunun bölgesel sistem ayarları temel alınır. Eriştiğiniz Qlik Sense sunucusu İsveç olarak ayarlıysa, Veri yükleme düzenleyicisi tarihler, saat ve para birimi için İsveç bölgesel ayarlarını kullanır. Bu bölgesel format ayarları, Qlik Sense kullanıcı arayüzünde görüntülenen dil ayarlarıyla ilgili değildir. Qlik Sense, kullandığınız tarayıcıyla aynı dilde görüntülenir.

Örnekler:

Haftalar ve hafta numaraları için ISO ayarlarını istiyorsanız, şu komut dosyasına sahip olduğunuzdan emin olun:

```
Set DateFormat   ='YYYY-MM-DD'; 
Set FirstWeekDay =0;    // Monday as first week day
Set BrokenWeeks  =0;    //(use unbroken weeks)
Set ReferenceDay =4;    // Jan 4th is always in week 1
```

ABD ayarlarını istiyorsanız, kodda şunlara sahip olduğunuzdan emin olun:

```
Set DateFormat   ='M/D/YYYY';
Set FirstWeekDay =6;    // Sunday as first week day
Set BrokenWeeks  =1;    //(use broken weeks)
Set ReferenceDay =1;    // Jan 1st is always in week 1
```

Yukarıdaki örnekler weekstart() fonksiyonundan şu sonuçları verir:

Weekstart fonksiyonu örneği

| Tarih | ISO hafta başı | ABD hafta başı |
| --- | --- | --- |
| 26 Aralık 2020 Cumartesi | 2020-12-21 | 12/20/2020 |
| 27 Aralık 2020 Pazar | 2020-12-21 | 12/27/2020 |
| 28 Aralık 2020 Pazartesi | 2020-12-28 | 12/27/2020 |
| 29 Aralık 2020 Salı | 2020-12-28 | 12/27/2020 |
| 30 Aralık 2020 Çarşamba | 2020-12-28 | 12/27/2020 |
| 31 Aralık 2020 Perşembe | 2020-12-28 | 12/27/2020 |
| 1 Ocak 2021 Cuma | 2020-12-28 | 12/27/2020 |
| 2 Ocak 2021 Cumartesi | 2020-12-28 | 12/27/2020 |
| 3 Ocak 2021 Pazar | 2020-12-28 | 1/3/2021 |
| 4 Ocak 2021 Pazartesi | 2021-01-04 | 1/3/2021 |
| 5 Ocak 2021 Salı | 2021-01-04 | 1/3/2021 |

Bilgi notuHafta ISO sütununda Pazartesi günü, ABD sütununda ise Pazar günü başlar.

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

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/weekstart.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:

* "Transactions" adlı tabloya yüklenen, 2022'nin işlemlerini içeren bir veri kümesi.

* Tarih alanı DateFormat sistem değişkeninde (AA/GG/YYYY) biçiminde sağlanmıştır.

* İşlemlerin gerçekleştiği haftanın başlangıcına ilişkin zaman damgasını döndüren start\_of\_week alanını hesaplama.

Komut dosyası

```
SET FirstWeekDay=6;

Transactions:
    Load
        *,
        weekstart(date) as start_of_week,
        timestamp(weekstart(date)) as start_of_week_timestamp
        ;
Load
*
Inline
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24
8207,10/29/2022,67.67
];
```

Sonuçlar

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

* date

* start\_of\_week

* start\_of\_week\_timestamp

Sonuçlar tablosu

| tarih | start\_of\_week | start\_of\_week\_timestamp |
| --- | --- | --- |
| 1/7/2022 | 01/02/2022 | 1/2/2022 00.00.00 |
| 1/19/2022 | 01/16/2022 | 1/16/2022 00.00.00 |
| 2/5/2022 | 01/30/2022 | 1/30/2022 00.00.00 |
| 2/28/2022 | 02/27/2022 | 2/27/2022 00.00.00 |
| 3/16/2022 | 03/13/2022 | 3/13/2022 00.00.00 |
| 4/1/2022 | 03/27/2022 | 3/27/2022 00.00.00 |
| 5/7/2022 | 01.05.2022 | 5/1/2022 00.00.00 |
| 5/16/2022 | 05/15/2022 | 5/15/2022 00.00.00 |
| 6/15/2022 | 06/12/2022 | 6/12/2022 00.00.00 |
| 6/26/2022 | 06/26/2022 | 6/26/2022 00.00.00 |
| 7/9/2022 | 07/03/2022 | 7/3/2022 00.00.00 |
| 7/22/2022 | 07/17/2022 | 7/17/2022 00.00.00 |
| 7/23/2022 | 07/17/2022 | 7/17/2022 00.00.00 |
| 7/27/2022 | 07/24/2022 | 7/24/2022 00.00.00 |
| 8/2/2022 | 07/31/2022 | 7/31/2022 00.00.00 |
| 8/8/2022 | 08/07/2022 | 8/7/2022 00.00.00 |
| 8/19/2022 | 08/14/2022 | 8/14/2022 00.00.00 |
| 9/26/2022 | 09/25/2022 | 9/25/2022 00.00.00 |
| 10/14/2022 | 10/09/2022 | 10/9/2022 00.00.00 |
| 10/29/2022 | 10/23/2022 | 10/23/2022 00.00.00 |

"start\_of\_week" alanı, önceki Load deyiminde weekstart() fonksiyonu kullanılarak ve tarih alanı fonksiyonun bağımsız değişkeni olarak geçilerek oluşturulur.

weekstart() fonksiyonu, başlangıçta tarih değerinin hangi haftanın içinde bulunduğunu belirler ve o haftanın ilk milisaniyesi için bir zaman damgası döndürür.

Ek bağımsız değişkeni olmayan örnek weekstart() fonksiyonu diyagramı

Ek bağımsız değişkeni olmayan örnek weekstart() fonksiyonu diyagramı

Ek bağımsız değişkeni olmayan örnek weekstart()weekstart() fonksiyonu diyagramı![weekstart fonksiyonunun işlem tarihini nasıl işlemin gerçekleştiği haftanın ilk milisaniyesi için bir zaman damgasına dönüştürdüğünü gösteren örnek diyagram.](https://help.qlik.com/tr-TR/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekstart-examples-no-add-arg.png)

8191 numaralı işlem 5 Şubat'ta gerçekleşmiştir. FirstWeekDay sistem değişkeni haftanın ilk günü olarak Pazar gününü ayarlar. weekstart() fonksiyonu 5 Şubat'tan önceki ilk Pazar'ın (dolayısıyla haftanın başlangıcının) 30 Ocak olduğunu belirler. Bu nedenle söz konusu işlemin start\_of\_week değeri, o günün 30 Ocak saat 00:00:00 olan ilk milisaniyesini döndürür.

## Örnek 2 – period\_no

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/weekstart.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.

* İşlemin gerçekleştiği çeyrekten önceki çeyreğin başlangıcına ilişkin zaman damgasını döndüren previous\_week\_start alanını oluşturma.

Komut dosyası

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

Transactions:
    Load
        *,
        weekstart(date,-1) as previous_week_start,
        timestamp(weekstart(date,-1)) as previous_week_start_timestamp
        ;
Load
*
Inline
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24
8207,10/29/2022,67.67
];
```

Sonuçlar

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

* date

* previous\_week\_start

* previous\_week\_start\_timestamp

Sonuçlar tablosu

| tarih | previous\_week\_start | previous\_week\_start\_timestamp |
| --- | --- | --- |
| 1/7/2022 | 12/26/2021 | 12/26/2021 00.00.00 |
| 1/19/2022 | 01/09/2022 | 1/9/2022 00.00.00 |
| 2/5/2022 | 01/23/2022 | 1/23/2022 00.00.00 |
| 2/28/2022 | 02/20/2022 | 2/20/2022 00.00.00 |
| 3/16/2022 | 03/06/2022 | 3/6/2022 00.00.00 |
| 4/1/2022 | 03/20/2022 | 3/20/2022 00.00.00 |
| 5/7/2022 | 04/24/2022 | 4/24/2022 00.00.00 |
| 5/16/2022 | 05/08/2022 | 5/8/2022 00.00.00 |
| 6/15/2022 | 06/05/2022 | 6/5/2022 00.00.00 |
| 6/26/2022 | 06/19/2022 | 6/19/2022 00.00.00 |
| 7/9/2022 | 06/26/2022 | 6/26/2022 00.00.00 |
| 7/22/2022 | 07/10/2022 | 7/10/2022 00.00.00 |
| 7/23/2022 | 07/10/2022 | 7/10/2022 00.00.00 |
| 7/27/2022 | 07/17/2022 | 7/17/2022 00.00.00 |
| 8/2/2022 | 07/24/2022 | 7/24/2022 00.00.00 |
| 8/8/2022 | 07/31/2022 | 7/31/2022 00.00.00 |
| 8/19/2022 | 08/07/2022 | 8/7/2022 00.00.00 |
| 9/26/2022 | 09/18/2022 | 9/18/2022 00.00.00 |
| 10/14/2022 | 10/02/2022 | 10/2/2022 00.00.00 |
| 10/29/2022 | 10/16/2022 | 10/16/2022 00.00.00 |

Bu örnekte, weekstart() fonksiyonunda offset bağımsız değişkeni olarak değeri -1 olan period\_no kullanıldığından, fonksiyon önce işlemlerin gerçekleştiği haftayı belirler. Sonra bir önceki haftaya bakar ve o haftanın ilk milisaniyesini belirler.

weekstart() fonksiyonu diyagramı, period\_no örneği

weekstart() fonksiyonu diyagramı, period\_no örneği

weekstart()weekstart() fonksiyonu diyagramı, period\_no örneği![weekstart fonksiyonunun işlem tarihini nasıl işlemin gerçekleştiği haftanın ilk milisaniyesi için bir zaman damgasına dönüştürdüğünü gösteren örnek diyagram.](https://help.qlik.com/tr-TR/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekstart-examples-period-no.png)

8196 numaralı işlem 15 Haziran'da gerçekleşmiştir. weekstart() fonksiyonu haftanın 12 Haziran'da başladığını belirler. Bu nedenle önceki hafta 5 Haziran saat 00:00:00'da başlamıştır; bu, previous\_week\_start alanı için döndürülen değerdir.

## Örnek 3 – first\_week\_day

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/weekstart.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 örnekte, çalışma haftasının ilk gününü Salı olarak ayarlamamız gerekmektedir.

Komut dosyası

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

Transactions:
    Load
        *,
        weekstart(date,0,1) as start_of_week,
        timestamp(weekstart(date,0,1)) as start_of_week_timestamp
        ;
Load
*
Inline
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24
8207,10/29/2022,67.67
];
```

Sonuçlar

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

* date

* start\_of\_week

* start\_of\_week\_timestamp

Sonuçlar tablosu

| tarih | start\_of\_week | start\_of\_week\_timestamp |
| --- | --- | --- |
| 1/7/2022 | 01/04/2022 | 1/4/2022 00.00.00 |
| 1/19/2022 | 01/18/2022 | 1/18/2022 00.00.00 |
| 2/5/2022 | 02/01/2022 | 2/1/2022 00.00.00 |
| 2/28/2022 | 02/22/2022 | 2/22/2022 00.00.00 |
| 3/16/2022 | 03/15/2022 | 3/15/2022 00.00.00 |
| 4/1/2022 | 03/29/2022 | 3/29/2022 00.00.00 |
| 5/7/2022 | 05/03/2022 | 5/3/2022 00.00.00 |
| 5/16/2022 | 05/10/2022 | 5/10/2022 00.00.00 |
| 6/15/2022 | 06/14/2022 | 6/14/2022 00.00.00 |
| 6/26/2022 | 06/21/2022 | 6/21/2022 00.00.00 |
| 7/9/2022 | 07/05/2022 | 7/5/2022 00.00.00 |
| 7/22/2022 | 07/19/2022 | 7/19/2022 00.00.00 |
| 7/23/2022 | 07/19/2022 | 7/19/2022 00.00.00 |
| 7/27/2022 | 07/26/2022 | 7/26/2022 00.00.00 |
| 8/2/2022 | 08/02/2022 | 8/2/2022 00.00.00 |
| 8/8/2022 | 08/02/2022 | 8/2/2022 00.00.00 |
| 8/19/2022 | 08/16/2022 | 8/16/2022 00.00.00 |
| 9/26/2022 | 09/20/2022 | 9/20/2022 00.00.00 |
| 10/14/2022 | 10/11/2022 | 10/11/2022 00.00.00 |
| 10/29/2022 | 10/25/2022 | 10/25/2022 00.00.00 |

Bu örnekte, weekstart() fonksiyonunda first\_week\_date bağımsız değişkeni için 1 kullanıldığından haftanın ilk günü Salı olarak ayarlanır.

weekstart() fonksiyonu diyagramı, first\_week\_day örneği

weekstart() fonksiyonu diyagramı, first\_week\_day örneği

weekstart()weekstart() fonksiyonu diyagramı, first\_week\_day örneği![weekstart fonksiyonunun işlem tarihini nasıl işlemin gerçekleştiği haftanın ilk milisaniyesi için bir zaman damgasına dönüştürdüğünü gösteren örnek diyagram.](https://help.qlik.com/tr-TR/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekstart-examples-first-week-day.png)

8191 numaralı işlem 5 Şubat'ta gerçekleşmiştir. weekstart() fonksiyonu bu tarihten önceki ilk Salı'nın (dolayısıyla haftanın başlangıcının ve döndürülen değerin) 1 Şubat saat 00:00:00 olduğunu belirler.

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

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

#### 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. İşlemin yapıldığı haftanın başlangıcı için zaman damgasını döndüren hesaplama, uygulamanın grafik nesnesinde bir hesaplama olarak oluşturulur.

Komut dosyası

```
Transactions:

Load
*
Inline
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24
8207,10/29/2022,67.67
];
```

Sonuçlar

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

İşlemin gerçekleştirildiği haftanın başlangıcını hesaplamak için aşağıdaki hesaplamaları ekleyin:

* =weekstart(date)

* =timestamp(weekstart(date))

Sonuçlar tablosu

| tarih | start\_of\_week | start\_of\_week\_timestamp |
| --- | --- | --- |
| 1/7/2022 | 01/02/2022 | 1/2/2022 00.00.00 |
| 1/19/2022 | 01/16/2022 | 1/16/2022 00.00.00 |
| 2/5/2022 | 01/30/2022 | 1/30/2022 00.00.00 |
| 2/28/2022 | 02/27/2022 | 2/27/2022 00.00.00 |
| 3/16/2022 | 03/13/2022 | 3/13/2022 00.00.00 |
| 4/1/2022 | 03/27/2022 | 3/27/2022 00.00.00 |
| 5/7/2022 | 01.05.2022 | 5/1/2022 00.00.00 |
| 5/16/2022 | 05/15/2022 | 5/15/2022 00.00.00 |
| 6/15/2022 | 06/12/2022 | 6/12/2022 00.00.00 |
| 6/26/2022 | 06/26/2022 | 6/26/2022 00.00.00 |
| 7/9/2022 | 07/03/2022 | 7/3/2022 00.00.00 |
| 7/22/2022 | 07/17/2022 | 7/17/2022 00.00.00 |
| 7/23/2022 | 07/17/2022 | 7/17/2022 00.00.00 |
| 7/27/2022 | 07/24/2022 | 7/24/2022 00.00.00 |
| 8/2/2022 | 07/31/2022 | 7/31/2022 00.00.00 |
| 8/8/2022 | 08/07/2022 | 8/7/2022 00.00.00 |
| 8/19/2022 | 08/14/2022 | 8/14/2022 00.00.00 |
| 9/26/2022 | 09/25/2022 | 9/25/2022 00.00.00 |
| 10/14/2022 | 10/09/2022 | 10/9/2022 00.00.00 |
| 10/29/2022 | 10/23/2022 | 10/23/2022 00.00.00 |

start\_of\_week hesaplaması, grafik nesnesinde weekstart() fonksiyonu kullanılarak ve date alanı fonksiyonun bağımsız değişkeni olarak geçilerek oluşturulur.

weekstart() fonksiyonu, başlangıçta tarih değerinin hangi haftanın içinde bulunduğunu belirler ve o haftanın ilk milisaniyesi için bir zaman damgası döndürür.

weekstart() fonksiyonu diyagramı, grafik nesnesi örneği

weekstart() fonksiyonu diyagramı, grafik nesnesi örneği

weekstart()weekstart() fonksiyonu diyagramı, grafik nesnesi örneği![weekstart fonksiyonunun işlem tarihini nasıl işlemin gerçekleştiği haftanın ilk milisaniyesi için bir zaman damgasına dönüştürdüğünü gösteren örnek diyagram.](https://help.qlik.com/tr-TR/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekstart-examples-chart-object.png)

8191 numaralı işlem 5 Şubat'ta gerçekleşmiştir. FirstWeekDay sistem değişkeni haftanın ilk günü olarak Pazar gününü ayarlar. weekstart() fonksiyonu 5 Şubat'tan önceki ilk Pazar'ın (dolayısıyla haftanın başlangıcının) 30 Ocak olduğunu belirler. Bu nedenle, söz konusu işlemin start\_of\_week değeri o günün 30 Ocak saat 00:00:00 olan ilk milisaniyesini döndürür.

## Örnek 5 – Senaryo

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

#### Komut dosyası ve grafik ifadesi

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:

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

* Çalışan kimlikleri, çalışan adları ve her çalışanın kazandığı günlük ücretten oluşan veriler.

Çalışanlar Pazartesi günü çalışmaya başlar ve haftada altı gün çalışır. FirstWeekDay sistem değişkeni değiştirilmemelidir.

Son kullanıcı, çalışan kimliği ve çalışan adına göre haftanın başından şu ana kadar geçen sürede kazanılan ücretleri görüntüleyen bir grafik nesnesi istemektedir.

Komut dosyası

```
Payroll: 
Load
*
Inline 
[
employee_id,employee_name,day_rate
182,Mark, $150
183,Deryck, $125
184,Dexter, $125
185,Sydney,$270
186,Agatha,$128
];
```

Sonuçlar

Aşağıdakileri yapın:

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

   * employee\_id

   * employee\_name

2. Sonra, hafta içinde şu ana kadar kazanılan ücretleri hesaplamak için bir hesaplama oluşturun:

   =if(today(1)-weekstart(today(1),0,0)&lt;7,(today(1)-weekstart(today(1),0,0))\*day\_rate,day\_rate\*6)

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

Sonuçlar tablosu

| employee\_id | employee\_name | =if(today(1)-weekstart(today(1),0,0)&lt;7,(today(1)-weekstart(today(1),0,0))\*day\_rate,day\_rate\*6) |
| --- | --- | --- |
| 182 | Mark | $600.00 |
| 183 | Deryck | $500,00 |
| 184 | Dexter | $500,00 |
| 185 | Sidney | $1080.00 |
| 186 | Agatha | $512.00 |

weekstart() fonksiyonu, ilk bağımsız değişkeni olarak bugünün tarihini ve üçüncü bağımsız değişkeni olarak da 0 kullanarak, haftanın ilk gününü Pazartesi olarak ayarlar ve geçerli haftanın başlangıç tarihini döndürür. İfade, bu sonucu geçerli tarihten çıkararak bu hafta içinde şimdiye kadar geçen gün sayısını döndürür.

Ardından koşul, bu hafta altı günden fazla geçip geçmediğini değerlendirir. Öyleyse, çalışanın day\_rate değeri 6 günle çarpılır. Aksi takdirde, day\_rate değeri bu hafta içinde şimdiye kadar geçen gün sayısıyla çarpılır.