Merge pull request #18635 from opf/merge-release/15.5-20250414123053
Merge release/15.5 into dev
@@ -25,6 +25,7 @@ targets:
|
||||
env:
|
||||
- NODE_ENV=production
|
||||
- NPM_CONFIG_PRODUCTION=false
|
||||
- SECRET_KEY_BASE=1
|
||||
dependencies:
|
||||
- epel-release
|
||||
- ImageMagick
|
||||
@@ -52,3 +53,4 @@ buildpack: https://github.com/opf/heroku-buildpack-multi.git#master
|
||||
env:
|
||||
- NODE_ENV=production
|
||||
- NPM_CONFIG_PRODUCTION=false
|
||||
- SECRET_KEY_BASE=1
|
||||
|
||||
@@ -57,7 +57,7 @@ module WorkPackageRelationsTab
|
||||
def soonest_start
|
||||
return @soonest_start if defined?(@soonest_start)
|
||||
|
||||
@soonest_start = relation.successor_soonest_start(gap: 0.days)
|
||||
@soonest_start = relation.successor_soonest_start
|
||||
end
|
||||
|
||||
def inspect
|
||||
|
||||
@@ -105,7 +105,6 @@
|
||||
ignore_non_working_days: work_package.ignore_non_working_days,
|
||||
schedule_manually:,
|
||||
is_schedulable: !disabled?,
|
||||
minimal_scheduling_date:,
|
||||
is_milestone: milestone?,
|
||||
date_mode:,
|
||||
start_date_field_id: "work_package_start_date",
|
||||
|
||||
@@ -95,10 +95,6 @@ module WorkPackages
|
||||
def disabled_checkbox?
|
||||
!schedule_manually && work_package.children.any?
|
||||
end
|
||||
|
||||
def minimal_scheduling_date
|
||||
schedule_manually ? nil : work_package.start_date
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -236,6 +236,8 @@ class WorkPackages::DatePickerController < ApplicationController
|
||||
.slice(*allowed_touched_params)
|
||||
.merge(schedule_manually:, date_mode:, triggering_field: params[:triggering_field])
|
||||
.permit!
|
||||
else
|
||||
{}
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -173,11 +173,10 @@ class Relation < ApplicationRecord
|
||||
successor.start_date || successor.due_date
|
||||
end
|
||||
|
||||
def successor_soonest_start(gap: 1.day)
|
||||
def successor_soonest_start
|
||||
if follows? && predecessor_date
|
||||
days = WorkPackages::Shared::Days.for(from)
|
||||
relation_start_date = predecessor_date + gap
|
||||
days.soonest_working_day(relation_start_date, lag:)
|
||||
days = WorkPackages::Shared::WorkingDays.new
|
||||
days.add_lag(predecessor_date, lag)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
#-- copyright
|
||||
# OpenProject is an open source project management software.
|
||||
# Copyright (C) the OpenProject GmbH
|
||||
@@ -33,32 +35,49 @@ module WorkPackage::SchedulingRules
|
||||
!schedule_manually?
|
||||
end
|
||||
|
||||
# TODO: move into work package contract (possibly a module included into the contract)
|
||||
# Calculates the minimum date that
|
||||
# will not violate the precedes relations (max(finish date, start date) + relation lag)
|
||||
# of this work package or its ancestors
|
||||
# e.g.
|
||||
# AP(due_date: 2017/07/25)-precedes(lag: 0)-A
|
||||
# |
|
||||
# parent
|
||||
# |
|
||||
# BP(due_date: 2017/07/22)-precedes(lag: 2)-B
|
||||
# |
|
||||
# parent
|
||||
# |
|
||||
# CP(due_date: 2017/07/25)-precedes(lag: 2)-C
|
||||
# Calculates the minimum date that will not violate the precedes relations
|
||||
# (max(finish date, start date) + relation lag) of this work package or its
|
||||
# ancestors
|
||||
#
|
||||
# Then soonest_start for:
|
||||
# C is 2017/07/28
|
||||
# B is 2017/07/26
|
||||
# A is 2017/07/26
|
||||
def soonest_start
|
||||
# eager load `to` and `from` to avoid n+1 on successor_soonest_start
|
||||
@soonest_start ||=
|
||||
# Lag is the number of non working days between 2 work packages of a
|
||||
# follows/precedes relation.
|
||||
#
|
||||
# For instance:
|
||||
# AP -------------- precedes ----- A
|
||||
# (due_date: 2017/07/25) (lag: 0) |
|
||||
# parent
|
||||
# |
|
||||
# BP -------------- precedes ----- B
|
||||
# (due_date: 2017/07/22) (lag: 2) |
|
||||
# parent
|
||||
# |
|
||||
# CP -------------- precedes ----- C
|
||||
# (due_date: 2017/07/25) (lag: 2)
|
||||
#
|
||||
# Then successor_soonest_start for each relation is:
|
||||
# A is 2017/07/26 (AP due date: 25, no lag => 26)
|
||||
# B is 2017/07/27 (BP due date: 22, 23 and 24 are non-working days, 25 and 26 is the 2 days lag => 27)
|
||||
# C is 2017/07/28 (CP due date: 25, 26 and 27 is the 2 days lag => 28)
|
||||
#
|
||||
# The soonest start for this work package is the maximum of these values: 2017/07/28.
|
||||
#
|
||||
# @param working_days_from [WorkPackage, nil] the work package for which to
|
||||
# find the next working day after the soonest start given by the scheduling
|
||||
# relations. If nil, the work package itself is used. Useful for a work
|
||||
# package calculating the soonest start given by its parent as it may have a
|
||||
# different `ignore_working_days` value than its parent.
|
||||
def soonest_start(working_days_from: nil)
|
||||
@scheduling_relations_soonest_start ||=
|
||||
Relation
|
||||
.used_for_scheduling_of(self)
|
||||
.includes(:to, :from)
|
||||
.includes(:to) # eager load `to` to avoid n+1 in #successor_soonest_start
|
||||
.filter_map(&:successor_soonest_start)
|
||||
.max
|
||||
|
||||
# The final result should not be cached as it depends on
|
||||
# ignore_non_working_days value, which can change between consecutive calls
|
||||
# to #soonest_start
|
||||
days = WorkPackages::Shared::Days.for(working_days_from || self)
|
||||
days.soonest_working_day(@scheduling_relations_soonest_start)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -56,6 +56,7 @@ class WorkPackages::ScheduleDependency::Dependency
|
||||
follows_relations
|
||||
.filter_map(&:successor_soonest_start)
|
||||
.max
|
||||
.then { days.soonest_working_day(it) }
|
||||
end
|
||||
|
||||
def start_date
|
||||
@@ -91,4 +92,8 @@ class WorkPackages::ScheduleDependency::Dependency
|
||||
def alive_descendants_dates
|
||||
alive_descendants.filter_map(&:due_date) + alive_descendants.filter_map(&:start_date)
|
||||
end
|
||||
|
||||
def days
|
||||
WorkPackages::Shared::Days.for(work_package)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -293,6 +293,7 @@ class WorkPackages::SetAttributesService < BaseServices::SetAttributes
|
||||
end
|
||||
|
||||
def update_dates_from_self
|
||||
# this method is only called by #update_dates when there are no children
|
||||
min_start = new_start_date
|
||||
|
||||
return unless min_start
|
||||
@@ -388,6 +389,7 @@ class WorkPackages::SetAttributesService < BaseServices::SetAttributes
|
||||
end
|
||||
|
||||
def new_start_date
|
||||
# this method is only called by #update_dates_from_self when there are no children
|
||||
if work_package.schedule_manually?
|
||||
# Weird rule from SetScheduleService: if the work package does not have a
|
||||
# start date, it inherits it from the parent soonest start, regardless of
|
||||
@@ -396,37 +398,38 @@ class WorkPackages::SetAttributesService < BaseServices::SetAttributes
|
||||
|
||||
days.soonest_working_day(new_start_date_from_parent)
|
||||
else
|
||||
min_start = new_start_date_from_parent || new_start_date_from_self
|
||||
min_start = [new_start_date_from_parent, work_package.soonest_start].compact.max
|
||||
days.soonest_working_day(min_start)
|
||||
end
|
||||
end
|
||||
|
||||
# Returns the soonest start date from the parent if the parent has changed.
|
||||
# If the parent has changed, #soonest_start would be inaccurate.
|
||||
def new_start_date_from_parent
|
||||
return unless work_package.parent_id_changed? &&
|
||||
work_package.parent
|
||||
|
||||
work_package.parent.soonest_start
|
||||
end
|
||||
|
||||
def new_start_date_from_self
|
||||
return unless work_package.schedule_manually_changed?
|
||||
|
||||
[min_child_date, work_package.soonest_start].compact.max
|
||||
work_package.parent.soonest_start(working_days_from: work_package)
|
||||
end
|
||||
|
||||
def new_due_date(min_start)
|
||||
duration = children_duration || work_package.duration
|
||||
return unless work_package.due_date || duration
|
||||
# this method is only called by #update_dates_from_self when there are no children
|
||||
if work_package.due_date_came_from_user?
|
||||
work_package.due_date
|
||||
elsif reuse_current_due_date?
|
||||
# if due date is before start date, then start is used as due date.
|
||||
[min_start, work_package.due_date].max
|
||||
elsif work_package.duration
|
||||
days.due_date(min_start, work_package.duration)
|
||||
end
|
||||
end
|
||||
|
||||
due_date =
|
||||
if duration
|
||||
days.due_date(min_start, duration)
|
||||
else
|
||||
work_package.due_date
|
||||
end
|
||||
def reuse_current_due_date?
|
||||
return false if work_package.due_date.nil?
|
||||
return true if work_package.ignore_non_working_days_came_from_user?
|
||||
|
||||
# if due date is before start date, then start is used as due date.
|
||||
[min_start, due_date].max
|
||||
# use due date only if duration cannot be used
|
||||
work_package.duration.nil?
|
||||
end
|
||||
|
||||
def work_package
|
||||
|
||||
@@ -43,6 +43,11 @@ module WorkPackages
|
||||
WorkingDays.new.lag(predecessor_date, successor_date)
|
||||
end
|
||||
|
||||
def add_lag(date, lag)
|
||||
# lag is *always* excluding non-working days (at least for now)
|
||||
WorkingDays.new.add_lag(date, lag)
|
||||
end
|
||||
|
||||
def start_date(due_date, duration)
|
||||
return nil unless due_date && duration
|
||||
raise ArgumentError, "duration must be strictly positive" if duration.is_a?(Integer) && duration <= 0
|
||||
@@ -57,9 +62,8 @@ module WorkPackages
|
||||
start_date + duration - 1
|
||||
end
|
||||
|
||||
def soonest_working_day(date, lag: nil)
|
||||
lag ||= 0
|
||||
date + lag.days if date
|
||||
def soonest_working_day(date)
|
||||
date
|
||||
end
|
||||
|
||||
def working?(_date)
|
||||
|
||||
@@ -40,7 +40,7 @@ module WorkPackages
|
||||
def duration(start_date, due_date)
|
||||
return nil unless start_date && due_date
|
||||
|
||||
(start_date..due_date).count { working?(_1) }
|
||||
(start_date..due_date).count { working?(it) }
|
||||
end
|
||||
|
||||
# Returns the number of working days between a predecessor date and
|
||||
@@ -51,6 +51,18 @@ module WorkPackages
|
||||
duration(predecessor_date + 1.day, successor_date - 1.day)
|
||||
end
|
||||
|
||||
def add_lag(date, lag)
|
||||
return nil unless date
|
||||
|
||||
date_after_lag = date + 1.day
|
||||
lag ||= 0
|
||||
while lag > 0
|
||||
lag -= 1 if working?(date_after_lag)
|
||||
date_after_lag += 1
|
||||
end
|
||||
date_after_lag
|
||||
end
|
||||
|
||||
def start_date(due_date, duration)
|
||||
assert_strictly_positive_duration(duration)
|
||||
return nil unless due_date && duration
|
||||
@@ -75,16 +87,9 @@ module WorkPackages
|
||||
due_date
|
||||
end
|
||||
|
||||
def soonest_working_day(date, lag: nil)
|
||||
def soonest_working_day(date)
|
||||
return unless date
|
||||
|
||||
lag ||= 0
|
||||
|
||||
while lag > 0
|
||||
lag -= 1 if working?(date)
|
||||
date += 1
|
||||
end
|
||||
|
||||
until working?(date)
|
||||
date += 1
|
||||
end
|
||||
@@ -127,7 +132,7 @@ module WorkPackages
|
||||
def assert_some_working_week_days_exist
|
||||
return if @working_week_days_exist
|
||||
|
||||
if working_week_days.all? { |working| working == false }
|
||||
if working_week_days.all?(false)
|
||||
raise "cannot have all week days as non-working days"
|
||||
end
|
||||
|
||||
|
||||
@@ -870,7 +870,7 @@ zh-CN:
|
||||
page: "页"
|
||||
row_count: "行数"
|
||||
column_count: "列数"
|
||||
widgets: "小部件"
|
||||
widgets: "微件"
|
||||
journal:
|
||||
notes: "备注"
|
||||
cause_type: "Cause 类型"
|
||||
|
||||
@@ -47,7 +47,7 @@ The work package will the be displayed in the table view:
|
||||
|
||||

