[#BloombergLP-bdlt-CalendarUtil-subtractBusinessDaysIfValid] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlt.adoc[bdlt]::xref:BloombergLP/bdlt/CalendarUtil.adoc[CalendarUtil]::subtractBusinessDaysIfValid :relfileprefix: ../../../ :mrdocs: Load, into the specified `result`, the date that is the specified `numBusinessDays` chronologically before the specified `original` date according to the specified `calendar`. The resulting date is chronologically before the `original` date for positive values of `numBusinessDays`, the chronologically latest business day that is on or before the `original` date for `0 == numBusinessDays`, and chronologically after the `original` date for negative values of `numBusinessDays`. Return 0 on success, and a non‐zero value, without modifying `*result`, if either the `original` date or the resulting date is not within the valid range of `calendar`. Note that if `0 != numBusinessDays`, then the result of `subtractBusinessDaysIfValid(res, orig, cal, numBusinessDays)` is identical to the result of `addBusinessDaysIfValid(res, orig, cal, ‐numBusinessDays)`. == Synopsis Declared in `<bdlt_calendarutil.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- static int subtractBusinessDaysIfValid( xref:BloombergLP/bdlt/Date.adoc[bdlt::Date]* result, xref:BloombergLP/bdlt/Date.adoc[bdlt::Date] const& original, xref:BloombergLP/bdlt/Calendar.adoc[bdlt::Calendar] const& calendar, int numBusinessDays); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#