How to setup task deadline using Working days setup in Calendars
I want to create this function where the deadline of my tasks for my sales process, I want it to follow the working days & working hours that I have set-up using calendars.
However, when I checked initially it doesn't by default use the working days/working hours that I set up in calendars. Its instead just taking calendar days.
Does anyone know how I can create maybe a business process to these two requirements:
- When creating a task deadline, the system calculates the end date factoring the holidays setup in calendars. For example the task has a SLA/deadline to be completed in 5 days and the task was created this Monday. But this Tuesday its a holiday in the calendar, so the deadline for this task is not set for Friday but instead the following Monday.
- When tracking total task duration can this track the setup working hours in calendar? Because right now when the partner tries this, its counting the entire 24 hour day instead of the 8 working hour that has been set-up.
If anyone knows or has experience with setting up the business process would appreciate it
Like
Hi,
By default, task deadlines in Creatio are calculated using calendar time (24/7), which means the system does not automatically exclude weekends, holidays, or non-working hours defined in user calendars. Because of this, SLA deadlines and task duration may not always reflect actual working schedules.
One possible approach to address both of your requirements (excluding holidays from deadlines and tracking duration based on working hours) is to implement a small customization using a business process.
Conceptually, the solution works as follows:
Instead of calculating the deadline using a single continuous task that spans across calendar time, we introduce a structure where one main task represents the overall activity, while the system automatically creates smaller “child” tasks that follow the user’s working calendar.
Step 1 – Main task creation
When the main task is created (for example with an SLA of 5 working days), the business process is triggered. This task represents the overall work item that users interact with.
Step 2 – Reading the user’s working calendar
The process retrieves the calendar configuration of the assigned user, including:
- working days
- working hours
- holidays and non-working days
This ensures that the calculation is based on the actual working schedule rather than standard calendar days.
Step 3 – Calculating working time slots
The process then calculates the available working time starting from the task creation time. It skips:
- weekends
- holidays
- non-working hours
For example:
If the task is created on Monday and Tuesday is configured as a holiday, the process will skip Tuesday when calculating the SLA.
Step 4 – Creating child tasks for working periods
Instead of keeping one long task that spans 24 hours a day, the system automatically creates several smaller “child” tasks. Each child task represents a specific working period (for example one working day or a defined number of working hours).
These child tasks:
- reference the main task through a lookup field (e.g., “Parent Task”)
- have start and end times strictly within working hours
- represent actual planned working intervals.
Step 5 – Calculating the final deadline
The deadline of the main task is then set to the end date of the last generated child task.
This means the system effectively calculates the SLA based on real working time. If a holiday occurs during the period, the deadline automatically shifts to the next available working day.
How this solves both requirements
- Deadline calculation excluding holidays
Because the process only schedules work during valid working days and hours, holidays and weekends are automatically skipped when determining the final deadline. - Tracking task duration based on working hours
Instead of measuring the duration between task creation and completion (which counts the full 24-hour day), the system can track duration based on the combined working intervals represented by the child tasks. This provides a much more accurate view of actual working time.