# now - kod ve grafik fonksiyonu

Bu fonksiyon geçerli zamanın zaman damgasını döndürür. Fonksiyon, TimeStamp sistem değişkeni biçiminde değerler döndürür. Varsayılan timer\_mode değeri 1'dir.

Söz Dizimi:

now([ timer\_mode])

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

`now()` fonksiyonu komut dosyasında veya grafik nesnelerinde kullanılabilir.

Bağımsız Değişkenler

| Bağımsız Değişken | Açıklama |
| --- | --- |
| timer\_mode | Aşağıdaki değerleri alabilir:<br><br>0 (son tamamlanan veri yüklemesi zamanı)<br>1 (fonksiyon çağrısı zamanı)<br>2 (uygulamanın açıldığı zaman)<br><br>Bilgi notuFonksiyonu bir veri kod dosyasında kullanırsanız timer\_mode=0 son bitirilen veri yüklemesinin zamanını sonuç olarak verirken timer\_mode=1 geçerli veri yüklemesinde fonksiyonun çağrılma zamanını verir. |

İpucu notu`now()` işlevi yüksek performans etkisine sahiptir ve işlev tablo ifadeleri içinde kullanılırsa kaydırma sorunlarına neden olabilir. Kullanımı kesinlikle gerekli olmadığında, bunun yerine `today()` işlevini kullanmanızı öneririz. Bir düzende `now()` kullanılması gerekiyorsa sürekli yeniden hesaplama gerektirmedikleri için mümkün olduğunda varsayılan olmayan `now(0)` veya `now(2)` ayarlarını kullanmanızı öneririz

## Ne zaman kullanılır?

`now()` fonksiyonu genelde bir ifadenin içinde bileşen olarak kullanılır. Örneğin, bir ürünün yaşam döngüsünde kalan zamanı hesaplamak için kullanılabilir. İfade günün bir kısmının kullanılmasını gerektiriyorsa `today()` fonksiyonu yerine `now()` fonksiyonu kullanılabilir.

Aşağıdaki tabloda, `timer_mode` bağımsız değişkenine farklı değerler verilerek `now()` fonksiyonu tarafından döndürülen sonucun açıklaması sağlanmıştır:

Fonksiyon örnekleri

| timer\_mode değeri | Komut dosyasında kullanıldığında sonuç | Grafik nesnesinde kullanıldığında sonuç |
| --- | --- | --- |
| 0 | En son veri yeniden yüklemesinden önceki son başarılı veri yeniden yüklemesinin zaman damgasını, `TimeStamp` sistem değişkeni biçiminde döndürür. | En son veri yeniden yüklemesi için `TimeStamp` sistem değişkeni biçiminde bir zaman damgası döndürür. |
| 1 | En son veri yeniden yüklemesi için `TimeStamp` sistem değişkeni biçiminde bir zaman damgası döndürür. | Fonksiyon çağrısının `TimeStamp` sistem değişkeni biçimindeki zaman damgasını döndürür. |
| 2 | Kullanıcının uygulamadaki oturumunun başlangıcı için `TimeStamp` sistem değişkeni biçiminde bir zaman damgası döndürür. Kullanıcı kodu yeniden yüklemediği sürece bu değer güncellenmez. | Kullanıcının uygulamadaki oturumunun başlangıç zaman damgasını `TimeStamp` sistem değişkeni biçiminde döndürür. Yeni bir oturum başladığında veya uygulamadaki veriler yeniden yüklendiğinde bu değer yenilenir. |

## 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.

## Örnek 1 – Komut dosyası kullanarak nesneleri oluşturma

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

#### Komut dosyası ve sonuçlar

Genel bakış

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

Bu örnekte `now()` fonksiyonu kullanılarak üç değişken oluşturulur. Her değişken, etkisini göstermek için `timer_mode` seçeneklerinden birini kullanır.

Değişkenlerin amacının gösterilmesi için komut dosyasını yeniden yükleyin ve kısa bir süre sonra komut dosyasını ikinci kez yeniden yükleyin. Bunun sonucunda `now(0)` ve `now(1)` değişkenleri farklı değerler gösterecek ve bu şekilde amaçlarını doğru bir şekilde ortaya koyacaktır.

Komut dosyası

```
LET vPreviousDataLoad = now(0);
LET vCurrentDataLoad = now(1);
LET vApplicationOpened = now(2);
```

Sonuçlar

Veriler ikinci kez yüklendikten sonra aşağıdaki talimatları kullanarak üç metin kutusu oluşturun.

Önce daha önce yüklenmiş olan veriler için bir metin kutusu oluşturun.

Aşağıdakileri yapın:

