Attribut-Gruppen (AttributeGroups)
Zweck
AttributeGroup gruppiert mehrere Attribute zu einer logischen Einheit, die in Entitaets-Formularen als Block angezeigt wird. Beispiel: Eine Gruppe „Technische Daten" mit Attributen Spannung, Leistung, Frequenz. Pro AttributeGroup steuert position die Reihenfolge gegenueber anderen Gruppen.
System-Gruppen (systemAttribute = true) sind durch SpeamCore vordefiniert und in Name/Sortierung eingeschraenkt.
Voraussetzungen
Berechtigungen (CASL)
| Action | Subject | Wirkung | Keycloak-Rolle |
|---|---|---|---|
view | FE_AttributeGroup, AttributeGroup | Liste/Detail aufrufbar | — |
create/update/delete | AttributeGroup | Pflegen | APP_SPEAMCORE_CREATE/UPDATE/DELETE_ATTRIBUTE_GROUP |
view | Attribute | Sub-Liste „Attribute" | APP_SPEAMCORE_VIEW_ATTRIBUTE |
Schritt-für-Schritt-Anleitung
- Attribut-Gruppen (
/attribute-groups) → + Neu. namepflegen (z. B. „Technische Daten").positionsetzen — Reihenfolge gegenueber anderen Gruppen.- Sub-Route
/attribute-groups/:id/attributesöffnen → einzelne Attribute zur Gruppe hinzufuegen.

Toolbar (Detail-Seite)
Schlanke Toolbar oben rechts:
| Icon | Aktion (aria-label) | CASL | Wirkung |
|---|---|---|---|
| ← | Zurückgehen | — | Zurück zur Liste. |
| 🏠 | Zur Startseite gehen | — | Springt auf das Dashboard / /. |
| ⏮/◀/▶/⏭ | Pagination | — | Navigation durch die gefilterte Liste — Massen-Bearbeitung ohne Liste-Sprung. |
Globale Floating-Drawer (links)
Wie auf jeder Detail-Seite verfuegbar — siehe Floating-Quickbar:
- KAL. (Mini-Kalender)
- ZEIT (Persoenliche Wochen-Arbeitszeit)
- ARBEIT (Eigene bevorstehende Aufträge)
Felder und Eingaben
| Feldname | Pflicht | Datentyp | Wirkung beim Ausfuellen | Voraussetzung |
|---|---|---|---|---|
name | ja (disabled bei System) | String | Anzeigename in Entitaets-Formularen. Bei systemAttribute wird über translationKey aus i18n geholt. | — |
position | nein | Integer | Reihenfolge der Gruppen. | — |
Anlege-Pattern (N:M-Verknuepfung)
AttributeGroupAssignment ist die N:M-Verknuepfung Attribut ↔ Attribut-Gruppe. Eine Gruppe buendelt mehrere Attribute für einheitliche Pflege:
- Ein Attribut kann mehreren Gruppen angehoeren (z. B. „Farbe" in Gruppe „Optik" UND Gruppe „Produkt-Standard").
- Beim Verwenden einer Gruppe an einer Entitaet (
AttributeParent) werden automatisch alle Attribute der Gruppe vererbt.
Detail-Workflow siehe Attribute und Custom-Fields und AttributeFields.
Wiederverwendbare Konzepte
Verknuepfungen zu anderen Modulen
- Attribute — Inhalt der Gruppe. Über Sub-Route
/attribute-groups/:id/attributespflegbar. - Produkte, Kunden, weitere Entitaeten — verwenden Gruppen als Block in ihren Formularen.
Häufige Fehler und Lösungen
| Fehler | Lösung |
|---|---|
| Gruppe erscheint nicht im Formular | Mindestens ein Attribut muss zugeordnet sein und AttributeParent für die Entitaet existieren. |
| Reihenfolge stimmt nicht | position der Gruppen anpassen. |
API/Schnittstellen
| Methode | Endpoint | Zweck | CASL |
|---|---|---|---|
GET | /api/attribute-groups | Liste | view AttributeGroup |
POST | /api/attribute-groups | Anlegen | create AttributeGroup |
GET | /api/attribute-groups/:id | Detail | view AttributeGroup |
PATCH | /api/attribute-groups/:id | Ändern | update AttributeGroup |
DELETE | /api/attribute-groups/:id | Soft-Delete | delete AttributeGroup |
GET | /api/attributes?filter[attributeGroupId] | Sub-Liste Attribute | view Attribute |
Versionshinweise
- 2026-04-30: Initiale Veroeffentlichung.