# Task Classes (cf.cplace.projektplanungMasterData)

## Overview

Task Classes enables visual categorization and grouping of tasks and milestones in project planning. It provides customizable shapes, colors, and patterns to differentiate planning elements in Gantt charts and Presentation Graphics. This app enhances visual communication by allowing distinct styling for different task categories (e.g., critical path activities, external dependencies, milestones by phase).

**Note**: This app is designed to work in conjunction with the "Project Planning (Extended)" app (`cf.cplace.projektplanung.projektplanungExtended`) for full functionality in Gantt visualizations.

## Dependencies

When installed, the following apps are automatically included:
- `cf.cplace.platform` (cplace Basis) - Base platform, always present

No additional dependencies are required for this app.

## Types Provided

### cf.activityClass (Task class / Vorgangsklasse)

A configuration type that defines the visual appearance of tasks and milestones in Gantt charts.

| Attribute | Internal Name | Type | Required | Description |
|-----------|---------------|------|----------|-------------|
| Activity shape | `activityShape` | Enumeration | Yes | Shape used to display tasks/activities in Gantt |
| Milestone shape | `milestoneShape` | Enumeration | Yes | Shape used to display milestones in Gantt |
| Color | `barColor` | Color | No | Fill color for the bar/shape |
| Border color | `borderColor` | Color | No | Border/outline color |
| Color pattern | `barPattern` | Enumeration | Yes | Fill pattern (solid, hatched, etc.) |
| Rollup fill color | `rollupBarColor` | Color | No | Fill color for summary/rollup bars |
| Rollup border color | `rollupBorderColor` | Color | No | Border color for summary/rollup bars |
| Label left | `leftLabelField` | Enumeration | No | Attribute to display as label to the left of the bar |
| Label right | `rightLabelField` | Enumeration | No | Attribute to display as label to the right of the bar |
| Label top | `topLabelField` | Enumeration | No | Attribute to display as label above the bar |
| Label bottom | `bottomLabelField` | Enumeration | No | Attribute to display as label below the bar |

**Note**: Label fields allow selecting which task/milestone attribute values to display at each position around the Gantt bar. The default display is the task name on the left.

## Widgets Provided

| Widget | Widget Kind | Description | Use Case |
|--------|-------------|-------------|----------|
| Task Class Preview | `cf.projektplanung.ganttTaskDemo` | Shows a live visual preview of how tasks and milestones will appear in Gantt charts based on their configured styling properties | Use when configuring Task Classes to see real-time feedback on colors, shapes, patterns, and label positions |

## Usage Notes

### When to Use This App

- **Visual differentiation**: When you need to distinguish different categories of tasks (e.g., internal vs. external, critical vs. non-critical)
- **Executive reporting**: When creating Presentation Graphics that require consistent color coding across schedules
- **Multi-project environments**: When standardizing task visualization across multiple schedules

### Common Patterns

1. **Create task class pages** as children of the workspace root or a dedicated "Master Data" container page
2. **Reference task classes from tasks/milestones** via a reference attribute (added by Project Planning Extended)
3. **Configure Gantt widgets** to apply styling based on the referenced task class

### Integration with Project Planning

This app provides the **data type** for task classes. The actual **application of styling** to Gantt charts requires:
- `cf.cplace.projektplanung.projektplanungBasic` or `cf.cplace.projektplanung.projektplanungExtended` for Gantt widgets
- Tasks and Milestones must have a reference attribute pointing to Task Class (provided by the Extended app)

### Example Task Class Setup

A typical workspace might include task classes like:
- **Critical Path** - Red bars with diamond milestones
- **External Dependency** - Blue hatched bars
- **Internal Work** - Green solid bars
- **Review Gate** - Yellow triangle milestones

## Investigation Metadata

- **Investigation Date**: 2026-02-02
- **Investigation Workspace**: `ac0ymd686n2lpg0quupvw122w`
- **Pre-installed Apps**: `cf.cplace.platform`
- **Types Added**: 1 (`cf.activityClass`)
- **Widgets Added**: 1 (`cf.projektplanung.ganttTaskDemo`)
