lastworkdate - kod ve grafik fonksiyonu
lastworkdate fonksiyonu, isteğe bağlı holiday varsa bunları da dikkate alarak, start_date ile başlanması halinde no_of_workdays (Pazartesi-Cuma) elde edilmesi için gerekli en erken bitiş tarihini döndürür. start_date ve holiday geçerli tarihler veya zaman damgaları olmalıdır.
Söz Dizimi:
lastworkdate(start_date, no_of_workdays {, holiday})
Dönüş veri türü: dual
Bağımsız Değişkenler:
Bağımsız Değişken | Açıklama |
---|---|
start_date | Değerlendirilecek başlangıç tarihi. |
no_of_workdays | Elde edilecek iş günü sayısı. |
holiday |
İş günlerinden hariç tutulacak tatil dönemleri. Tatil dönemi, virgülle ayrılan bir başlangıç tarihi ve bir bitiş tarihi olarak belirtilir. Örnek: '25/12/2013', '26/12/2013' Virgüllerle ayrılmış olarak birden fazla tatil dönemini hariç tutabilirsiniz. Örnek: '25/12/2013', '26/12/2013', '31/12/2013', '01/01/2014' |
Ö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:
lastworkdate ('19/12/2014', 9)
'31/12/2014' döndürür
Örnek 2:
lastworkdate ('19/12/2014', 9, '2014-12-25', '2014-12-26')
İki günlük bir tatil dönemi de hesaba katıldığından 02/01/2015 döndürür.
Örnek 3:
Ö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.
ProjectTable:
LOAD *, recno() as InvID INLINE [
StartDate
28/03/2014
10/12/2014
5/2/2015
31/3/2015
19/5/2015
15/9/2015
] ;
NrDays:
Load *,
LastWorkDate(StartDate,120) As EndDate
Resident ProjectTable;
Drop table ProjectTable;
Sonuçta oluşan tablo, tablodaki kayıtların her biri için döndürülen LastWorkDate değerlerini gösterir.
InvID | StartDate | EndDate |
---|---|---|
1 | 28/03/2014 | 11/09/2014 |
2 | 10/12/2014 | 26/05/2015 |
3 | 5/2/2015 | 27/07/2015 |
4 | 31/3/2015 | 14/09/2015 |
5 | 19/5/2015 | 02/11/2015 |
6 | 15/9/2015 | 29/02/2016 |