forked from DonovanChan/fmfunctions
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDatesFrom.calc
42 lines (36 loc) · 1.03 KB
/
DatesFrom.calc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Let ([
//-- Build list of valid dates
list_new =
Case (
numberOfDaysToReturn ≠ 0 ;
DatesFromLoop (
GetAsDate ( startDate ) ;
numberOfDaysToReturn ;
omitWeekends ;
ListDateToNumber ( omitDateList ) ;
""
)
)
];
//-- Ensure list is sorted ascending
Case (
IsEmpty ( list_new ) ;
"" ;
numberOfDaysToReturn < 0 ;
ListSortDates ( list_new ; 0 ) ;
list_new
)
)
/* —————————————————————————————— //
NAME:
DatesFrom ( startDate ; numberOfDaysToReturn ; omitWeekends ; omitDateList )
PURPOSE:
Returns list of dates in range. Excludes weekends and/or holidays if specified.
Pass negative number into numberOfDaysToReturn to end range on startDate.
EXAMPLES:
DatesFrom ( "10/1/2010" ; 2 ; 1 ; "10/1/2010" ) = "10/4/2010¶10/5/2010"
DatesFrom ( "10/1/2010" ; -2 ; 1 ; "" ) = "9/29/2010¶9/30/2010"
HISTORY:
Created: 2010-Oct-15 12h06 PST — Donovan A. Chandler
NOTE:
*/