SQL formula Add dynamic number of days to a static date or today date excluding non working days Saturday or Sunday

TO_CHAR( (CASE     WHEN ROUND(NVL({timeremaining}, 0) / 8) <= 0 THEN {today} ELSE  {today} + FLOOR((ROUND(NVL({timeremaining}, 0) / 8) + CASE WHEN TO_CHAR({today}, ‘D’) IN (‘7’, ‘1’) THEN 1 ELSE 0 END) / 5) * 7     + MOD(ROUND(NVL({timeremaining}, 0) / 8) + CASE WHEN TO_CHAR({today}, ‘D’) IN (‘7’, ‘1’) THEN 1 ELSE 0 END, 5)+ CASE WHEN TO_CHAR({today} + FLOOR((ROUND(NVL({timeremaining}, 0) / 8) + CASE WHEN TO_CHAR({today}, ‘D’) IN (‘7’, ‘1’) THEN 1 ELSE 0 END) / 5) * 7 + MOD(ROUND(NVL({timeremaining}, 0) / 8) + CASE WHEN TO_CHAR({today}, ‘D’) IN (‘7’, ‘1’) THEN 1 ELSE 0 END, 5), ‘D’) = ‘7’ THEN 2             WHEN TO_CHAR({today} + FLOOR((ROUND(NVL({timeremaining}, 0) / 8) + CASE WHEN TO_CHAR({today}, ‘D’) IN (‘7’, ‘1’) THEN 1 ELSE 0 END) / 5) * 7 + MOD(ROUND(NVL({timeremaining}, 0) / 8) + CASE WHEN TO_CHAR({today}, ‘D’) IN (‘7’, ‘1’) THEN 1 ELSE 0 END, 5), ‘D’) = ‘1’ THEN 1             ELSE 0           END END) – (CASE WHEN TO_CHAR({today}, ‘D’) = 1 then 1 else 0 end )  ,’MM/DD/YYYY’)

Leave a comment

Your email address will not be published. Required fields are marked *