From f2c3ee37666112f0edf052e160d0aee8719361c8 Mon Sep 17 00:00:00 2001 From: Simon Hammes Date: Wed, 16 Sep 2026 16:07:16 +0200 Subject: [PATCH] Update docs on departments feature The previous docs were incorrect. SeaTable installations have been initialized with "ENABLE_ADDRESSBOOK_V2 = True" since 2023. This setting was then removed from the initialization script and the default value inside dtable-web was modified to True. --- .../user-hierarchy/departments.md | 43 +++++++++++-------- docs/configuration/user-hierarchy/overview.md | 4 +- 2 files changed, 27 insertions(+), 20 deletions(-) diff --git a/docs/configuration/user-hierarchy/departments.md b/docs/configuration/user-hierarchy/departments.md index af335e05..94729e6d 100644 --- a/docs/configuration/user-hierarchy/departments.md +++ b/docs/configuration/user-hierarchy/departments.md @@ -6,47 +6,54 @@ description: Configure departments in SeaTable to add hierarchical organizationa Departments extend SeaTable's group concept with a hierarchical structure. They allow you to map your organization's structure (e.g. divisions, teams, units) directly into SeaTable. -!!! note "Deactivated by default" - - Departments are disabled by default and must be explicitly enabled. They are also not active on cloud.seatable.io. - ## How departments differ from groups | | Groups | Departments | |---|---|---| | Structure | Flat | Hierarchical (parent/child) | -| Membership | Explicit only | Automatic inheritance from parent departments | -| Creation | Any user (if permitted) | System admin or org admin only | -| Enabled by default | Yes | No | +| Membership | Explicit only | Automatic inheritance from sub-departments | +| Creation | Any user (if permitted) | System admin or team admin only | +| Enabled by default | Yes | Yes | When a user is added to a sub-department, they automatically become a member of all parent departments above it. -## Enable departments +## Disable departments -Add the following setting to `dtable_web_settings.py`: +Departments are enabled by default. If you don't want to use departments, set the following in `dtable_web_settings.py`: ```python -ENABLE_ADDRESSBOOK_V2 = True +ENABLE_ADDRESSBOOK_V2 = False ``` -After a [restart](../../maintenance/restart-seatable.md), the system admin can create and manage departments in the **System Admin** area. +Changes to `dtable_web_settings.py` require a [restart](../../maintenance/restart-seatable.md) of SeaTable. + +## Manage departments + +Once enabled, departments are managed in the admin areas: + +- The **system admin** creates and manages departments under **System Admin > Departments**. +- In multi-tenant setups, **team admins** manage the departments of their own team under **Team Admin > Departments** (see [`ENABLE_ORG_DEPARTMENT`](#enable-departments-within-teams) below). + +Departments can be nested to any depth. Each department member is either a *Default member* or an *Admin*. Department admins can manage the members of their department and of all its sub-departments. + +Departments can also be populated automatically from an LDAP or Active Directory server, see [`SYNC_GROUP_AS_DEPARTMENT`](../authentication/ldap.md). ## Additional settings -### Allow department admins to manage member bases +The following settings are optional. The values shown are the defaults in SeaTable 6.2. -By default, department admins can only manage members. To also allow them to manage the bases of department members: +### Enable departments within teams ```python -ENABLE_DEPARTMENT_ADMIN_MANAGE_MEMBER_BASES = True +ENABLE_ORG_DEPARTMENT = True ``` -### Enable departments within organizations +If you use [teams/organizations](teams-organizations.md), this setting allows team admins to create and manage departments within their team. Set it to `False` to restrict department management to the system admin. -If you use [teams/organizations](teams-organizations.md), departments can be enabled per organization: +### Let users browse the bases of department members ```python -ENABLE_ORG_DEPARTMENT = True +ENABLE_DEPARTMENT_ADMIN_MANAGE_MEMBER_BASES = False ``` -This is `True` by default, meaning org admins can create departments within their organization once the global departments feature is enabled. +If enabled, a **Departments** entry is added to the navigation of every user. There, users can browse the departments they belong to, including sub-departments and their members. Users in a parent department can also open the bases owned by members of its sub-departments with read-only permission. diff --git a/docs/configuration/user-hierarchy/overview.md b/docs/configuration/user-hierarchy/overview.md index 27e509a5..fbebcdc8 100644 --- a/docs/configuration/user-hierarchy/overview.md +++ b/docs/configuration/user-hierarchy/overview.md @@ -13,11 +13,11 @@ SeaTable provides several levels of user organization to match different deploym | **Users** | Individual accounts | Always active | Every installation | | **[Groups](groups.md)** | Collaborate on shared bases | Always active | Any installation | | **[Teams/Organizations](teams-organizations.md)** | Fully isolated tenants | Disabled | Multi-tenant / SaaS deployments | -| **[Departments](departments.md)** | Hierarchical org structure | Disabled | Enterprises with formal org charts | +| **[Departments](departments.md)** | Hierarchical org structure | Enabled | Enterprises with formal org charts | ## How they relate - **Users** are the foundation — every person has an account. - **Groups** allow users to share bases and collaborate. Any user can create a group (unless restricted by [roles](../roles-and-permissions.md)). - **Teams/Organizations** provide full tenant isolation. Users within one team cannot see users or bases of another team. This is the mode used by cloud.seatable.io. -- **Departments** add a hierarchical structure on top of groups, with automatic membership inheritance from parent to child departments. +- **Departments** add a hierarchical structure on top of groups, where members of a sub-department are automatically members of all parent departments.