Available only in PRO Edition

Скрытие временных единиц на шкале

Эта функциональность доступна только в PRO-редакции

Библиотека позволяет скрывать ненужные временные единицы на временной шкале диаграммы. Это может быть полезно, например, если вы хотите отображать только рабочие дни и исключить выходные.

Чтобы скрыть временную единицу на шкале, обычно используется метод ignore_time. Этот метод представляет собой функцию, которая получает дату ячейки в качестве параметра. Для скрытия определённой единицы функция должна возвращать true для этой даты.

Например, чтобы скрыть выходные на шкале, можно использовать следующий код:

// 0 — это воскресенье, 6 — суббота
gantt.ignore_time = function(date){
   if(date.getDay() == 0 || date.getDay() == 6)
      return true;
};

Related sample:  Not render weekends on the scale

Имейте в виду, что скрытие временных единиц на шкале не исключает их из расчёта длительности задач. Если вы хотите исключить скрытые единицы из расчётов длительности, обратитесь к подходу, описанному в статье Расчёт рабочего времени

При работе с расчётом рабочего времени можно использовать isWorkTime вместо жёстко заданных значений:

gantt.ignore_time = function(date){
   if(!gantt.isWorkTime(date))
      return true;
};

Related sample:  Calculate working hours

Важно отметить, что метод ignore_time не изменяет саму шкалу. Ниже приведены примеры, иллюстрирующие, как ячейки без рабочих часов или дней скрываются.

Пример 1

Шкала дня работает с 00:00 до 23:59, рабочие часы — с 08:00 до 16:59. Если у вас есть минимальная шкала в часах и применяется ignore_time, ячейки, представляющие нерабочее время, будут скрыты на всех шкалах. Это означает, что шкала дня фактически будет с 08:00 до 16:59. Однако, если у вас есть только шкала дня, она останется неизменной — с 00:00 до 23:59, так как в этом дне есть рабочие часы.

Пример 2

Шкала недели включает 7 дней, из которых 2 — выходные (например, суббота и воскресенье). Если минимальная шкала — дни и применяется ignore_time, выходные будут скрыты, и на шкале недели будут отображаться только понедельник — пятница. Тем не менее, если у вас есть только шкала недели, она всё равно начнётся с понедельника и закончится воскресеньем, так как неделя включает выходные.

Есть два способа отобразить диаграмму с скрытыми временными единицами:

  • Добавить шкалу с меньшими единицами (например, шкалу часов вместе со шкалой дней, или шкалу дней вместе со шкалой недель)
  • Использовать пользовательскую шкалу, которая отображает только рабочие часы или дни

Related sample:  5-дневная рабочая неделя на шкале

К началу