Most of us pull their hands towards Scripting, but Great to have a vanilla Business Service 'FS Holiday API Service' to crack this requirement.
This Business Service has 3 Methods.
The Following Method serves our Requirement.
Method : GetElapsedBusinessTime
Inputs to the BS:
Schedule Time Zone
Time Unit (Days/Hours)
Output of the BS:
Business Time - Outputs the Time in Days/Hours calculating difference between Start and End days ignoring Week ends and Holidays.
Inputs : Start Time : 06 / 01 / 2012
End Time : 11/ 01/ 2012
Output : Business Time (In Days) : 3 (since 07th and 08th are week end dates, they are ignored)
One of the Inputs, Calender Id is created by the following steps :
* Navigate to Administration - Service -> Schedules -> in Siebel Client
* Create a New Record. The Row-Id of the record is the Calender Id.
* Navigate to 'Schedule Hours' Detail View and specify the working days here with start and end times.
* Also you can specify the Holidays in this way.
* Navigate to 'All Exceptions' Detail View, create a record and drilldown on the Name that takes to 'Exception Hours' Detail View, specify the List of Holidays here.
Screenshot showing List of Week Days:
Screenshot showing List of Holidays: