Changes

Jump to: navigation, search

IsHoliday

1,357 bytes added, 19:26, 21 September 2009
no edit summary
To count business days between two dates (''startdate'' and ''enddate''), the following code can be used in a [[Custom Field Type: Special – Browser Script|Special Browser script]] field that will populate a [[Custom Field Type: Special – Calculated Value|Calculated Value Custom Field]] with the number of business days between two given dates.

In the [[Custom Field Type: Special – Browser Script|Special Browser script]] field you define the function that calculates the difference:
<pre>

function bus_date_diff()
{
var frm=document.forms[0];
var formatdate="@dateformat@";
var start=ConvertDateStr(frm.startdate.value,formatdate);
var end=ConvertDateStr(frm.enddate.value,formatdate);
var diff=datediff(start,end, "D");
var i=0;
var busdays=0;
for(i=0;i<diff;i++)
{
var cdate=dateadd(start,'D',i);
if(!isHoliday(cdate))
busdays++;
}
return busdays;
}

</pre>

In '''Expression''' section of the [[Custom Field Type: Special – Calculated Value|Calculated Value Custom Field]] you would call the function:
bus_date_diff()

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 [[Custom Field Type: Special – Calculated Value|Calculated Value Custom Field]].
[[Category:Custom Fields]][[Category:JavaScript]]
Smartstaff
137
edits

Navigation menu