Object Types are the fundamental "containers" for your data. Every record in the system (a specific Client, Project, or Task) belongs to an Object Type.
There are four distinct categories of Object Types.
The standard custom object used for primary business data.
- Usage: Use this for 90% of your data (e.g., Projects, Clients, Invoices).
- Flexibility: Implemented entities are flexible. If you start with a simple entity, you can later convert it into an Enumeration or Checklist if your needs change.
"Smart" selection lists.
- Concept: Instead of a simple text dropdown, Enumerations are objects that can hold metadata.
- Capabilities:
- Metadata: You can assign properties like colors, icons, or descriptions to options (e.g., a "Priority" enumeration where 'High' is Red and 'Low' is Green).
- Sorting: You can control the exact display order of the options.
- Best Practice: Use specific system names (e.g.,
project_status instead of just status) to avoid naming conflicts.
Containers for items that have a binary "Checked/Unchecked" state per parent object.
- Usage: Define the items globally (e.g., "Step 1", "Step 2"). The system saves the state of these items uniquely for every parent object (e.g., Project A has Step 1 checked, Project B has it unchecked).
⚠️ Implementation Warning:
When linking a Checklist to a parent object (e.g., adding a Checklist to a Project):
- Do NOT link the specific items.
- ALWAYS link the Checklist ID.
The system needs the ID to generate the specific instances for that project.
Core platform objects that are built-in and cannot be deleted.
- Examples:
Users (Uživatelé), Roles, Files.
- Extensibility: You can extend these objects. For example, the default User entity only has basic fields (Name, Email). You can add custom properties like "Job Title," "Avatar," or "Department" to the User entity to fit your application's needs.
- Comments: You can enable the system-wide Comments feature on specific System Entities (e.g., allowing internal notes on User profiles).