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.
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.
Bu örnekler DD/MM/YYYY tarih biçimini kullanır. Tarih biçimi, veri kod dosyanızın en üstündeki SET DateFormat deyiminde belirtilir. Örneklerdeki biçimi gereksinimlerinize uyacak şekilde değiştirin.
Kod örnekleri
Örnek
Sonuç
yearname ( '19/10/2001')
2001 döndürür.
yearname ( '19/10/2001', -1 )
'2000 döndürür.
yearname ( '19/10/2001', 0, 4)
'2001-2002 döndürür.
Örnek:
Örnek kodu uygulamanıza ekleyin ve çalıştırın. Sonucu görmek için, sonuçlar sütununda listelenen alanları uygulamanızda bir sayfaya ekleyin.
Bu örnek, tablodaki her bir fatura tarihinin yer aldığı yıl içinde ilk günü bulur. Burada yılın ilk ayı 4. ay olarak belirtilmektedir.
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.
Sonuçlar tablosu
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
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!