tt_ADDWORKDAYS function

dynamic tt_ADDWORKDAYS(
  1. dynamic v1,
  2. dynamic v2
)

tt_ADDWORKDAYS(date, n): adds n working days (skips Sat/Sun)

Implementation

dynamic tt_ADDWORKDAYS(dynamic v1, dynamic v2) {
  var d = _vToDateTime(v1);
  if (d == null) return null;
  var n = varToInt(v2);
  final step = n >= 0 ? 1 : -1;
  n = n.abs();
  while (n > 0) {
    d = d!.add(Duration(days: step));
    if (d!.weekday <= 5) n--;
  }
  return d;
}