IsHoliday
To subtract business days from a given date, the following code can be used in a Special Browser script field that will populate a Calculated Value Custom Field with the new date.
In the Special Browser script field you define the function that subtracts the a number of days from a given date
function bus_date_subtract()
{
var frm=document.form1; // or document.frmevent at Level 2 or 3
var formatstr="dd/mm/yyyy";
var start=ConvertDateStr(frm.startdate.value,formatstr);
var sub=-5;
for(i=-1;i>sub;i--)
{
var cdate=dateadd(start,'D',i);
var cdatetemp=new Date();
var cdatearr=cdate.split("-");
cdatetemp.setFullYear(parseInt(cdatearr[0]),parseInt(cdatearr[1])-1,parseInt(cdatearr[2]));
if(isHoliday(cdate)||cdatetemp.getDate()==0||cdatetemp.getDate()==6)sub--;
}
document.frmevent.cf_1742956.value=cdate;
}
bus_date_subtract();
In Expression section of the Calculated Value Custom Field you would call the function:
bus_date_subtract();
Note: The function definition can be changed to accept parameters (fields containing dates) that are passed at the time of calling the function from any Calculated Value Custom Field.