yearname - kod ve grafik fonksiyonu
Bu fonksiyon, date öğesini içeren yılın ilk gününün ilk milisaniyesinin zaman damgasına karşılık gelen bir temel sayısal değerle görüntü değeri olarak dört basamaklı bir yıl döndürür.
Söz Dizimi:
YearName(date[, period_no[, first_month_of_year]] )
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 bir tamsayı olup, burada 0 değeri date içeren yılı belirtir. period_no içindeki negatif değerler önceki yılları; pozitif değerler ise sonraki yılları 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. Bu durumda, görüntü değeri iki yılı gösteren bir dize olur. |
Ö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:
yearname ( '19/10/2001')
2001 döndürür.
Örnek 2:
yearname ( '19/10/2001', -1 )
'2000 döndürür.
Örnek 3:
yearname ( '19/10/2001', 0, 4)
'2001-2002 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 tarihinin içinde bulunduğu yıllar için dört+dört haneli bir ad oluşturur. Bunun nedeni yılın ilk ayının 4. ay olarak belirtilmiş olmasıdı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 *,
YearName(InvDate, 0, 4) AS YrName
Resident TempTable;
Drop table TempTable;
Sonuçta ortaya çıkan tabloda orijinal tarihler ve yearname() fonksiyonunun döndürdüğü değeri içeren bir sütun yer alır.
InvDate | YrName |
---|---|
28/03/2012 | 2011-2012 |
10/12/2012 | 2012-2013 |
5/2/2013 | 2012-2013 |
31/3/2013 | 2012-2013 |
19/5/2013 | 2013-2014 |
15/9/2013 | 2013-2014 |
11/12/2013 | 2013-2014 |
2/3/2014 | 2013-2014 |
14/5/2014 | 2014-2015 |
13/6/2014 | 2014-2015 |
7/7/2014 | 2014-2015 |
4/8/2014 | 2014-2015 |