1. Metin ve Resim grafik nesnesini kullanarak bir metin kutusu oluşturun.

2. Şu hesaplamayı nesneye ekleyin:

   `=vPreviousDataLoad`

3. Görünüm'ün altından Show titles'i seçin ve 'Önceki Yeniden Yükleme Zamanı' başlığını nesneye ekleyin.

Sonra, yüklenmekte olan veriler için bir metin kutusu oluşturun.

Aşağıdakileri yapın:

1. Metin ve Resim grafik nesnesini kullanarak bir metin kutusu oluşturun.

2. Şu hesaplamayı nesneye ekleyin:

   `=vCurrentDataLoad`

3. Görünüm'ün altından Show titles'ı seçin ve 'Geçerli Yeniden Yükleme Zamanı' başlığını nesneye ekleyin.

Kullanıcının uygulamadaki oturumunun başladığı zamanı gösteren son bir metin kutusu oluşturun.

Aşağıdakileri yapın:

1. Metin ve Resim grafik nesnesini kullanarak bir metin kutusu oluşturun.

2. Şu hesaplamayı nesneye ekleyin:

   `=vApplicationOpened`

3. GÖrünüm'ün altından Show titles'i seçin ve 'Kullanıcı Oturumu Başlangıcı' başlığını nesneye ekleyin.

`now()` komut dosyası değişkenleri

`now()` komut dosyası değişkenleri

