Gantt DHTMLX not behaving like MSProject


#1

I’m using Version 6.2 and my question is: how can I make Gantt DHTMLX work the same way as MSProject but not only for imports? One solution that I found was to subtract 1 day from End date, but this did not solve my problem, would there be another way to do it?

I would prefer that when the duration is equal to 1, the start date and end date should be the same.


#2

Hello Marcio,
It seems that by default in MS Project, the work time is turned on, and the duration is calculated in hours. With that configuration, a task will never start at the beginning of the day (00:00). Instead, it will fit the 08:00-17:00 hours. Though you can see the same dates in the grid, the hours are different.
If you remove the calendar, the task will still have the duration of 8 hours:

If that is what you want to see in Gantt, you can easily configure it without applying custom solutions. You will need to set the duration_unit to ‘hour’ and enable the work_time parameter:
https://docs.dhtmlx.com/gantt/api__gantt_duration_unit_config.html
https://docs.dhtmlx.com/gantt/api__gantt_work_time_config.html
The dates in the grid will look the same way as in MS Project.
To show the duration in days and even in fractional values, you can use the formatters:
https://docs.dhtmlx.com/gantt/desktop__formatters_ext.html#durationformatter
Here is the snippet that demonstrates how it works:
http://snippet.dhtmlx.com/5/1aaa75fe9

I know that the only other way to display tasks in MS Project from 00:00 to 23:59 is to set 24 hours per day:

However, in that case, the end date is different from the start date.