Bu fonksiyon, dönemin ay aralığının (MonthNames kod değişkenine göre biçimlendirilmiş) yanı sıra yılı temsil eden bir görüntü değeri döndürür. Temel sayısal değer; ayın, iki ayın, üç ayın, dört ayın veya altı ayın temel tarih içeren ilk milisaniyesinin zaman damgasına karşılık gelir.
Dönemi tanımlayan ayların sayısı. Şunlardan biri olması gereken bir tamsayı veya bir tamsayıya çözümlenen bir ifade: 1 (inmonth() fonksiyonuna eşdeğer), 2 (iki aylık), 3 (inquarter() fonksiyonuna eşdeğer), 4 (dört aylık), or 6 (altı aylık).
date
Değerlendirilecek tarih.
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.
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ç
monthsname(4, '19/10/2013')
'Sep-Dec 2013 döndürür. Çünkü bu ve diğer örneklerde SET Monthnames deyimi Jan;Feb;Mar vs. olarak ayarlanmıştır.
monthsname(4, '19/10/2013', -1)
'May-Aug 2013 döndürür.
monthsname(4, '19/10/2013', 0, 2)
Oct-Jan 2014 döndürür. Çünkü yılın 2. ayda başladığı belirtilmektedir. Bu nedenle, dört aylık dönem takip eden yılın birinci ayında sona erer.
Ö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 örnekte, tablodaki her bir fatura tarihi için, iki aylık dönemdeki ay aralığından ve yıldan ay adı oluşturulur. Aralık 4x2 ay kadar kaydırılmıştır (period_no değerinin 4 olarak belirtilmesiyle).
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 *,
MonthsName(2, InvDate, 4) AS MthsName
Resident TempTable;
Drop table TempTable;
Sonuçta ortaya çıkan tabloda orijinal tarihler ve monthsname() fonksiyonunun döndürdüğü değeri içeren bir sütun yer alır.
Sonuçlar tablosu
InvDate
MthsName
28/03/2012
Nov-Dec 2012
10/12/2012
Jul-Aug 2013
5/2/2013
Sep-Oct 2013
31/3/2013
Nov-Dec2013
19/5/2013
Jan-Feb 2014
15/9/2013
May-Jun 2014
11/12/2013
Jul-Aug 2014
2/3/2014
Nov-Dec 2014
14/5/2014
Jan-Feb 2015
13/6/2014
Jan-Feb 2015
7/7/2014
Mar-Apr 2015
4/8/2014
Mar-Apr 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!