|
||||
|
||||
Another option to create a work package is to do it from the header menu. The [work package types](../../user-guide/projects/project-settings/work-package-types/#work-package-types) that are activated, will be shown and you can select the relevant work package type to be created.
|
||||
Another option to create a work package is to do it from the header menu. The [work package types](../../user-guide/projects/project-settings/work-packages/#work-package-types) that are activated, will be shown and you can select the relevant work package type to be created.
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -126,7 +126,7 @@ In OpenProject, a custom field is defined as an additional field which can be ad
|
||||
|
||||
**More information on custom fields in OpenProject**
|
||||
|
||||
- [Read how to enable custom fields in projects to use them in work packages](../user-guide/projects/project-settings/custom-fields/)
|
||||
- [Read how to enable custom fields in projects to use them in work packages](../user-guide/projects/project-settings/work-packages/#work-package-custom-fields)
|
||||
- [Read how to create custom fields as a system admin in OpenProject](../system-admin-guide/custom-fields/)
|
||||
|
||||
### Custom query
|
||||
@@ -460,7 +460,7 @@ In OpenProject, a [work package](../user-guide/work-packages/#overview) is defin
|
||||
|
||||
### Work package categories
|
||||
|
||||
Work package categories are a functionality used to automatically assign a [member](#member) to a work package by specifying a category. [Read more about work package categories in OpenProject](../user-guide/projects/project-settings/work-package-categories/#manage-work-package-categories).
|
||||
Work package categories are a functionality used to automatically assign a [member](#member) to a work package by specifying a category. [Read more about work package categories in OpenProject](../user-guide/projects/project-settings/work-packages/#work-package-categories).
|
||||
|
||||
### Work package ID
|
||||
|
||||
@@ -474,7 +474,7 @@ The work package table in OpenProject is defined as the overview of all work pac
|
||||
|
||||
### Work package types
|
||||
|
||||
Work package types are the different items a work package can represent. Each work package is associated to exactly one type. Examples for most used work package types are a Task, a Milestone, a [Phase](#phase) or a Bug. The work package types can be customized in the system administration. [Read more about work package types in OpenProject](../user-guide/projects/project-settings/work-package-types/#work-package-types).
|
||||
Work package types are the different items a work package can represent. Each work package is associated to exactly one type. Examples for most used work package types are a Task, a Milestone, a [Phase](#phase) or a Bug. The work package types can be customized in the system administration. [Read more about work package types in OpenProject](../user-guide/projects/project-settings/work-packages/#work-package-types).
|
||||
|
||||
### Work package view
|
||||
|
||||
|
||||
@@ -124,7 +124,7 @@ In the activity tab, updates to long text custom fields will be displayed as in
|
||||
|
||||

|
||||
|
||||
Clicking on the "Details" link will take the user to the diff view, which is also used for work package descriptions and project status explanations. See our [user guide on custom fields](../../../user-guide/projects/project-settings/custom-fields/) for more information.
|
||||
Clicking on the "Details" link will take the user to the diff view, which is also used for work package descriptions and project status explanations. See our [user guide on custom fields](../../../user-guide/projects/project-settings/work-packages/#work-package-custom-fields) for more information.
|
||||
|
||||
<!--more-->
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@ Additionally, users can include sub-projects when adding, which automatically se
|
||||
|
||||

|
||||
|
||||
Learn more about [custom fields and how to create them](../../../user-guide/projects/project-settings/custom-fields/) in our user guide.
|
||||
Learn more about [custom fields and how to create them](../../../user-guide/projects/project-settings/work-packages/#work-package-custom-fields) in our user guide.
|
||||
|
||||
### Use relative work package attribute macros
|
||||
|
||||
|
||||
@@ -132,7 +132,7 @@ You can [assign a custom field to a work package type](../manage-work-packages/w
|
||||
|
||||
### Add a custom field to one or multiple projects
|
||||
|
||||
You can activate the custom field for specific projects under the respective [project settings](../../user-guide/projects/project-settings/custom-fields/).
|
||||
You can activate the custom field for specific projects under the respective [project settings](../../user-guide/projects/project-settings/work-packages/#work-package-custom-fields).
|
||||
|
||||
> [!TIP]
|
||||
> This is not relevant if the setting **For all projects** has been configured for the custom field.
|
||||
@@ -150,4 +150,4 @@ To **edit an existing custom field** select the appropriate tab and click on the
|
||||
|
||||
To **delete** a custom field, click on the delete icon next to the respective custom field in the list.
|
||||
|
||||

|
||||

|
||||
|
||||
@@ -30,7 +30,7 @@ Click the green **+ Type** button to add a new work package type in the system,
|
||||
4. You can enter a **default text for the work package description field**, which always be shown when creating new work package from this type. This way, you can easily create work package templates, e.g. for risk management or bug tracking which already contain certain required information in the description.
|
||||
5. Choose whether the type should be a **milestone**, e.g. displayed as a milestone in the Gantt chart with the same start and finish date.
|
||||
6. Choose whether the type should be displayed in the [roadmap](../../../user-guide/roadmap/) by default.
|
||||
7. Select if the work package type should be **active in new projects by default**. This way work package types will not need to be [activated in the project settings](../../../user-guide/projects/project-settings/work-package-types/) but will be available for every project.
|
||||
7. Select if the work package type should be **active in new projects by default**. This way work package types will not need to be [activated in the project settings](../../../user-guide/projects/project-settings/work-packages/#work-package-types) but will be available for every project.
|
||||
8. Click the **Save** button to add the new type.
|
||||
|
||||

|
||||
|
||||
@@ -19,17 +19,29 @@ You can configure general system settings in OpenProject. Under System settings
|
||||
|
||||
5. **Cache formatted text** allows to save formatted text in cache, which will help load Wiki Pages faster.
|
||||
|
||||
6. **Enable feeds** – enables RSS feeds on wiki pages, forums and news via RSS client.
|
||||
6. **Allowed link protocols** allows protocols to be rendered as links in work package descriptions, long text fields and comments. Some examples are:
|
||||
- vis://FE0E3D1D-9DC5-4931-BF6C-9E01216047A4/3/8326584
|
||||
- dict://term lookup
|
||||
- vscode://file/path/to/file
|
||||
- figma://
|
||||
- element://vector/webapp/#/room/!ID
|
||||
- tel://number
|
||||
- sms://number
|
||||
- facetime://number
|
||||
One protocol should be entered per line.
|
||||
> [!NOTE]
|
||||
> Protocols http, https, and mailto are always allowed.
|
||||
7. **Enable feeds** – enables RSS feeds on wiki pages, forums and news via RSS client.
|
||||
|
||||
7. Set **feed content limit**.
|
||||
8. Set **feed content limit**.
|
||||
|
||||
8. **Work packages and projects export limit** defines the maximum items a structured export for work packages and projects can contain (i.e., lines of CSV, XLS etc.). Increasing this value allows you to export more items at once, but at the cost of higher RAM consumption. If you're experiencing errors exporting with a high value, try reducing this number first.
|
||||
9. **Work packages and projects export limit** defines the maximum items a structured export for work packages and projects can contain (i.e., lines of CSV, XLS etc.). Increasing this value allows you to export more items at once, but at the cost of higher RAM consumption. If you're experiencing errors exporting with a high value, try reducing this number first.
|
||||
|
||||
9. **Max size of text files displayed inline** defines the maximum file size up to which different versions of a file are displayed next to each other when comparing (diff) two versions in a repository.
|
||||
10. **Max size of text files displayed inline** defines the maximum file size up to which different versions of a file are displayed next to each other when comparing (diff) two versions in a repository.
|
||||
|
||||
10. **Max number of diff lines displayed** defines the maximum number of lines displayed when comparing (diff) two versions in a repository.
|
||||
11. **Max number of diff lines displayed** defines the maximum number of lines displayed when comparing (diff) two versions in a repository.
|
||||
|
||||
11. **Display security badge** enables to display a badge with your installation status in the [Information administration panel](../../information), and on the [start page](../../../user-guide/home/). It is displayed to administrators only.
|
||||
12. **Display security badge** enables to display a badge with your installation status in the [Information administration panel](../../information), and on the [start page](../../../user-guide/home/). It is displayed to administrators only.
|
||||
|
||||
> [!NOTE]
|
||||
> If enabled, this will display a badge with your installation status in the [Information](https://qa.openproject-edge.com/admin/info) administration panel, and on the home page. It is displayed to administrators only.
|
||||
|
||||
|
Before Width: | Height: | Size: 134 KiB After Width: | Height: | Size: 801 KiB |
@@ -18,7 +18,8 @@ Meetings in OpenProject allow you to manage and document your project meetings,
|
||||
> [!IMPORTANT]
|
||||
> With OpenProject 13.1 we introduced dynamic meetings alongside [classic meetings](classic-meetings).
|
||||
> With OpenProject 15.3 dynamic meetings are replaced by [one-time meetings](one-time-meetings) and [recurring meetings](recurring-meetings) to further improve meeting management.
|
||||
> Please keep in mind that the ability to create classic meetings will eventually be removed from OpenProject.
|
||||
> Please keep in mind that the ability to create classic meetings will be removed from OpenProject with OpenProject 16.0.
|
||||
|
||||
|
||||
|
||||
| Topic | Content |
|
||||
|
||||
@@ -19,7 +19,11 @@ Meetings in OpenProject allow you to manage and document your project meetings,
|
||||
> With OpenProject 15.3 dynamic meetings are replaced by [one-time meetings](../one-time-meetings) and [recurring meetings](../recurring-meetings) to further improve meeting management.
|
||||
|
||||
> [!IMPORTANT]
|
||||
> Please keep in mind that the ability to create classic meetings will eventually be removed from OpenProject.At the moment, the Meetings module lets you create classic or dynamic meetings but please keep in mind that the ability to create classic meetings will eventually be removed from OpenProject.
|
||||
> Please keep in mind that the ability to create classic meetings will be removed with OpenProject 16.0. Don't worry, no data will be lost:
|
||||
> - All existing classic meetings will be converted into a one-time dynamic meetings.
|
||||
> - Agenda text will be converted to agenda items.
|
||||
> - Meeting minutes will be converted into meeting outcome.
|
||||
> - Author informattion will be saved in the respective presenter fields.
|
||||
|
||||
| Topic | Content |
|
||||
|---------------------------------------------------------------------------|---------------------------------------------|
|
||||
|
||||
@@ -16,7 +16,12 @@ With OpenProject 15.3.0, dynamic meetings can either be [one-time meetings](../o
|
||||
|
||||
## How long will the classic meetings be available?
|
||||
|
||||
[Classic meetings](../classic-meetings) will be deprecated with one of the future releases after 15.3. We will communicate this in advance to ensure a smooth transition for all our users.
|
||||
[Classic meetings](../classic-meetings) will be deprecated with 16.0 release.
|
||||
|
||||
- All existing classic meetings will be converted into a one-time dynamic meetings.
|
||||
- Agenda text will be converted to agenda items.
|
||||
- Meeting minutes will be converted into meeting outcome.
|
||||
- Author informattion will be saved in the respective presenter fields.
|
||||
|
||||
## Can I add a meeting to a calendar?
|
||||
|
||||
|
||||
@@ -255,17 +255,17 @@ Clicking on this button will show following status options:
|
||||
|
||||
### Open meeting status
|
||||
|
||||
When a meeting is *Open*, you can prepare the agenda by adding or removing agenda items. Once the agenda is ready, the meeting can be marked as *In Progress*.
|
||||
When a meeting is *Open*, you can prepare the agenda by adding or removing agenda items. Once the agenda is ready, the meeting can be started.
|
||||
|
||||
> [!TIP]
|
||||
>
|
||||
> In an open meeting state in addition to the status menu, you will directly see the **Mark as in progress** link on the right.
|
||||
> In an open meeting state in addition to the status menu, you will directly see the **Start a meeting** link on the right.
|
||||
|
||||

|
||||

|
||||
|
||||
### Mark meeting in progress
|
||||
|
||||
Once the agenda is ready, the meeting can be marked as *In progress*. To mark a meeting in progress you can use the dropdown status menu on the right side or under the meeting name.
|
||||
Once the agenda is ready, the meeting can be started. To mark a meeting in progress you can use the dropdown status menu and select *In progress* or click the *Start meeting* link on the right side.
|
||||
|
||||
Setting a meeting *In progress* allows adding [**Agenda item outcomes**](#add-agenda-item-outcomes) by using the **+ Outcome** buttons.
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 86 KiB After Width: | Height: | Size: 96 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 49 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 63 KiB |
|
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 95 KiB After Width: | Height: | Size: 94 KiB |
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 86 KiB |
|
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 82 KiB |
|
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 86 KiB |
|
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 54 KiB |
|
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 85 KiB |
|
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 58 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 70 KiB |
|
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 59 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 70 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 92 KiB |
|
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 92 KiB |
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 70 KiB |
|
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 85 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 76 KiB |
@@ -101,7 +101,7 @@ Within the same menu you also have the following options:
|
||||
|
||||
### Edit a recurring meeting occurrence
|
||||
|
||||
To edit a single meeting within recurring meeting series you have to open it first by clicking the **Open** button next to the meeting. It will then be displayed under *Open* section on the recurring meeting index page, where you can click the meeting date and time.
|
||||
To edit a single meeting within recurring meeting series you have to open it first by clicking the **Open** button next to the meeting. It will then be displayed under *Agenda opened* section on the recurring meeting index page, where you can click the meeting date and time.
|
||||
|
||||

|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 80 KiB |
|
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 136 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 59 KiB |
|
Before Width: | Height: | Size: 134 KiB After Width: | Height: | Size: 135 KiB |
|
Before Width: | Height: | Size: 95 KiB After Width: | Height: | Size: 108 KiB |
@@ -7,13 +7,12 @@ keywords: project settings
|
||||
---
|
||||
# Project settings
|
||||
|
||||
Customize your project in the project settings.
|
||||
In OpenProject you can customize your project settings. To do this, open a project via the *Select a project* drop-down menu and navigate to *Project settings* in the project menu.
|
||||
|
||||
Open a project via the Select a project drop-down menu and navigate to -> *Project settings* in the project menu.
|
||||

|
||||
|
||||

|
||||
|
||||
> **Note**: You have to be a project administrator in order to see and access the project settings.
|
||||
> [!NOTE]
|
||||
> You need to be a project administrator in order to see and access the project settings.
|
||||
|
||||
## Overview
|
||||
|
||||
@@ -22,9 +21,9 @@ Open a project via the Select a project drop-down menu and navigate to -> *Proje
|
||||
| [Project information](project-information) | Define project name, subproject, description, project status, and much more. |
|
||||
| [Project attributes](project-attributes) | View and edit project attributes in a project. |
|
||||
| [Modules](modules) | Activate or deactivate modules in a project. |
|
||||
| [Work package types](work-package-types) | Activate or deactivate work package types in a project. |
|
||||
| [Work package categories](work-package-categories) | Create and manage work package categories. |
|
||||
| [Custom fields](custom-fields) | Activate or deactivate custom fields for a project. |
|
||||
| [Work package types](work-packages) | Activate or deactivate work package types in a project. |
|
||||
| [Work package categories](work-packages) | Create and manage work package categories. |
|
||||
| [Work package custom fields](work-packages) | Activate or deactivate custom fields for work packages in a project. |
|
||||
| [Versions](versions) | Create and manage versions in a project. |
|
||||
| [Repository](repository) | Activate and manage a SVN or GIT repository for a project. |
|
||||
| [Activities (time tracking)](activities-time-tracking) | Activate or deactivate Activities (for time tracking) in a project. |
|
||||
|
||||
|
Before Width: | Height: | Size: 59 KiB |
@@ -1,7 +1,7 @@
|
||||
---
|
||||
sidebar_navigation:
|
||||
title: Time tracking activities
|
||||
priority: 300
|
||||
priority: 400
|
||||
description: Manage activities for time tracking.
|
||||
keywords: activities for time tracking, log time settings
|
||||
---
|
||||
@@ -13,8 +13,8 @@ You can [configure available activities](../../../../system-admin-guide/time-and
|
||||
**Time tracking** is defined as a module which allows users to log time on work packages. Once the time tracking module is activated, time can be logged via the action menu of a work package.
|
||||
</div>
|
||||
|
||||
Navigate to *Project settings -> Time tracking activities*.
|
||||
To enable time tracking activities for a specific project, navigate to *Project settings -> Time tracking activities*.
|
||||
|
||||
Select the activities which you want to activate for time tracking in your project. Press the **Save** button to apply your changes.
|
||||
|
||||

|
||||

|
||||
|
Before Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 63 KiB |
@@ -1,22 +1,23 @@
|
||||
---
|
||||
sidebar_navigation:
|
||||
title: Backlogs settings
|
||||
priority: 200
|
||||
priority: 300
|
||||
description: Backlogs settings.
|
||||
keywords: backlogs settings
|
||||
---
|
||||
# Backlogs settings
|
||||
|
||||
Configure your backlogs settings for a project.
|
||||
In OpenProject, you can configure your backlogs settings specific to each project.
|
||||
|
||||
## Set the definition of done
|
||||
|
||||
You can set the definition of done for your backlogs module. This defines when a work packages should be treated as being done and calculated to the burndown (or burnup chart).
|
||||
You can define what "done" means for the Backlogs module. This determines when a work package should be considered complete and included in the burndown (or burnup) chart.
|
||||
|
||||
Choose the status which should be treated as done.
|
||||
Choose the status which should be treated as "done".
|
||||
|
||||
Press the blue **Save** button to apply your changes.
|
||||
Press the **Save** button to apply your changes.
|
||||
|
||||

|
||||
The **Rebuild positions** button recalculates the position of work packages in the product backlog.
|
||||
|
||||

|
||||
|
||||
The **Rebuild positions button** for the backlogs re-calculates the position of a work package in the product backlog.
|
||||
|
||||
|
Before Width: | Height: | Size: 49 KiB |
|
After Width: | Height: | Size: 84 KiB |
@@ -1,35 +0,0 @@
|
||||
---
|
||||
sidebar_navigation:
|
||||
title: Enable work package custom fields
|
||||
priority: 700
|
||||
description: Manage custom fields in a project.
|
||||
keywords: custom fields, activate work package custom field
|
||||
---
|
||||
# Enable custom fields in projects
|
||||
|
||||
Custom fields for work packages can be activated or deactivated under project settings.
|
||||
|
||||
<div class="glossary">
|
||||
**Custom fields** are defined as additional attribute fields which can be added to existing attribute fields. The different sections that can use custom fields are work packages, spent time, projects, versions, users, groups, activities (time tracking), and work package priorities.
|
||||
</div>
|
||||
|
||||
|
||||
> [!NOTE]
|
||||
> The instructions in this section *only* apply to custom fields for work packages.
|
||||
|
||||
Before you can enable a custom field, it needs to be created in the [system administration](../../../../system-admin-guide/custom-fields). Afterwards, open the respective project and go to *Project settings* -> *Custom fields*.
|
||||
|
||||
1. Manage the custom field by clicking on the name.
|
||||
|
||||
2. **Select if the custom fields shall be enabled in the project**. If enabled globally in the custom fields settings in the system administration, it will automatically be displayed in all projects.
|
||||
|
||||
3. View the work package types for which the custom field is already enabled. Only for the displayed types the custom field will be active. You can add the custom field to additional work package types by [adding them to the respective work package form](../../../../system-admin-guide/manage-work-packages/work-package-types/#work-package-form-configuration-enterprise-add-on).
|
||||
|
||||
4. **Create a new custom field** by clicking the **+ Custom field** button.
|
||||
|
||||
> [!TIP]
|
||||
> Keep in mind that you have to be a system administrator in order to create new custom fields.
|
||||
|
||||
5. Press the **Save** button to confirm your changes.
|
||||
|
||||

|
||||
|
Before Width: | Height: | Size: 52 KiB |
@@ -1,13 +1,14 @@
|
||||
---
|
||||
sidebar_navigation:
|
||||
title: File storages
|
||||
priority: 110
|
||||
priority: 100
|
||||
description: Manage the storages connected to the project and add a project folder.
|
||||
keywords: file storages, project folder, storages
|
||||
---
|
||||
# File storages
|
||||
|
||||
> **Info**: Before a storage service can be added to a project, an administrator must first set up [Nextcloud integration](../../../../system-admin-guide/integrations/nextcloud/) or [OneDrive/SharePoint integration](../../../../system-admin-guide/integrations/one-drive/) with OpenProject.
|
||||
> [!NOTE]
|
||||
> Before a storage service can be added to a project, an administrator must first set up [Nextcloud integration](../../../../system-admin-guide/integrations/nextcloud/) or [OneDrive/SharePoint integration](../../../../system-admin-guide/integrations/one-drive/) with OpenProject.
|
||||
|
||||
| Topic | Description |
|
||||
| ------------------------------------------------------------ | :------------------------------------------------ |
|
||||
@@ -27,6 +28,7 @@ To activate or de-activate the attachments being shown under **Files** tab in wo
|
||||
|
||||

|
||||
|
||||
> [!NOTE]
|
||||
> Please note that you need a *Manage files in project* permission to be able to activate or deactivate this work package attachment option.
|
||||
|
||||
## Add a new storage to a project
|
||||
@@ -43,7 +45,8 @@ In the page that follows, you will be able to select one of the file storages se
|
||||
|
||||
## Add a OneDrive/SharePoint storage to a project (Enterprise add-on)
|
||||
|
||||
> **Note**: OneDrive/SharePoint integration is an Enterprise add-on and can only be used with [Enterprise cloud](../../../../enterprise-guide/enterprise-cloud-guide/) or [Enterprise on-premises](../../../../enterprise-guide/enterprise-on-premises-guide/). An upgrade from the free Community edition is easy and helps support OpenProject.
|
||||
> [!NOTE]
|
||||
> OneDrive/SharePoint integration is an Enterprise add-on and can only be used with [Enterprise cloud](../../../../enterprise-guide/enterprise-cloud-guide/) or [Enterprise on-premises](../../../../enterprise-guide/enterprise-on-premises-guide/). An upgrade from the free Community edition is easy and helps support OpenProject.
|
||||
|
||||
If you have selected the OneDrive/SharePoint option in the previous step of storage selection, you will now see the **Project folder** options.
|
||||
|
||||
@@ -59,7 +62,8 @@ Click on **Add** to add your new OneDrive/SharePoint file storage to this projec
|
||||
|
||||
The SharePoint file storage is now available to all work packages in this project.
|
||||
|
||||
> **Note:** Please refer to the [OneDrive/SharePoint user guide](../../../file-management/one-drive-integration) for further instructions on using the integration at a user level.
|
||||
> [!TIP]
|
||||
> Please refer to the [OneDrive/SharePoint user guide](../../../file-management/one-drive-integration) for further instructions on using the integration at a user level.
|
||||
|
||||
## Add a Nextcloud storage to a project
|
||||
|
||||
@@ -79,7 +83,8 @@ Click on **Add** to add your new Nextcloud file storage to this project.
|
||||
|
||||
The Nextcloud file storage is now available to all work packages in this project.
|
||||
|
||||
> **Note:** For information on how to use the file storage (link Nextcloud user accounts at a user level, link files to a work package, view and download linked files, unlink files), please read our [Nextcloud integration user guide](../../../file-management/nextcloud-integration/).
|
||||
> [!TIP]
|
||||
> For information on how to use the file storage (link Nextcloud user accounts at a user level, link files to a work package, view and download linked files, unlink files), please read our [Nextcloud integration user guide](../../../file-management/nextcloud-integration/).
|
||||
|
||||
If you do not yet have an access token for the file storage in a project, you will be prompted to log into your file storage. You can choose to login immediately to establish the connection or to do it later.
|
||||
|
||||
@@ -105,7 +110,8 @@ For the moment, you will only be able to edit which project folder type is used
|
||||
|
||||

|
||||
|
||||
> **Note:** If the previously selected project folder type was **New folder with automatically managed permissions**, changing the project folder type will not delete the already created project folder. Changing it back will try to reconnect the previously created and used project folder.
|
||||
> [!TIP]
|
||||
> If the previously selected project folder type was **New folder with automatically managed permissions**, changing the project folder type will not delete the already created project folder. Changing it back will try to reconnect the previously created and used project folder.
|
||||
|
||||
### Delete an existing file storage
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 66 KiB |
@@ -1,16 +1,16 @@
|
||||
---
|
||||
sidebar_navigation:
|
||||
title: Modules
|
||||
priority: 900
|
||||
priority: 700
|
||||
description: Enable modules in a project.
|
||||
keywords: modules, select module in project, add
|
||||
---
|
||||
# Enable modules in a project
|
||||
|
||||
To **activate or deactivate modules** in a project select a project from the select a project drop-down menu in the left header navigation and choose -> *Project settings* -> *Modules*.
|
||||
To **activate or deactivate modules** in a project, select a project from the **Select a project** drop-down menu in the left header navigation, then go to *Project settings -> Modules*.
|
||||
|
||||
Setting a check mark next to a project module will activate the module in the project and a new menu item will appear in the project menu on the left.
|
||||
Setting a checkmark next to a module will activate it for the project, and a new menu item will appear in the project menu on the left.
|
||||
|
||||

|
||||

|
||||
|
||||
Visit our [user guide](../../../#overview-of-modules-in-openproject) overview to get an explanation of the different modules in OpenProject.
|
||||
Visit our [user guide](../../../#overview-of-modules-in-openproject) for an overview of the different modules available in OpenProject.
|
||||
|
After Width: | Height: | Size: 62 KiB |
|
After Width: | Height: | Size: 106 KiB |
@@ -1,7 +1,7 @@
|
||||
---
|
||||
sidebar_navigation:
|
||||
title: Project attributes
|
||||
priority: 985
|
||||
priority: 800
|
||||
description: Enabling and disabling project attributes for individual projects in OpenProject
|
||||
keywords: project attributes, project settings, enable, disable, project admin
|
||||
---
|
||||
|
||||
|
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 92 KiB |
@@ -7,26 +7,34 @@ keywords: project information
|
||||
---
|
||||
# Manage project information
|
||||
|
||||
Manage your project information in the Project settings: select a project and open the -> *Project Settings* -> *Information*.
|
||||
## Edit project information
|
||||
|
||||
**To view all details about managing projects**, view our [projects section](../../).
|
||||
To edit your project information in OpenProject select a project from the **Select a project** drop-down menu. Then navigate to *Project settings → Information* in the project menu on the left.
|
||||
|
||||
You will have the following options in the project settings.
|
||||
You can configure the following settings:
|
||||
|
||||
1. Set a **name for your project**. The name will be displayed in the project list.
|
||||
2. Set **custom fields**, e.g. Responsible Department, Risk assessment, Project ID, Project accountable, etc. (if activated in the -> *Administration* -> *Custom fields* -> within the custom fields for projects). Find out more about project custom fields [here](../../../../system-admin-guide/custom-fields/custom-fields-projects/).
|
||||
3. Select the **parent project**.
|
||||
4. Add a project **description**.
|
||||
5. Display or edit the **project identifier**. This is the part of the project name shown in the URL, e.g. /demo-project.
|
||||
6. This check-box sets a project to **public**. This ways users will be able to access the project without being a member of it.
|
||||
7. Set a **project status**. The project status can be displayed in the [project overview](../../../project-overview). If you want to set additional or different status options you can create and use a [project custom field](../../../../system-admin-guide/custom-fields/custom-fields-projects).
|
||||
8. Add a **project status description**. The status description will be shown on the [project overview](../../../project-overview) page.
|
||||
9. Display the required disk storage information.
|
||||
10. **Save** your changes.
|
||||
11. **Create a new subproject** for this project with the green **+ Subproject** button.
|
||||
12. **Copy the project**. When [copying a project](../../#copy-a-project) you can choose which modules you'd like to copy.
|
||||
13. **Archive a project**. This way the [archived project](../../#archive-a-project) will not appear in the project selection anymore and cannot be accessed by team members. You can view archived projects in the view all project lists.
|
||||
14. **Set as template** or **Remove from templates**. By [setting a project as template](../../project-templates/#create-a-project-template) it can be copied multiple times to create similar projects.
|
||||
15. **Delete a project**. By [deleting a project](../../#delete-a-project) the whole project with all included information will be removed.
|
||||
2. Add a project **description**.
|
||||
3. This check-box sets a project to **public**. This ways users will be able to access the project without being a member of it.
|
||||
4. Set a **project status**. The project status can be displayed in the [project overview](../../../project-overview). If you want to set additional or different status options you can create and use a [project custom field](../../../../system-admin-guide/custom-fields/custom-fields-projects).
|
||||
5. Add a **project status description**. The status description will be shown on the [project overview](../../../project-overview) page.
|
||||
6. Select the **parent project**.
|
||||
7. Edit **project attributes**.
|
||||
8. **Save** or **cancel** your changes.
|
||||
|
||||

|
||||

|
||||
|
||||
Further, in the top right corner you can [add a subproject](../../#create-a-subproject) and edit the **project identifier**. This is the part of the project name shown in the URL, e.g. /demo-project.
|
||||
|
||||

|
||||
|
||||
If you click the **three dot** icon, you will see a dropdown menu with the following options:
|
||||
|
||||
- [Copy a project](../../#copy-a-project)
|
||||
- [Archive a project](../../#archive-a-project)
|
||||
- [Set a project as a tempate](../../project-templates)
|
||||
- [Delete a project](../../#delete-a-project)
|
||||
|
||||

|
||||
|
||||
**To find out more about managing projects in OpenProject**, view the [projects section](../../).
|
||||
|
Before Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 229 KiB |
|
After Width: | Height: | Size: 69 KiB |
|
After Width: | Height: | Size: 44 KiB |
@@ -12,13 +12,14 @@ keywords: repository
|
||||
You can integrate a SVN or GIT repository in a project in OpenProject and access it directly in the project via the module Repositories.
|
||||
</div>
|
||||
|
||||
> **Note**: Repositories can only be integrated for Community edition and Enterprise on-premises edition versions.
|
||||
> [!IMPORTANT]
|
||||
> Repositories can only be integrated for Community edition and Enterprise on-premises edition versions.
|
||||
|
||||
Navigate to -> *Project settings* -> *Repository*.
|
||||
Navigate to *Project settings -> Repository*.
|
||||
|
||||
1. Choose a **source control management system** (SVN or GIT).
|
||||
2. Enter the URL of your existing repository.
|
||||
3. Enter username and password for your repository.
|
||||
4. Press the blue **Create** button.
|
||||
4. Press the **Create** button.
|
||||
|
||||

|
||||

|
||||
|
||||
|
After Width: | Height: | Size: 188 KiB |
@@ -1,7 +1,7 @@
|
||||
---
|
||||
sidebar_navigation:
|
||||
title: Required disk storage
|
||||
priority: 150
|
||||
priority: 200
|
||||
description: Monitor required disk storage.
|
||||
keywords: required storage, project folder, storages
|
||||
---
|
||||
|
||||
|
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 40 KiB |
@@ -1,60 +1,67 @@
|
||||
---
|
||||
sidebar_navigation:
|
||||
title: Versions
|
||||
priority: 600
|
||||
priority: 500
|
||||
description: Manage versions in OpenProject.
|
||||
keywords: manage versions
|
||||
---
|
||||
# Manage versions
|
||||
|
||||
Versions will be used, e.g. for roadmap planning to track certain product versions or releases. Work packages can be assigned to a version. They will be displayed in the [Roadmap](../../../roadmap).
|
||||
Versions are used to track product versions or releases, for example in roadmap planning. Work packages can be assigned to a version and will be displayed in the [Roadmap](../../../roadmap).
|
||||
|
||||
Also, version will be used to enable the Backlogs module, i.e. to create a product backlog and sprints in OpenProject.
|
||||
Versions are also used to enable the Backlogs module, i.e., to create a product backlog and manage sprints in OpenProject.
|
||||
|
||||
[Read here how to create a new backlogs version](../../../backlogs-scrum/manage-sprints).
|
||||
[Learn how to create a new backlogs version](../../../backlogs-scrum/manage-sprints).
|
||||
|
||||
## Create a new version
|
||||
|
||||
Press the green **+ Version** button to create a new version for a project.
|
||||
To create a new version for your project, navigate to *Project settings → Versions* in the project menu and click the green **+ Version** button.
|
||||
|
||||

|
||||

|
||||
|
||||
You can configure the following information.
|
||||
You can configure the following details:
|
||||
- **Name**: Set a name for the version.
|
||||
- **Description**: Add a description to clarify the purpose of the version.
|
||||
- **Status**: Choose the status of the version. The default status is open.
|
||||
- **Wiki page**: Select a wiki page to link directly from the version in the Roadmap.
|
||||
- **Start and finish date**: Set the planned start and finish dates.
|
||||
- **Sharing**: Choose whether the version should be shared with other projects (e.g., in the project hierarchy or with subprojects).
|
||||
> [!NOTE]
|
||||
> Note: You’ll need to configure the backlog column separately in each project that uses the version.
|
||||
- **Backlogs column**: Select a column for this version in the backlogs view. This is only necessary if you’re managing a [Scrum backlog](../../../backlogs-scrum).
|
||||
|
||||
1. Set a **name** for the version.
|
||||
2. Add a **description** to specify the version.
|
||||
3. Set **status** of a version, the default status is open.
|
||||
4. Choose a **wiki page** that you want to open directly from a version in the Roadmap.
|
||||
5. Set a **start date and finish date** for the version.
|
||||
6. Choose whether the version shall be **shared** with other projects, e.g. in the project hierarchy or subprojects.
|
||||
**Please note**: To give you maximum flexibility you will have to choose the column in the backlog individually for all projects using this version.
|
||||
7. Select a **column in backlogs view**. This is only required if you use the versions to manage your [Scrum backlog](../../../backlogs-scrum).
|
||||
8. Press the blue **Create** button to save your changes.
|
||||
|
||||

|
||||
Click the Create button to save your changes.
|
||||

|
||||
|
||||
## Edit or delete versions
|
||||
|
||||
1. Click on the **edit** icon at the right of the row to edit the version.
|
||||
2. Press the **delete** button at the right of the version to delete a version.
|
||||
3. You can **close all completed versions** with the button at the bottom of the list. In order to close only certain versions, open the details view and adapt the version **Status** (see above).
|
||||
Click on the **edit** icon at the right of the row to edit the version.
|
||||
|
||||
Please note: You can only edit versions (i.e. edit icon visible) in their original project, not in projects they're shared with.
|
||||
To remove a version, press the **delete** button.
|
||||
|
||||

|
||||
To close all completed versions at once, use the **Close completed versions** button at the bottom of the list. To close a specific version, open its details and change the **Status** to *Closed* (see above).
|
||||
|
||||
> [!NOTE]
|
||||
>
|
||||
> You can only edit versions in the project they were originally created in. In projects where a version is shared, the edit option won’t be available.
|
||||
|
||||

|
||||
|
||||
## Close a version
|
||||
|
||||
To close a version, open the details view of a version and set the **Status** to *Closed*.
|
||||
To close a version, open its details and set the **Status** to *Closed*.
|
||||
|
||||

|
||||

|
||||
|
||||
## Differences between open, locked and closed versions
|
||||
|
||||
There are (of course) a few differences between open, locked and closed versions:
|
||||
There are a few differences between open, locked and closed versions:
|
||||
|
||||
- **Open version**: Can be used in all places where version can be used. Work packages can be added and removed. The version is visible in the Backlogs module. It will also be shown in the Roadmap module.
|
||||
- **Locked version**: No work packages can be added or removed. The version is not visible in the Backlogs module anymore. The version is still visible in the Roadmap module.
|
||||
Use case: E.g. the scope of a new software release or a sprint has been decided and should not be changed anymore. It is currently being worked on.
|
||||
- **Closed version**: No work packages can be added or removed. The version is not visible in the Backlogs module any more. It will also not be shown in the Roadmap module unless you explicitly filter for it.
|
||||
Use case: A closed version is meant as a completed version, e.g. the new software release mentioned earlier has been finished and you're working on the next one.
|
||||
- **Open version**:
|
||||
Versions in this state can be used throughout the system. Work packages can be added or removed. The version is visible in both the Backlogs and Roadmap modules.
|
||||
- **Locked version**:
|
||||
Work packages cannot be added or removed. The version is **not** visible in the Backlogs module but is still shown in the Roadmap module.
|
||||
*Use case:* You’ve finalized the scope of a sprint or release and want to prevent changes while it's being worked on.
|
||||
- **Closed version**:
|
||||
Work packages cannot be added or removed. The version is no longer shown in the Backlogs or Roadmap modules, unless you explicitly filter for closed versions.
|
||||
*Use case:* The release or sprint is complete, and you’ve moved on to the next one.
|
||||
|
||||
|
Before Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 75 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 60 KiB |
@@ -1,36 +0,0 @@
|
||||
---
|
||||
sidebar_navigation:
|
||||
title: Work package categories
|
||||
priority: 500
|
||||
description: Manage work package categories.
|
||||
keywords: work package categories
|
||||
---
|
||||
# Manage work package categories
|
||||
|
||||
In the work package forms you have the default attribute to select **work package categories** to differentiate work packages, filter, and group by certain attributes.
|
||||
|
||||
You can manage these work package categories in the -> *Project settings* -> *Work package categories*.
|
||||
|
||||
## Create a new work package category
|
||||
|
||||
Press the green **+ Category** button to create a new category for a project.
|
||||
|
||||

|
||||
|
||||
You can enter the following information.
|
||||
|
||||
1. **Name** your category
|
||||
2. Choose a default **Assignee** if the work package has this category.
|
||||
3. Press the blue **Create** button.
|
||||
|
||||

|
||||
|
||||
## Edit or delete a category
|
||||
|
||||
From the list of categories you can choose a category to edit or delete.
|
||||
|
||||
1. Press the **edit** button to make changes to a category.
|
||||
|
||||
2. Press the **delete** button to delete a category.
|
||||
|
||||

|
||||
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 27 KiB |
@@ -1,19 +0,0 @@
|
||||
---
|
||||
sidebar_navigation:
|
||||
title: Work package types
|
||||
priority: 800
|
||||
description: Enable or disable work package types in a project.
|
||||
keywords: work package types
|
||||
---
|
||||
# Work package types
|
||||
|
||||
**Activate or deactivate work package types for a project**.
|
||||
Select the respective project via the project drop-down menu at the top left in the header navigation and choose -> *Project settings* -> *Work package types* in the project menu.
|
||||
|
||||

|
||||
|
||||
Check the different types which you want to enable for your project. In the table you will also see if the work package types is displayed in the roadmap by default and if it is a milestone.
|
||||
|
||||
Press the blue **Save** button to confirm your changes.
|
||||
|
||||
[Work package types can be managed](../../../../system-admin-guide/manage-work-packages/work-package-types) in the System *Administration* -> *Work packages* -> *Types*.
|
||||
|
Before Width: | Height: | Size: 37 KiB |
@@ -0,0 +1,85 @@
|
||||
---
|
||||
sidebar_navigation:
|
||||
title: Work packages
|
||||
priority: 600
|
||||
description: Manage work package types, categories and custom fields in OpenProject project settings.
|
||||
keywords: work package type, work package category, work package custom fields
|
||||
---
|
||||
# Work packages
|
||||
|
||||
In OpenProject, you can configure several work package–related settings individually for each project. This includes enabling work package types, assigning categories, and activating custom fields. To do so, go to *Project settings*, select *Work packages*, and open the relevant tab.
|
||||
|
||||
## Work package types
|
||||
|
||||
You can enable or disable work package types for a specific project by following these steps:
|
||||
|
||||
1. Select a project from the drop-down menu in the top-left corner of the header.
|
||||
2. Navigate to *Project settings → Work packages* in the project menu. By default, you'll see the **Types** tab, which lists all available work package types.
|
||||
|
||||
The table shows whether each type is:
|
||||
|
||||
- Enabled in the current project
|
||||
|
||||
- Displayed in the roadmap by default
|
||||
|
||||
- Considered a milestone
|
||||
3. Check the work package types you want to enable and click the **Save** button to apply your changes.
|
||||
|
||||

|
||||
|
||||
> [!TIP]
|
||||
>
|
||||
> [Work package types can be managed](../../../../system-admin-guide/manage-work-packages/work-package-types) under System *Administration* -> *Work packages* -> *Types*.
|
||||
|
||||
## Work package categories
|
||||
|
||||
In a work package form, you can use **work package categories** to classify work packages. These categories help you differentiate, filter, and group work packages by specific attributes.
|
||||
|
||||
You can manage work package categories specific to a project under *Project settings → Work packages → Categories*.
|
||||
|
||||
### Create a new work package category
|
||||
|
||||
Press the green **+ Category** button to create a new category for a project.
|
||||
|
||||

|
||||
|
||||
You can then name the category and choose a default **Assignee** if the work package has this category. Press the **Create** button to add the new category.
|
||||
|
||||

|
||||
|
||||
### Edit or delete a category
|
||||
|
||||
From the list of categories you can choose a category to edit or delete.
|
||||
|
||||
Press the **edit** button to make changes to a category. Press the **delete** button to delete a category.
|
||||
|
||||

|
||||
|
||||
## Work package custom fields
|
||||
|
||||
Custom fields for work packages can be enabled or disabled in the Project settings of each project.
|
||||
|
||||
<div class="glossary">
|
||||
**Custom fields** are additional attribute fields that can be added to extend existing data fields. They can be used in various sections, including work packages, spent time, projects, versions, users, groups, time tracking activities, and work package priorities.
|
||||
</div>
|
||||
|
||||
> [!NOTE]
|
||||
> The instructions in this section apply *only* to custom fields for work packages.
|
||||
|
||||
Before enabling a custom field in a project, it must first be created in the [system administration](../../../../system-admin-guide/custom-fields). Once it’s created, open the relevant project and go to *Project settings-> Work packages -> Custom fields*.
|
||||
|
||||

|
||||
|
||||
Here, you can:
|
||||
|
||||
- Manage an existing custom field by clicking on its name.
|
||||
- Enable or disable the custom field for the project. If a custom field is globally enabled in the system administration, it will appear automatically in all projects.
|
||||
|
||||
- View which work package types the custom field is already enabled for. Custom fields will only be active for the work package types displayed under **Contained in type** column. You can add a custom field to additional work package types by [adding them to the respective work package form](../../../../system-admin-guide/manage-work-packages/work-package-types/#work-package-form-configuration-enterprise-add-on).
|
||||
|
||||
**Create a new work package custom field** by clicking the **+ Custom field** button in the top right corner.
|
||||
|
||||
> [!TIP]
|
||||
> Keep in mind that you have to be a system administrator in order to create new custom fields.
|
||||
|
||||
Press the **Save** button to apply your changes.
|
||||
|
After Width: | Height: | Size: 79 KiB |
|
After Width: | Height: | Size: 67 KiB |
|
After Width: | Height: | Size: 67 KiB |
|
After Width: | Height: | Size: 50 KiB |
|
After Width: | Height: | Size: 73 KiB |
|
After Width: | Height: | Size: 83 KiB |
@@ -161,7 +161,13 @@ OpenProject offers two modes for calculating *% Complete* in hierarchy totals:
|
||||
> [!NOTE]
|
||||
> The administrator of your instance will have selected a mode for the entire instance. If you are an administrator, you can modify this by following our [admin guide on work package settings](../../../system-admin-guide/manage-work-packages/work-package-progress-tracking).
|
||||
|
||||
Total sums of **Work**, **Remaining work** and **% Complete%** will also be shown at the bottom of work package table [if displaying sums is activated](../../work-packages/work-package-table-configuration/#display-sums-in-work-package-table).
|
||||
|
||||
> [!TIP]
|
||||
>
|
||||
> In this case the sum for % Complete is derived from values of total Work and Remaining work, and not simply as a sum of values for % Complete.
|
||||
|
||||

|
||||
|
||||
### Excluding certain work packages from totals
|
||||
|
||||
|
||||