The get_boundary
will shift the input date
vector by
a number of months and years i.e. date + offset_period * offset_type
.
It will handle the typical business date arithmetic.
get_boundary(date = Sys.Date(), offset_period = 0, offset_type = "year", bus_period = "FY", boundary = "1st day", opt_fy_start = getOption("busdaterFYstart", default = "07-01"))
date | A date vector for which financial year is required. Date must be POSIXct or POSIXlt or Date objects. |
---|---|
offset_period | A positive or negative number coercible to
integer to shift the year by,
e.g. in the case of |
offset_type | It is either |
bus_period | It is either |
boundary | Either |
opt_fy_start | A string in the format of "MM-DD" representing the start of financial year, e.g. "01-01" for 1st of January or "07-01" for 1st of July. This package caters for financial years that have a fixed start date. It does not cater for moving dates e.g. last Friday of September. |
A vector of dates.
Other business date functions: FY
,
get_fy
, period_boundaries
# the 1st day of the current financial year get_boundary()#> [1] "2018-07-01"# the last day of the current financial year get_boundary(boundary = "last day")#> [1] "2019-06-30"# the last day of the last calendar year get_boundary(offset_period = -1, bus_period = "CY", boundary = "last day")#> [1] "2018-12-31"# the last day of month 14 months from now get_boundary(offset_period = 14, offset_type = "month", bus_period = "M", boundary = "last day")#> [1] "2020-03-31"# The first day of financial years for dates 3 months before the given dates get_boundary(as.Date(c("02/27/1992", "09/28/2022"), "%m/%d/%Y"), offset_period = -3, offset_type = "month", bus_period = "FY", boundary = "1st day")#> [1] "1991-07-01" "2021-07-01"