Bu fonksiyon, bir taban tarihi içeren aylık, iki aylık, üç aylık, dört aylık veya yarı yıllık dönemin son milisaniyesinin zaman damgasına karşılık gelen bir değer döndürür. Ayrıca önceki veya sonraki zaman aralığının bitişine ilişkin zaman damgasını da bulmak mümkündür. Varsayılan çıktı biçimi kodda ayarlanan DateFormat olur.
Dönemi tanımlayan ayların sayısı. Şunlardan biri olması gereken bir tamsayı olarak çözümlenen bir tamsayı veya ifade: 1 (inmonth() fonksiyonuna eşdeğerdir), 2 (iyi aylık), 3 (inquarter()fonksiyonuna eşdeğerdir), 4 (dört aylık dönem) veya 6 (yarı yıl).
date
Değerlendirilecek tarih veya zaman damgası.
period_no
Dönem period_no ile kaydırılabilir. Bu değer bir tamsayı ya da tamsayıya çözümlenen bir ifadedir ve burada 0 değeri base_date içeren dönemi belirtir. period_no içindeki negatif değerler önceki dönemleri; pozitif değerler ise sonraki dönemleri gösterir.
first_month_of_year
Ocak'ta başlamayan (mali) yıllarla çalışmak istiyorsanız, first_month_of_year içinde 2 ile 12 arasında bir değer belirtin.
monthsend() fonksiyonu, sağlanan n_months bağımsız değişkenine göre yılı segmentlere böler. Ardından sağlanan her tarihin hangi segment içinde bulunduğunu değerlendirir ve o segmentin tarih biçiminde son milisaniyesini döndürür. Fonksiyon önceki veya sonraki segmentlerden bitiş zaman damgasını döndürebilir ve yılın ilk ayını yeniden tanımlayabilir.
Yılın aşağıdaki segmentleri fonksiyonda n_month bağımsız değişkenleri olarak bulunur.
n_month bağımsız değişkenleri
Dönem
Ay sayısı
ay
1
iki aylık
2
çeyrek
3
dört ay
4
altı aylık
6
Ne zaman kullanılır?
monthsend() fonksiyonu, kullanıcının hesaplamada ayın şu ana kadar geçen kısmını kullanmak istemesi durumunda, ifadenin içinde kullanılır. Kullanıcıya bir değişken kullanarak istediği dönemi seçme fırsatı verilir. Örneğin monthsend(), kullanıcının ay, üç ay veya yarım yıl içinde henüz oluşmamış toplam faizi hesaplamasına olanak tanıyan bir giriş değişkeni sağlayabilir.
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.
Fonksiyon örnekleri
Örnek
Sonuç
monthsend(4, '07/19/2013')
08/31/2013 döndürür.
monthsend(4, '10/19/2013', -1)
08/31/2013 döndürür.
monthsend(4, '10/19/2013', 0, 2)
01/31/2014 döndürür. Çünkü yılın başlangıcı 2. ay olur.
Örnek 1 – Temel örnek
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:
2022 yılının işlemlerini içeren bir veri kümesi "Transactions" adlı tabloya yüklenmiştir.
DateFormat sistem değişkeninde (MM/DD/YYYY) biçiminde sağlanan bir tarih alanı.
Şunları içeren önceki bir yükleme deyimi:
"bi_monthly_end" alanı olarak ayarlanan monthsend fonksiyonu. Bu, işlemleri iki aylık segmentlerde gruplar.
Her işlemin segmentinin başlangıç zaman damgasını döndüren timestamp fonksiyonu.
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:
id
date
bi_monthly_end
bi_monthly_end_timestamp
Sonuçlar tablosu
id
tarih
bi_monthly_end
bi_monthly_end_timestamp
8188
1/7/2022
02/28/2022
2/28/2022 11:59:59 PM
8189
1/19/2022
02/28/2022
2/28/2022 11:59:59 PM
8190
2/5/2022
02/28/2022
2/28/2022 11:59:59 PM
8191
2/28/2022
02/28/2022
2/28/2022 11:59:59 PM
8192
3/16/2022
04/30/2022
4/30/2022 11:59:59 PM
8193
4/1/2022
04/30/2022
4/30/2022 11:59:59 PM
8194
5/7/2022
06/30/2022
6/30/2022 11:59:59 PM
8195
5/22/2022
06/30/2022
6/30/2022 11:59:59 PM
8196
6/15/2022
06/30/2022
6/30/2022 11:59:59 PM
8197
6/26/2022
06/30/2022
6/30/2022 11:59:59 PM
8198
7/9/2022
08/31/2022
8/31/2022 11:59:59 PM
8199
7/22/2022
08/31/2022
8/31/2022 11:59:59 PM
8200
7/23/2022
08/31/2022
8/31/2022 11:59:59 PM
8201
7/27/2022
08/31/2022
8/31/2022 11:59:59 PM
8202
8/2/2022
08/31/2022
8/31/2022 11:59:59 PM
8203
8/8/2022
08/31/2022
8/31/2022 11:59:59 PM
8204
8/19/2022
08/31/2022
8/31/2022 11:59:59 PM
8205
9/26/2022
10/31/2022
10/31/2022 11:59:59 PM
8206
10/14/2022
10/31/2022
10/31/2022 11:59:59 PM
8207
10/29/2022
10/31/2022
10/31/2022 11:59:59 PM
"bi_monthly_end" alanı, önceki LOAD deyiminde monthsend() fonksiyonu kullanılarak oluşturulur. Sağlanan ilk bağımsız değişken 2 bağımsız değişkenidir ve yılı iki aylık segmentlere böler. İkinci bağımsız değişken, değerlendirilmekte olan alanı tanımlar.
8195 numaralı işlem 22 Mayıs'ta yapılmaktadır. monthsend() fonksiyonu başlangıçta yılı iki aylık segmentlere böler. 8195 numaralı işlem 1 Mayıs ile 30 Haziran arasına düşmektedir. Sonuç olarak, fonksiyon bu segmentin 06/30/2022 23:59:59 olan son milisaniyesini döndürür.
Örnek 2 – period_no
Genel bakış
Birinci örnekteki veri kümesi ve senaryo kullanılır.
Bu örnekteki görev, işlemin gerçekleşmesinden önceki iki aylık segmentin ilk milisaniyesini döndüren bir "prev_bi_monthly_end" alanı oluşturmaktır.
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:
id
date
prev_bi_monthly_end
prev_bi_monthly_end_timestamp
Sonuçlar tablosu
id
tarih
prev_bi_monthly_end
prev_bi_monthly_end_timestamp
8188
1/7/2022
12/31/2021
12/31/2021 11:59:59 PM
8189
1/19/2022
12/31/2021
12/31/2021 11:59:59 PM
8190
2/5/2022
12/31/2021
12/31/2021 11:59:59 PM
8191
2/28/2022
12/31/2021
12/31/2021 11:59:59 PM
8192
3/16/2022
02/28/2022
2/28/2022 11:59:59 PM
8193
4/1/2022
02/28/2022
2/28/2022 11:59:59 PM
8194
5/7/2022
04/30/2022
4/30/2022 11:59:59 PM
8195
5/22/2022
04/30/2022
4/30/2022 11:59:59 PM
8196
6/15/2022
04/30/2022
4/30/2022 11:59:59 PM
8197
6/26/2022
04/30/2022
4/30/2022 11:59:59 PM
8198
7/9/2022
06/30/2022
6/30/2022 11:59:59 PM
8199
7/22/2022
06/30/2022
6/30/2022 11:59:59 PM
8200
7/23/2022
06/30/2022
6/30/2022 11:59:59 PM
8201
7/27/2022
06/30/2022
6/30/2022 11:59:59 PM
8202
8/2/2022
06/30/2022
6/30/2022 11:59:59 PM
8203
8/8/2022
06/30/2022
6/30/2022 11:59:59 PM
8204
8/19/2022
06/30/2022
6/30/2022 11:59:59 PM
8205
9/26/2022
08/31/2022
8/31/2022 11:59:59 PM
8206
10/14/2022
08/31/2022
8/31/2022 11:59:59 PM
8207
10/29/2022
08/31/2022
8/31/2022 11:59:59 PM
monthsend() fonksiyonunda period_no bağımsız değişkeni olarak -1 kullanıldığında, fonksiyon başlangıçta yılı iki aylık segmentlere böldükten sonra işlemin gerçekleşmesinden önceki iki aylık segmentin son milisaniyesini döndürür.
8195 numaralı işlem Mayıs ile Haziran arasındaki segmentte yapılmaktadır. Sonuç olarak, önceki iki aylık segment 1 Mart ile 30 Nisan arasında olduğundan, fonksiyon bu segmentin 04/30/2022 23:59:59 olan son milisaniyesini döndürür.
Örnek 3 – first_month_of_year
Genel bakış
Birinci örnekteki veri kümesi ve senaryo kullanılır.
Bu örnekte organizasyonel politika, Nisan ayından başlayan mali yıla yöneliktir.
İşlemleri iki aylık segmentlerde gruplayan ve her işlemin segmentinin son milisaniyesine ilişkin zaman damgasını döndüren bir "bi_monthly_end" alanı oluşturun.
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:
id
date
bi_monthly_end
bi_monthly_end_timestamp
Sonuçlar tablosu
id
tarih
bi_monthly_end
bi_monthly_end_timestamp
8188
1/7/2022
01/31/2022
1/31/2022 11:59:59 PM
8189
1/19/2022
01/31/2022
1/31/2022 11:59:59 PM
8190
2/5/2022
03/31/2022
3/31/2022 11:59:59 PM
8191
2/28/2022
03/31/2022
3/31/2022 11:59:59 PM
8192
3/16/2022
03/31/2022
3/31/2022 11:59:59 PM
8193
4/1/2022
05/31/2022
5/31/2022 11:59:59 PM
8194
5/7/2022
05/31/2022
5/31/2022 11:59:59 PM
8195
5/22/2022
05/31/2022
5/31/2022 11:59:59 PM
8196
6/15/2022
07/31/2022
7/31/2022 11:59:59 PM
8197
6/26/2022
07/31/2022
7/31/2022 11:59:59 PM
8198
7/9/2022
07/31/2022
7/31/2022 11:59:59 PM
8199
7/22/2022
07/31/2022
7/31/2022 11:59:59 PM
8200
7/23/2022
07/31/2022
7/31/2022 11:59:59 PM
8201
7/27/2022
07/31/2022
7/31/2022 11:59:59 PM
8202
8/2/2022
09/30/2022
9/30/2022 11:59:59 PM
8203
8/8/2022
09/30/2022
9/30/2022 11:59:59 PM
8204
8/19/2022
09/30/2022
9/30/2022 11:59:59 PM
8205
9/26/2022
09/30/2022
9/30/2022 11:59:59 PM
8206
10/14/2022
11/30/2022
11/30/2022 11:59:59 PM
8207
10/29/2022
11/30/2022
11/30/2022 11:59:59 PM
monthsend() fonksiyonunda first_month_of_year bağımsız değişkeni için 4 kullanılırsa, fonksiyon yılı 1 Nisan'da başlatır. Daha sonra yılı iki aylık segmentlere böler: Nis-May, Haz-Tem, Ağu-Eyl, Eki-Kas, Ara-Oca, Şub-Mar.
8195 numaralı işlem 22 Mayıs'ta yapılmıştır ve 1 Nisan ile 31 Mayıs arasındaki segmente düşer. Sonuç olarak, fonksiyon bu segmentin 05/31/2022 23:59:59 olan son milisaniyesini döndürür.
Örnek 4 – Grafik nesnesi örneği
Genel bakış
Birinci örnekteki veri kümesi ve senaryo kullanılır. Öte yandan bu örnekte veri kümesi değişmemiş ve uygulamaya yüklenmiştir.
Bu örnekteki görev, işlemleri iki aylık segmentlerde gruplayan ve her işlemin segmentinin son milisaniyesine ilişkin zaman damgasını, uygulamanın grafik nesnesinde bir hesaplama olarak döndüren hesaplamayı oluşturmaktır.
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanı boyut olarak ekleyin:
date
İşlemin gerçekleştiği iki aylık segmentin son milisaniyesine ilişkin zaman damgasını getirmek için aşağıdaki hesaplamaları oluşturun:
=monthsEnd(2,date)
=timestamp(monthsend(2,date))
Sonuçlar tablosu
id
tarih
=monthsend(2,date)
=timestamp(monthsend(2,date))
8188
1/7/2022
02/28/2022
2/28/2022 11:59:59 PM
8189
1/19/2022
02/28/2022
2/28/2022 11:59:59 PM
8190
2/5/2022
02/28/2022
2/28/2022 11:59:59 PM
8191
2/28/2022
02/28/2022
2/28/2022 11:59:59 PM
8192
3/16/2022
04/30/2022
4/30/2022 11:59:59 PM
8193
4/1/2022
04/30/2022
4/30/2022 11:59:59 PM
8194
5/7/2022
06/30/2022
6/30/2022 11:59:59 PM
8195
5/22/2022
06/30/2022
6/30/2022 11:59:59 PM
8196
6/15/2022
06/30/2022
6/30/2022 11:59:59 PM
8197
6/26/2022
06/30/2022
6/30/2022 11:59:59 PM
8198
7/9/2022
08/31/2022
8/31/2022 11:59:59 PM
8199
7/22/2022
08/31/2022
8/31/2022 11:59:59 PM
8200
7/23/2022
08/31/2022
8/31/2022 11:59:59 PM
8201
7/27/2022
08/31/2022
8/31/2022 11:59:59 PM
8202
8/2/2022
08/31/2022
8/31/2022 11:59:59 PM
8203
8/8/2022
08/31/2022
8/31/2022 11:59:59 PM
8204
8/19/2022
08/31/2022
8/31/2022 11:59:59 PM
8205
9/26/2022
10/31/2022
10/31/2022 11:59:59 PM
8206
10/14/2022
10/31/2022
10/31/2022 11:59:59 PM
8207
10/29/2022
10/31/2022
10/31/2022 11:59:59 PM
"bi_monthly_end" alanı, grafik nesnesinde monthsend() fonksiyonu kullanılarak bir hesaplama olarak oluşturulur. Sağlanan ilk bağımsız değişken, yılı iki aylık segmentlere bölen 2 bağımsız değişkenidir. İkinci bağımsız değişken, değerlendirilmekte olan alanı tanımlar.
8195 numaralı işlem 22 Mayıs'ta yapılmaktadır. monthsend() fonksiyonu başlangıçta yılı iki aylık segmentlere böler. 8195 numaralı işlem 1 Mayıs ile 30 Haziran arasına düşmektedir. Sonuç olarak, fonksiyon bu segmentin ilk milisaniyesini (06/30/2022 23:59:59) döndürür.
Örnek 5 – Senaryo
Genel bakış
Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir sekmeye ekleyin.
Bu örnekte, "Employee_Expenses" adlı tabloya bir veri kümesi yüklenmektedir. Tablo aşağıdaki alanları içermektedir:
Çalışan kimlikleri
Çalışan adları
Her çalışanın günlük ortalama masraf talebi.
Son kullanıcı, çalışan kimliğine ve çalışan adına göre kendi seçtiği zaman aralığının kalan kısmı için tahmini masraf talebini görüntüleyen bir grafik istemektedir. Mali yıl Ocak'ta başlamaktadır.
monthsend() fonksiyonu kullanıcı girişini ilk bağımsız değişkeni ve bugünün tarihini de ikinci bağımsız değişkeni olarak kullanır. Bu, kullanıcının seçtiği zaman aralığının bitiş tarihini döndürür. Ardından ifade, bugünün tarihini bu bitiş tarihinden çıkararak seçilen zaman aralığının kalan gün sayısını döndürür.
Sonra bu değer her çalışan için günlük ortalama masraf talebiyle çarpılarak her çalışanın bu zaman aralığının kalan günlerinde talep etmesi beklenen tahmini talep tutarı hesaplanır.
Bu sayfa size yardımcı oldu mu?
Bu sayfa veya içeriği ile ilgili bir sorun; bir yazım hatası, eksik bir adım veya teknik bir hata bulursanız, bize bildirin, düzeltelim!