lunarweekend - kod ve grafik fonksiyonu
Bu fonksiyon, date içeren ay haftasının son milisaniyesinin zaman damgasına karşılık gelen bir değer döndürür. QlikView içindeki ay haftaları, haftanın ilk günü 1 Ocak sayılarak tanımlanır.
Söz Dizimi:
LunarweekEnd(date[, period_no[, first_week_day]])
Dönüş veri türü: dual
Bağımsız Değişkenler:
Bağımsız Değişken | Açıklama |
---|---|
date | Değerlendirilecek tarih. |
period_no | period_no, tamsayıya çözümlenen bir ifade olup burada 0 değeri date içeren haftayı 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. |
Örnekler ve sonuçlar:
Bu örneklerde GG/AA/YYYY tarih biçimi kullanılmaktadır. Tarih biçimi, kod dosyanızın en başında SET DateFormat deyimi içinde belirtilir. Örneklerdeki biçimi gereksinimlerinize uyacak şekilde değiştirin.
Örnek 1:
lunarweekend('12/01/2013')
14/01/2013 23:59:59 döndürür.
Örnek 2:
lunarweekend('12/01/2013', -1)
7/01/2013 23:59:59 döndürür.
Örnek 3:
lunarweekend('12/01/2013', 0, 1)
15/01/2013 23:59:59 döndürür.
Örnek 4:
Örnek kodu belgenize ekleyin ve çalıştırın. Ardından, sonucu görmek için belgenizdeki bir sayfaya en azından sonuçlar sütununda listelenen alanları ekleyin.
Bu örnek, tablodaki her bir fatura tarihi için ay haftasının son gününü bulur. Burada date öğesi, period_no değerinin 1 olarak belirtilmesiyle bir hafta kaydırılmaktadır.
TempTable:
LOAD RecNo() as InvID, * Inline [
InvDate
28/03/2012
10/12/2012
5/2/2013
31/3/2013
19/5/2013
15/9/2013
11/12/2013
2/3/2014
14/5/2014
13/6/2014
7/7/2014
4/8/2014
];
InvoiceData:
LOAD *,
LunarWeekEnd(InvDate, 1) AS LWkEnd
Resident TempTable;
Drop table TempTable;
Sonuçta ortaya çıkan tabloda orijinal tarihler ve lunarweekend() fonksiyonunun döndürdüğü değeri içeren bir sütun yer alır. Grafik özelliklerinde biçimlendirmeyi belirterek tam zaman damgasını görüntüleyebilirsiniz.
InvDate | LWkEnd |
---|---|
28/03/2012 | 07/04/2012 |
10/12/2012 | 22/12/2012 |
5/2/2013 | 18/02/2013 |
31/3/2013 | 08/04/2013 |
19/5/2013 | 27/05/2013 |
15/9/2013 | 23/09/2013 |
11/12/2013 | 23/12/2013 |
2/3/2014 | 11/03/2014 |
14/5/2014 | 27/05/2014 |
13/6/2014 | 24/06/2014 |
7/7/2014 | 15/07/2014 |
4/8/2014 | 12/08/2014 |