Откуда берётся показатель
В таблице связанных задач поле item.time_spent_in_logs означает время, зарегистрированное в учёте трудозатрат. Если задача создана неделю назад, это не означает, что в отчёт попадёт неделя работы. Плановая оценка тоже не заменяет внесённые трудозатраты.
Перед подготовкой клиентского отчёта договоритесь, как сотрудники записывают время. Иначе одинаково пустые ячейки будут означать разные вещи: работу ещё не начали, забыли внести время или не используют учёт трудозатрат.
Два поддерживаемых формата
В строке цикла по задачам используйте:
{{ item.time_spent_in_logs | duration("seconds") }}
{{ item.time_spent_in_logs | duration("HH:mm:ss") }}
Без аргумента duration использует формат HH:mm:ss. Кавычки должны быть обычными прямыми. Формат задаётся точно: строка «часы» не является допустимой заменой.
| Исходное значение | seconds | HH:mm:ss |
|---|---|---|
| 0 | 0 | 00:00:00 |
| 9300 | 9300 | 02:35:00 |
| 90061 | 90061 | 25:01:01 |
| 360001 | 360001 | 100:00:01 |
Это длительность, поэтому часы не обнуляются после 24. Не форматируйте трудозатраты как дату или время суток: такой подход может скрыть целые дни работы.

Что делать с отсутствующим временем
Если значения нет, результат может остаться пустым. Для явно выбранного отображения пустоты как нуля используется цепочка:
{{ item.time_spent_in_logs | duration | default("00:00:00") }}
Порядок важен: сначала преобразование длительности, затем запасное значение. Такое оформление не доказывает, что сотрудник зарегистрировал ноль секунд. Оно лишь меняет представление отсутствующего значения.
Если это различие существенно для отчёта, лучше оставить пустоту и пояснить её либо использовать согласованный текст. Не делайте выводы о производительности по одному внешнему виду ячейки.
Особенность Excel
В отдельной ячейке XLSX duration("seconds") сохраняет числовой тип для реальных секунд. Это полезно, когда далее нужны вычисления. Но default("0") возвращает запасной текст, а не гарантированно числовой ноль.
Перед добавлением формул проверьте типы ячеек на готовом файле. Если требуется итог в часах, определите правило расчёта и округления отдельно. Сам фильтр отображения не выбирает тариф и не рассчитывает стоимость работ.
Почему возникает ошибка
Допустимы целые неотрицательные секунды, в том числе числовая строка. Отрицательное, дробное или логическое значение, а также текст «2 часа» не являются подходящим входом. Строка 02:35:00 уже выглядит как длительность, но тоже не заменяет исходные секунды для этого фильтра.
При ошибке проверьте исходное поле и формат. Не устраняйте её удалением трудозатрат из отчёта, если показатель нужен клиенту: сначала выясните, какие данные фактически поступают в шаблон.
Частые вопросы
Влияет ли часовой пояс на 02:35:00?
Нет, здесь это продолжительность работы, а не отметка времени суток. Перевод часового пояса к ней не применяется.
Почему в одном отчёте пусто, а в другом 00:00:00?
Проверьте наличие исходного значения и применение default. Отсутствие данных и зарегистрированный ноль могут быть оформлены одинаково, хотя смысл различается.
Полный синтаксис таблицы задач и фильтров приведён в инструкции приложения. Учебные отчёты DOCX/XLSX доступны на странице «Фабрики документов».