Расширение возможностей OpenProject: пользовательские поля.
Стандартных атрибутов часто оказывается недостаточно. Именно здесь на сцену выходят пользовательские поля — ключевой механизм, позволяющий адаптировать систему под уникальные бизнес-процессы вашей компании .
OpenProject — это мощная open-source система управления проектами, оторая «из коробки» предлагает широкий набор стандартных полей: статус, ответственный, даты начала и окончания, приоритет и другие.
Однако в реальной работе, например в такой специфической области как строительство, этих стандартных атрибутов часто оказывается недостаточно. Именно здесь на сцену выходят пользовательские поля — ключевой механизм, позволяющий адаптировать систему под уникальные бизнес-процессы вашей компании .
Что такое пользовательские поля и зачем они нужны?
Пользовательские поля — это дополнительные атрибуты, которые системный администратор может создавать для рабочих пакетов (задач), проектов, пользователей и других сущностей в OpenProject . Они позволяют добавить в систему любую информацию, которая важна именно для вашего проекта, но не предусмотрена стандартными настройками.
Представьте строительный проект. Для каждой задачи важно знать не только «кто делает» и «когда», но и:
- Какие материалы требуются?
- Какое оборудование (экскаваторы, краны) задействовано?
- Кто является руководителем направления?
- Каков номер чертежа или шифр объекта?
Стандартные поля OpenProject не могут охватить всё это разнообразие. Пользовательские поля решают эту проблему, позволяя собирать именно те данные, которые нужны вашей команде .
Какие объекты можно расширять с помощью пользовательских полей?
Гибкость OpenProject не ограничивается только задачами (рабочими пакетами). Пользовательские поля можно создавать для множества сущностей, адаптируя систему под свои нужды на всех уровнях :
- Рабочие пакеты (Work packages): Это основная область. Здесь можно добавлять любые атрибуты к задачам, ошибкам, этапам и другим типам работ, как мы это продемонстрируем в дальнейшем на примере с полем «Ресурсы».
- Пользователи (Users): Дополнительные поля для профиля сотрудника. Например, можно указать «Основная специальность», «Номер телефона» или «Идентификатор в корпоративной системе».
- Группы (Groups): Атрибуты для целых команд, что полезно для управления доступом и отчетами.
- Версии (Versions): Дополнительные метаданные для версий проекта, например, «Дата релиза» или «Ответственный за релиз».
- Затраченное время (Spent time): Например, можно добавить поле «Код статьи затрат» для более детальной финансовой отчетности.
- Проекты (Projects): Поля для описания самого проекта, такие как «Код заказчика», «Идентификатор в CRM» или «Бюджет».
Добавление информации — хорошо, но есть и возможность её обработки: API и Webhooks
Добавление данных — это первый шаг. Настоящая ценность раскрывается, когда эти данные начинают работать в связке с другими системами. Именно здесь на помощь приходят API и Webhooks.
- API (Application Programming Interface): OpenProject предоставляет мощный REST API, который позволяет внешним программам читать, создавать и обновлять данные в системе. С помощью API можно:
- Автоматически создавать задачи в OpenProject из другой системы, например, из CRM или ERP.
- Выгружать данные по проектам для построения корпоративных дашбордов.
- Массово обновлять атрибуты рабочих пакетов, включая пользовательские поля .
- Webhooks: Это механизм автоматического оповещения. Вы настраиваете Webhook в OpenProject на определенное событие (например, создание нового рабочего пакета или изменение его статуса), и OpenProject сам отправляет HTTP-запрос с данными о событии на указанный URL-адрес другой системы . Это позволяет:
- При смене статуса задачи «Инженерные изыскания» на «Завершено» автоматически отправлять уведомление в корпоративный мессенджер или учетную систему.
- Интегрировать OpenProject с системами для выставления счетов, логистики или документации.
- Строить кастомные рабочие процессы, например, автоматически назначать ответственного в зависимости от значения пользовательского поля «Регион» .
Таким образом, пользовательские поля — это не просто статичные ячейки для данных, а строительные блоки для создания гибкой, интегрированной и автоматизированной экосистемы управления проектами, которая растет вместе с потребностями вашего бизнеса.
Пример настройки: «Ресурсы» для строительного проекта
Создадим для примера пользовательское поле «Ресурсы» для задач типа «Task». Давайте посмотрим, что можно вложить в это понятие в контексте строительства.
Под «ресурсами» может пониматься:
- Оборудование: Экскаватор Hitachi ZX200, кран Liebherr LTM 1200, бетононасос.
- Бригады или специалисты: Бригада каменщиков №3, бригада отделочников.
- Материалы: Бетон марки М300, арматура d12, кирпич облицовочный.
- Спецтехника: Автовышка, бульдозер.
В OpenProject вы можете создать поле «Ресурсы» с типом «Список» (List) и заранее определить все возможные значения. Это превратит поле в удобный выпадающий список, исключающий ошибки ввода и стандартизирующий данные по всем задачам.

Как создать и активировать поле «Ресурсы»
На основе опыта использования, весь процесс выглядит так:
- Создание: Администратор переходит в Администрирование → Настраиваемые поля и создает новое поле для рабочих пакетов. Выбирается формат (например, «Список») и заполняются возможные значения (экскаватор, кран, бригада №3 и т.д.).



- Добавление созданного поля в форму типа пакета работ: Чтобы поле появилось при создании или редактировании задачи, его необходимо добавить в форму для соответствующего типа рабочего пакета (например, «Task»). Это делается в разделе администратора Администрирование → Рабочие пакеты → Типы → Выбранный тип → Настройка форм. Здесь созданное поле переносится из неактивных атрибутов (левый столбец) в активные (столбец справа).

- Вывод в таблицу. И наконец, чтобы видеть это поле в общем списке задач, его нужно добавить как столбец, нажав на иконку настройки столбцов в таблице рабочих пакетов.

Больше, чем просто список.
OpenProject предлагает множество форматов пользовательских полей :
- Текст / Длинный текст: Для описаний, комментариев, примечаний.
- Число / Число с плавающей точкой: Для количественных показателей (например, «Объем работ, м³», «Сметная стоимость»).
- Дата: Для специфических дат, не являющихся датами начала/окончания (например, «Дата поставки материала»).
- Логический (флажок): Для бинарных признаков (например, «Требуется допуск»).
- Пользователь: Для выбора конкретного сотрудника из системы (например, «Руководитель работ»).
- Версия: Для привязки к этапам или релизам проекта.
Заключение: OpenProject система - расширяемая система, растущая вместе с вашими потребностями
Как вы убедились на примере с полем «Ресурсы», путь от идеи до работающего столбца в таблице занимает несколько простых шагов, открывая дополнительные возможности для кастомизации.