`now()`now() komut dosyası değişkenleri![now() fonksiyonunu kullanıp komut dosyası yoluyla değişkenleri yükledikten sonra, oluşturulan üç metin kutusundan her birinin nasıl görüneceğini gösteren diyagram.](https://help.qlik.com/tr-TR/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-now-example-load-script.png)

Yukarıdaki resimde, oluşturulan değişkenlerin her biri için örnek değerler gösterilir. Örneğin değerler şöyle olabilir:

* Önceki Yeniden Yükleme Zamanı: 06/22/2022 08:54:03

* Geçerli Yeniden Yükleme Zamanı: 06/22/2022 09:02:08

* Kullanıcı Oturumu Başlangıcı: 06/22/2022 08:40:40

## Örnek 2 – Komut dosyası olmadan nesneleri oluşturma

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

#### Komut dosyası ve grafik ifadesi

Genel bakış

Bu örnekte, uygulamaya hiçbir değişken veya veri yüklemeden `now()` fonksiyonunu kullanarak üç grafik nesnesi oluşturacaksınız. Her grafik nesnesi, etkisini göstermek için `timer_mode` seçeneklerinden birini kullanır.

Bu örnekte komut dosyası yoktur.

Aşağıdakileri yapın:

1. Veri yükleme düzenleyicisini açın.

2. Mevcut komut dosyasını değiştirmeden Verileri yükle'ye tıklayın.

3. Kısa bir süre sonra kodu bir kez daha yükleyin.

Sonuçlar

Veriler bir kez daha yüklendikten sonra üç metin kutusunu oluşturun.

Önce en son veri yeniden yüklemesi için bir metin kutusu oluşturun.

Aşağıdakileri yapın:

1. Metin ve Resim grafik nesnesini kullanarak bir metin kutusu oluşturun.

2. Aşağıdaki hesaplamayı ekleyin:

   `=now(0)`

3. Görünüm'ün altında Başlıkları göster seçeneğini belirleyin ve nesneye "En Son Veri Yeniden Yüklemesi" başlığını ekleyin.

Ardından geçerli saati gösterecek bir metin kutusu oluşturun.

Aşağıdakileri yapın:

1. Metin ve Resim grafik nesnesini kullanarak bir metin kutusu oluşturun.

2. Aşağıdaki hesaplamayı ekleyin:

   `=now(1)`

3. Görünüm'ün altında Başlıkları göster seçeneğini belirleyin ve nesneye "Geçerli Saat" başlığını ekleyin.

Kullanıcının uygulamadaki oturumunun başladığı zamanı gösteren son bir metin kutusu oluşturun.

Aşağıdakileri yapın:

1. Metin ve Resim grafik nesnesini kullanarak bir metin kutusu oluşturun.

2. Aşağıdaki hesaplamayı ekleyin:

   `=now(2)`

3. Görünüm'ün altında Başlıkları göster seçeneğini belirleyin ve nesneye "Kullanıcı Oturumu Başlangıcı" başlığını ekleyin.

`now()` grafik nesnesi örnekleri

`now()` grafik nesnesi örnekleri

`now()`now() grafik nesnesi örnekleri![Uygulamaya hiç veri yüklenmeden now() fonksiyonunu kullanıp yalnızca grafik nesnelerini oluşturduktan sonra, oluşturulan üç metin kutusundan her birinin nasıl görüneceğini gösteren diyagram.](https://help.qlik.com/tr-TR/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-now-example-no-data-loaded.png)

Yukarıdaki resimde, oluşturulan nesnelerin her biri için örnek değerler gösterilir. Örneğin değerler şöyle olabilir:

* En Son Veri Yeniden Yüklemesi: 06/22/2022 09:02:08

* Geçerli Zaman: 06/22/2022 09:25:16

* Kullanıcı Oturumu Başlangıcı: 06/22/2022 08:40:40

'En Son Veri Yeniden Yüklemesi' grafik nesnesi, değeri 0 olan bir `timer_mode` kullanır. Bu, verilerin son kez başarıyla yeniden yüklendiği zamanın zaman damgasını döndürür.

'Geçerli Zaman' grafik nesnesi değeri 1 olan bir `timer_mode` kullanır. Bu, sistem saatine göre geçerli zamanı döndürür. Sayfa veya nesne yenilenirse bu değer güncellenir.

'Kullanıcı Oturumu Başlangıcı' grafik nesnesi, değeri 2 olan bir `timer_mode` kullanır. Bu, uygulamanın açıldığı ve kullanıcı oturumunun başladığı zaman damgasını döndürür.

## Örnek 3 – Senaryo

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

#### Komut dosyası ve grafik ifadesi

Genel bakış

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

Yükleme kodu şunları içerir:

* Kripto para birimi madenciliği işleminin envanterinden oluşan ve `Inventory` adlı tabloya yüklenen bir veri kümesi.

* Şu alanları içeren veriler: `id`, `purchase_date` ve `wph` (vat saat).

Kullanıcı, `id` değerine göre her madencilik cihazının ay içinde şu ana kadar oluşturduğu toplam maliyeti görüntüleyen bir tablo istemektedir.

Grafik nesnesi her yenilendiğinde bu değer güncellenmelidir. Geçerli elektrik maliyeti kWH başına $0.0678'dir.

Komut dosyası

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

Inventory:
Load
*
Inline 
[
id,purchase_date,wph
8188,1/7/2022,1123
8189,1/19/2022,1432
8190,2/28/2022,1227
8191,2/5/2022,1322
8192,3/16/2022,1273
8193,4/1/2022,1123
8194,5/7/2022,1342
8195,5/16/2022,2342
8196,6/15/2022,1231
8197,6/26/2022,1231
8198,7/9/2022,1123
8199,7/22/2022,1212
8200,7/23/2022,1223
8201,7/27/2022,1232
8202,8/2/2022,1232
8203,8/8/2022,1211
8204,8/19/2022,1243
8205,9/26/2022,1322
8206,10/14/2022,1133
8207,10/29/2022,1231
];
```

Sonuçlar

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

Şu hesaplamayı oluşturun:

`=(now(1)-monthstart(now(1)))*24*wph/1000*0.0678`

Grafik nesnesi 06/22/2022 10:39:05'te yenilendiyse aşağıdaki sonuçları döndürebilir:

Sonuçlar tablosu

| kimlik | =(now(1)-monthstart(now(1)))\*24\*wph/1000\*0.0678 |
| --- | --- |
| 8188 | $39.18 |
| 8189 | $49.97 |
| 8190 | $42.81 |
| 8191 | $46.13 |
| 8192 | $44.42 |
| 8193 | $39.18 |
| 8194 | $46.83 |
| 8195 | $81.72 |
| 8196 | $42.95 |
| 8197 | $42.95 |
| 8198 | $39.18 |
| 8199 | $42.29 |
| 8200 | $42.67 |
| 8201 | $42.99 |
| 8202 | $42.99 |
| 8203 | $42.25 |
| 8204 | $43.37 |
| 8205 | $46.13 |
| 8206 | $39.53 |

Kullanıcı, nesne her yenilendiğinde nesne sonuçlarının yenilenmesini istemektedir. Bu nedenle, ifadede `now()` fonksiyonunun örnekleri için `timer_mode` bağımsız değişkeni sağlanır. `monthstart()` fonksiyonunda zaman damgası bağımsız değişkeni için `now()` kullanılarak belirlenen ay başlangıcının zaman damgası, `now()` fonksiyonu tarafından belirlenen geçerli saatten çıkarılır. Bu, gün cinsinden bu ay şimdiye kadar geçen toplam süreyi sağlar.

Bu değer, 24 (bir gündeki saat sayısı) ile ve ardından `wph` alanındaki değerle çarpılır.

Sonucu vat saatten kilovat saate dönüştürmek için önce 1000'e bölünür ve son olarak sağlanan kWH tarifesiyle çarpılır.