snapshot of https://github.com/twentyhq/twenty.git (main, 2026-09-17; blobs > 131072B omitted)
Some checks failed
App Prod-Parity E2E Dispatch / dispatch (push) Failing after 10s
CD Storybook UI / build (push) Failing after 3m25s
CD Storybook UI / dispatch (push) Has been skipped
CD deploy main / website-changed-files (push) Successful in 18m8s
CI Agent Skills / changed-files-check (push) Successful in 18m9s
CI Create App E2E minimal / changed-files-check (push) Successful in 24s
CI Create App / changed-files-check (push) Successful in 26s
CI Docs / changed-files-check (push) Successful in 26s
CI Emails / changed-files-check (push) Successful in 28s
CI Example App Hello World / changed-files-check (push) Successful in 23s
CI Front / changed-files-check (push) Has been skipped
CI Example App Postcard / changed-files-check (push) Successful in 27s
CI UI / changed-files-check (push) Has been skipped
CI Utils Test / changed-files-check (push) Successful in 45s
CI Twenty Apps / discover (push) Successful in 1m3s
CD deploy main / deploy-main (push) Failing after 3s
CI Agent Skills / agent-skills-validate (push) Has been skipped
CI Create App / create-app-test (lint) (push) Has been skipped
CI Emails / emails-test (push) Has been skipped
CI Front / front-task (lingui:compile) (push) Has been skipped
CI Front / front-task (lint) (push) Has been skipped
CI Example App Postcard / example-app-postcard (push) Has been skipped
CI UI / ui-task (lint) (push) Has been skipped
CI UI / ui-task (pack-size) (push) Has been skipped
CI UI / ui-task (size) (push) Has been skipped
CI UI / ui-task (test) (push) Has been skipped
CI UI / ui-task (typecheck) (push) Has been skipped
CI Utils Test / utils-test (push) Has been skipped
CI Twenty Apps / ${{ matrix.app.name }} (push) Has been skipped
CI Emails / ci-emails-status-check (push) Successful in 2s
CI Example App Hello World / ci-example-app-hello-world-status-check (push) Successful in 2s
CI Example App Postcard / ci-example-app-postcard-status-check (push) Successful in 3s
CI UI / ui-sb-test (push) Has been skipped
CI Utils Test / ci-utils-test-status-check (push) Successful in 2s
CI Twenty Apps / ci-twenty-apps-status-check (push) Successful in 2s
CI UI / ci-ui-status-check (push) Successful in 2s
CI Desktop / desktop (push) Failing after 1m8s
Push docs to Crowdin / Push documentation to Crowdin (push) Failing after 55s
Push translations to Crowdin / Extract and upload translations (push) Failing after 5s
Push website translations to Crowdin / Extract and upload website translations (push) Failing after 5s
CI Create App / create-app-test (test) (push) Has been skipped
CI Create App / create-app-test (typecheck) (push) Has been skipped
CI Docs / docs-lint (push) Has been skipped
CI Example App Hello World / example-app-hello-world (push) Has been skipped
CI Front / front-task (lingui:extract) (push) Has been skipped
CI Front / front-task (test) (push) Has been skipped
CI Front / front-task (typecheck) (push) Has been skipped
CI UI / ui-sb-build (push) Failing after 1m32s
CI Twenty Apps / ${{ matrix.app.name }} (${{ matrix.server-source }}) (push) Has been skipped
CI Agent Skills / agent-skills-publish (push) Has been skipped
CI Create App / ci-create-app-status-check (push) Successful in 2s
CI Agent Skills / agent-skills-remote-source (push) Has been skipped
CI Create App E2E minimal / create-app-e2e-minimal (push) Has been cancelled
CI E2E Main / e2e-test (push) Has been cancelled
CI Front / front-sb-build (push) Has been cancelled
CI Front / front-build (push) Has been cancelled
CI Create App E2E minimal / ci-create-app-e2e-minimal-status-check (push) Has been cancelled
CI E2E Main / ci-e2e-main-status-check (push) Has been cancelled
CI E2E Main / notify-main-ci-failure (push) Has been cancelled
CI E2E Main / qa-scout-comment (push) Has been cancelled
CI Front / front-sb-test (push) Has been cancelled
CI Front / front-sb-screenshots (push) Has been cancelled
CI Front / ci-front-status-check (push) Has been cancelled
DPA Sub-Processor Sync / sync-subprocessors (push) Failing after 3s
AI Catalog Sync / sync-catalog (push) Failing after 3s

This commit is contained in:
upstream-mirror
2026-09-17 23:28:13 +05:00
commit e7da97194a
32688 changed files with 4208681 additions and 0 deletions

View File

@@ -0,0 +1,61 @@
---
title: Erstellen Sie eine Kalenderansicht für fällige Aufgaben
description: Visualisieren Sie Ihre Aufgaben und Fristen in einem Kalender.
---
<img src="/images/user-guide/views/calendar-view-zoom.png" style={{width:'100%'}} />
## Voraussetzungen
Ihr Aufgabenobjekt benötigt ein Feld **Fälligkeitsdatum** (Typ Datum oder Datum & Uhrzeit).
## Schritte
1. Navigieren Sie zu **Aufgaben**
2. Klicken Sie auf das Ansichts-Dropdown → **+ Ansicht hinzufügen**
3. Benennen Sie Ihre Ansicht (z. B. "Aufgabenkalender")
4. Klicken Sie auf **Erstellen**
5. Klicken Sie auf **Optionen** und wählen Sie **Kalender** als Layout
6. Wählen Sie **Fälligkeitsdatum** als Datumsfeld
7. Klicken Sie auf **Speichern**
## Konfigurieren Sie Ihren Kalender
### Felder in Ereignissen anzeigen
1. Klicken Sie auf **Optionen → Felder**
2. Klicken Sie auf das **Augensymbol**, um Felder ein-/auszublenden
3. Ziehen, um neu anzuordnen
Empfohlene Felder zum Anzeigen:
* **Titel** — Name der Aufgabe
* **Zuständige Person** — wer verantwortlich ist
* **Status** — aktueller Fortschritt
### Kalender filtern
Erstellen Sie gezielte Ansichten:
* **Meine Aufgaben**: Filtern nach "Zuständige Person" = Ich
* **Diese Woche**: Filtern nach Fälligkeitsdatum = Diese Woche
* **Überfällig**: Nach Fälligkeitsdatum < Heute filtern, Status ≠ Erledigt
## Weitere Anwendungsfälle für den Kalender
| Objekt | Datumsfeld | Zweck |
| ----------------------------- | -------------- | ----------------------------------------- |
| Opportunities | Abschlussdatum | Voraussichtliche Abschlüsse nachverfolgen |
| Benutzerdefinierte Ereignisse | Ereignisdatum | Aktivitäten planen |
| Projekte | Frist | Projektzeitpläne überwachen |
## Tipps
* **Wöchentlich prüfen**: Beginnen Sie jede Woche damit, Ihre Kalenderansicht zu prüfen
* **Mit Tabellenansicht kombinieren**: Verwenden Sie den Kalender für den Überblick, die Tabellenansicht für Details
* **Sichtbarkeit festlegen**: Persönliche Aufgabenkalender als Unlisted belassen
## Verwandt
* [Kalenderansicht](/l/de/user-guide/views-pipelines/capabilities/calendar-view) — alle Kalenderfunktionen
* [Filter und Sortierung](/l/de/user-guide/views-pipelines/capabilities/filters-and-sorting) — Ihren Kalender filtern

View File

@@ -0,0 +1,80 @@
---
title: Erstellen Sie eine Kanban-Ansicht für Projekte
description: Verfolgen Sie Projekte über die Phasen hinweg mit einem visuellen Board.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
Verwenden Sie eine Kanban-Ansicht, um Ihre Projekte (oder beliebige Objekte mit Phasen) als Karten darzustellen, die sich durch Spalten bewegen.
<VimeoEmbed videoId="927888627" title="Video-Demonstration" />
## Voraussetzungen
Ihr Objekt benötigt ein **Select-Feld**, das als Spalten verwendet wird (z. B. Status, Stufe, Phase).
Falls Sie keines haben:
1. Gehen Sie zu **Einstellungen → Datenmodell**
2. Wählen Sie Ihr Objekt aus
3. Fügen Sie ein Select-Feld mit Ihren Stufenoptionen hinzu
## Schritte
1. Navigieren Sie zu Ihrem Objekt (z. B. Projekte, Aufgaben)
2. Klicken Sie auf das Ansichts-Dropdown → **+ Ansicht hinzufügen**
3. Benennen Sie Ihre Ansicht (z. B. "Projekt-Board")
4. Klicken Sie auf **Erstellen**
5. Klicken Sie auf **Optionen** und wählen Sie **Kanban** als Layout
6. Die Ansicht verwendet Ihr Select-Feld automatisch für die Spalten
7. Klicken Sie auf **Speichern**
## Konfigurieren Sie Ihr Board
### Wichtige Felder auf Karten anzeigen
1. Klicken Sie auf **Optionen → Felder**
2. Suchen Sie im Abschnitt "Ausgeblendete Felder" nach Feldern
3. Klicken Sie auf das **Augensymbol**, um sie auf Karten anzuzeigen
4. Ziehen, um neu anzuordnen
<img src="/images/user-guide/kanban-views/filter.png" style={{width:'100%'}} />
### Kompakte Ansicht aktivieren
Für eine grobe Übersicht:
1. Klicken Sie auf **Optionen**
2. Aktivieren Sie die **Kompaktansicht**
Karten zeigen nur den Datensatznamen.
<img src="/images/user-guide/kanban-views/compact-view.png" style={{width:'100%'}} />
### Aggregationen hinzufügen
Anzahlen oder Summen oben in jeder Spalte anzeigen:
1. Klicken Sie auf die Zahl neben einem Spaltennamen
2. Wählen Sie eine Aggregation (Anzahl, Summe usw.)
3. Wählen Sie bei Bedarf ein Feld aus
## Karten verschieben
Ziehen Sie Karten per Drag & Drop zwischen den Spalten, um ihren Status zu aktualisieren.
<VimeoEmbed videoId="927888627" title="Video-Demonstration" />
## Beispiel: Aufgaben-Board
| Spalte (Status) | Karten |
| ------------------ | ---------------------- |
| **Zu erledigen** | Neue Aufgaben |
| **In Bearbeitung** | Laufende Arbeit |
| **Überprüfung** | Warten auf Genehmigung |
| **Erledigt** | Abgeschlossen |
## Verwandt
* [Kanban-Ansichten](/l/de/user-guide/views-pipelines/capabilities/kanban-views) — Aggregationen, Kompaktansicht, Phasen
* [So richten Sie eine Vertriebspipeline ein](/l/de/user-guide/views-pipelines/how-tos/set-up-a-sales-pipeline) — Kanban für Verkaufschancen

View File

@@ -0,0 +1,51 @@
---
title: Eine Tabellenansicht mit Gruppierung erstellen
description: Organisieren Sie Ihre Datensätze anhand von Feldwerten in einklappbare Gruppen.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
Gruppieren Sie Ihre Tabellenansicht nach einem Auswahlfeld, um Datensätze in einklappbare Abschnitte zu organisieren.
<img src="/images/user-guide/table-views/table-group-by.png" style={{width:'100%'}} />
## Schritte
1. Navigieren Sie zum Objekt (Personen, Unternehmen usw.)
2. Klicken Sie auf das Ansichts-Dropdown → **+ Ansicht hinzufügen**
3. Benennen Sie Ihre Ansicht (z. B. "Unternehmen nach Typ")
4. Klicken Sie auf **Erstellen**
5. Klicken Sie auf **Optionen → Gruppieren**
6. Wählen Sie ein Auswahlfeld zum Gruppieren aus
7. Klicken Sie auf **Speichern**
## Reihenfolge der Gruppen konfigurieren
Wählen Sie unter **Optionen → Gruppieren → Sortieren**, wie Gruppen angeordnet werden:
| Option | Beschreibung |
| -------------------------- | ------------------------------------------------------------------- |
| **Alphabetisch** | A bis Z |
| **Umgekehrt alphabetisch** | Z bis A |
| **Manuelle Reihenfolge** | Ziehen Sie Gruppen, um sie unter "Sichtbare Gruppen" neu anzuordnen |
Klicken Sie auf das **Augensymbol** neben einer Gruppe, um sie aus der Ansicht auszublenden.
<Note>
**Für optimale Leistung beschränken Sie sich auf 10-15 sichtbare Gruppen.** Wenn Sie mehr benötigen, erwägen Sie stattdessen die Verwendung eines Dashboards.
</Note>
## Beispiel: Unternehmen nach Branche
1. Gehen Sie zu **Unternehmen**
2. Erstellen Sie eine neue Ansicht mit dem Namen "Nach Branche"
3. Klicken Sie auf **Optionen → Gruppieren**
4. Wählen Sie das Feld **Branche** aus
5. Speichern
Ihre Unternehmen sind nun nach Branche organisiert, sodass Sie sich jeweils leicht auf ein Segment konzentrieren können.
## Verwandt
* [Tabellenansichten](/l/de/user-guide/views-pipelines/capabilities/table-views) — alle Funktionen der Tabellenansicht
* [Filter und Sortierung](/l/de/user-guide/views-pipelines/capabilities/filters-and-sorting) — Gruppieren mit Filtern kombinieren

View File

@@ -0,0 +1,32 @@
---
title: Zugriff auf Ihre Ansicht beschränken
description: Steuern Sie, wer Ihre benutzerdefinierten Ansichten sehen kann.
---
Jede Ansicht (mit Ausnahme der Standardansichten "Alle [Objektname]") verfügt über eine eigene Sichtbarkeitseinstellung.
## Schritte
1. Öffnen Sie die Ansicht, die Sie einschränken möchten
2. Klicken Sie oben rechts auf **Optionen**
3. Klicken Sie auf **Sichtbarkeit**
4. Wählen Sie **Nicht gelistet** aus
Ihre Ansicht ist nun nur für Sie sichtbar.
## Sichtbarkeitsoptionen
| Einstellung | Wer kann sie sehen |
| ------------------ | ----------------------------------- |
| **Arbeitsbereich** | Alle Mitglieder des Arbeitsbereichs |
| **Nicht gelistet** | Nur Sie |
## Notizen
* Die Standardansichten "Alle [Objektname]" können nicht auf "Nicht gelistet" gesetzt werden
* Nicht gelistete Ansichten erscheinen nicht in den Ansichts-Dropdowns anderer Benutzer
* Sie können die Sichtbarkeit jederzeit wieder auf "Arbeitsbereich" ändern
## Verwandt
* [Ansichtseinstellungen](/l/de/user-guide/views-pipelines/capabilities/view-settings) — alle Konfigurationsoptionen für Ansichten

View File

@@ -0,0 +1,120 @@
---
title: Vertriebspipeline einrichten
description: Konfigurieren Sie Ihre Vertriebspipeline, um Verkaufschancen durch die Phasen zu verfolgen.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
Eine Vertriebspipeline in Twenty ist eine Kanban-Ansicht Ihres Objekts "Opportunities", in der jede Spalte eine Phase Ihres Vertriebsprozesses darstellt.
## Schritt 1: Phasen konfigurieren
Phasen werden im Feld **Phase** des Objekts "Opportunities" definiert.
1. Gehen Sie zu **Einstellungen → Datenmodell**
2. Wählen Sie **Opportunities** aus
3. Suchen Sie das Feld **Phase** und klicken Sie darauf
4. Fügen Sie Phasen hinzu, entfernen oder benennen Sie sie um, um Ihren Prozess abzubilden
<VimeoEmbed videoId="927890428" title="Video-Demonstration" />
### Empfohlene Phasen
| Phase | Zweck |
| ---------------- | ---------------------------------- |
| **Neu** | Neu identifizierte Verkaufschancen |
| **Qualifiziert** | Als geeignet bestätigt |
| **Termin** | In Gesprächen |
| **Angebot** | Angebot gesendet |
| **Verhandlung** | Konditionen werden ausgehandelt |
| **Gewonnen** | Geschäft gewonnen |
| **Verloren** | Geschäft verloren |
<Note>
**5-7 Stufen sind optimal.** Zu viele Stufen machen die Pipeline schwer zu scannen; zu wenige verlieren die Sichtbarkeit in den Deal-Fortschritt.
</Note>
## Schritt 2: Pipeline-Ansicht erstellen
1. Gehen Sie zu **Opportunities**
2. Klicken Sie auf das Ansichts-Dropdown → **+ Ansicht hinzufügen**
3. Nennen Sie sie "Vertriebspipeline"
4. Klicken Sie auf **Erstellen**
5. Öffnen Sie **Optionen** und wählen Sie **Kanban** als Layout
Die Ansicht verwendet automatisch das Feld "Phase" für die Spalten.
## Schritt 3: Ansicht konfigurieren
### Wichtige Felder anzeigen
1. Klicken Sie auf **Optionen → Felder**
2. Suchen Sie im Abschnitt "Ausgeblendete Felder" nach Feldern
3. Klicken Sie auf das **Augen-Symbol**, um Folgendes anzuzeigen: Unternehmen, Betrag, Abschlussdatum, Eigentümer
### Aggregationen aktivieren
Summen oben in jeder Spalte anzeigen:
1. Klicken Sie auf die Zahl, die oben in einer Spalte neben einem Phasennamen angezeigt wird
2. Wählen Sie den Aggregationstyp (Anzahl, Summe, Durchschnitt usw.)
3. Wählen Sie das zu aggregierende Feld (z. B. Betrag)
**Beispiel:** Zeigen Sie den Gesamtwert der Deals pro Phase an, indem Sie das Feld Betrag mit Summe aggregieren.
### Kompakte Ansicht verwenden (optional)
Für eine grobe Übersicht mit minimalem Karteninhalt:
1. Klicken Sie auf **Optionen**
2. Aktivieren Sie den Schalter für **Kompaktansicht**
## Schritt 4: Persönliche und Team-Ansichten erstellen
### "Meine Pipeline"
* **Filter**: Eigentümer = Ich
* **Sichtbarkeit**: Nicht gelistet (persönliche Ansicht)
### "Team-Pipeline"
* **Filter**: Keiner (alle anzeigen)
* **Sichtbarkeit**: Arbeitsbereich (geteilte Ansicht)
### "Abschluss in diesem Monat"
* **Typ**: Tabelle
* **Filter**: Abschlussdatum = Dieser Monat, Phase ≠ Gewonnen, Phase ≠ Verloren
* **Sortierung**: Abschlussdatum aufsteigend
## Arbeiten mit Opportunities
### Opportunities erstellen
* Klicken Sie in der Opportunities-Ansicht auf **+ Neu**
* Oder klicken Sie in einer bestimmten Phasenspalte auf **+**
### Durch die Phasen wechseln
Ziehen Sie Opportunity-Karten per Drag & Drop zwischen die Spalten, um ihre Phase zu aktualisieren.
<VimeoEmbed videoId="927888627" title="Video-Demonstration" />
## Beste Praktiken
### Pipeline-Hygiene
* Aktualisieren Sie Geschäfte täglich entsprechend ihrem Fortschritt
* Verschieben oder schließen Sie ruhende Geschäfte umgehend
* Halten Sie Abschlussdaten realistisch
### Phasendisziplin
* Definieren Sie klare Kriterien für jede Phase
* Verschieben Sie Geschäfte umgehend, wenn Kriterien erfüllt sind
* Lassen Sie Geschäfte nicht zu lange in Phasen liegen
## Verwandt
* [Kanban-Ansichten](/l/de/user-guide/views-pipelines/capabilities/kanban-views) — Aggregationen und Kompaktansicht
* [Filter und Sortierung](/l/de/user-guide/views-pipelines/capabilities/filters-and-sorting) — gefilterte Ansichten erstellen

View File

@@ -0,0 +1,149 @@
---
title: Erwarteter Betrag in Ihrer Pipeline anzeigen
description: Gewichtete Deal‑Werte basierend auf der Phasenwahrscheinlichkeit berechnen und anzeigen.
---
Der erwartete Betrag ist ein berechneter Wert: **Amount × Probability**. So können Sie den Umsatz prognostizieren, indem Sie Deals nach ihrer Abschlusswahrscheinlichkeit gewichten.
<Tip>
Dies ist ein Beispiel für das Erstellen von [Formel­feldern](/l/de/user-guide/workflows/how-tos/crm-automations/formula-fields) mit Workflows.
</Tip>
Diese Anleitung führt Sie durch das Einrichten der benutzerdefinierten Felder und Workflows, die erforderlich sind, um erwartete Beträge in Ihrer Pipeline zu berechnen und anzuzeigen.
## Schritt 1: Benutzerdefinierte Felder erstellen
Sie benötigen zwei benutzerdefinierte Felder am Objekt „Opportunities“.
### Feld „Probability“ erstellen
1. Gehen Sie zu **Settings → Data Model → Opportunities**
2. Klicken Sie auf **+ Feld hinzufügen**
3. Konfigurieren:
* **Name**: Probability
* **Typ**: Number
* **Beschreibung**: Phasenbasierte Wahrscheinlichkeit (0–100 %)
4. Klicken Sie auf **Speichern**
### Feld „Expected Amount“ erstellen
1. Klicken Sie auf **+ Feld hinzufügen**
2. Konfigurieren:
* **Name**: Expected Amount
* **Typ**: Currency
* **Beschreibung**: Berechnet: Amount × Probability
3. Klicken Sie auf **Speichern**
### Optional: Felder für Benutzer schreibgeschützt machen
Wenn Benutzer diese berechneten Felder nicht manuell bearbeiten sollen:
1. Gehen Sie zu **Einstellungen → Mitglieder → Rollen**
2. Wählen Sie die zu konfigurierende Rolle aus
3. Suchen Sie das Objekt „Opportunities“
4. Setzen Sie die Felder **Probability** und **Expected Amount** auf schreibgeschützt
Dadurch können nur die Workflows diese Werte aktualisieren.
## Schritt 2: Workflow #1 erstellen — Probability bei Phasenwechsel aktualisieren
Dieser Workflow setzt die Probability automatisch, wenn eine Opportunity in eine neue Phase wechselt.
### Neuen Workflow erstellen
1. Gehen Sie zu **Workflows**
2. Klicken Sie auf **+ New Workflow**
3. Benennen Sie ihn „Update Probability on Stage Change“
### Trigger konfigurieren
1. Fügen Sie einen **Record Created or Updated**-Trigger hinzu
2. Wählen Sie **Opportunities** als Objekt
3. Filtern nach: **Stage**-Feld wird aktualisiert
### Für jede Phase Verzweigungen hinzufügen
Erstellen Sie für jede Phase eine Verzweigung mit der entsprechenden Wahrscheinlichkeit:
| Phase | Wahrscheinlichkeit |
| ------------ | ------------------ |
| Neu | 10 % |
| Qualifiziert | 25 % |
| Meeting | 40 % |
| Proposal | 60 % |
| Negotiation | 80 % |
| Closed Won | 100 % |
| Closed Lost | 0% |
<Note>
Um eine neue Verzweigung zu erstellen, klicken Sie mit der rechten Maustaste auf den Workflow-Canvas und klicken Sie auf **New action**. Verknüpfen Sie diese Aktion anschließend mit dem vorherigen Knoten, indem Sie den Pfeil vom vorherigen Knoten zu dieser neuen Aktion ziehen.
</Note>
Für jede Phase:
1. Fügen Sie einen **Filter**-Knoten hinzu: Stage = [Phasenname]
2. Fügen Sie eine **Update Record**-Aktion hinzu:
* Datensatz: Die auslösende Opportunity
* Feld: Probability
* Wert: [Wahrscheinlichkeit für diese Phase]
### Erwarteten Betrag berechnen
Nachdem die Verzweigungen wieder zusammengeführt wurden:
1. Fügen Sie einen **Filter**-Knoten hinzu: Amount ist nicht leer
2. Fügen Sie eine **Update Record**-Aktion hinzu:
* Datensatz: Die auslösende Opportunity
* Feld: Expected Amount
* Wert: Amount × Probability
## Schritt 3: Workflow #2 erstellen — Bei Änderung von Amount neu berechnen
Dieser Workflow aktualisiert den Expected Amount, wenn sich der Amount des Deals ändert.
### Neuen Workflow erstellen
1. Gehen Sie zu **Workflows**
2. Klicken Sie auf **+ New Workflow**
3. Benennen Sie ihn „Recalculate Expected Amount on Amount Change“
### Trigger konfigurieren
1. Fügen Sie einen **Record Created or Updated**-Trigger hinzu
2. Wählen Sie **Opportunities** als Objekt
3. Filtern nach: **Amount**-Feld wird aktualisiert
### Logik hinzufügen
1. Fügen Sie einen **Filter**-Knoten hinzu: Amount ist nicht leer
2. Fügen Sie eine **Update Record**-Aktion hinzu:
* Datensatz: Die auslösende Opportunity
* Feld: Expected Amount
* Wert: Amount × Probability
## Schritt 4: In Ihrer Pipeline anzeigen
Zeigen Sie nun die Summen des Expected Amount in Ihrer Kanban-Ansicht an:
1. Öffnen Sie Ihre Kanban-Ansicht **Sales Pipeline**
2. Klicken Sie auf die **Zahl** neben einem Phasennamen oben in einer Spalte
3. Wählen Sie **Summe**
4. Wählen Sie **Expected Amount**
Jede Spalte zeigt nun den insgesamt gewichteten Pipeline‑Wert für diese Phase.
## Zusammenfassung
| Komponente | Zweck |
| -------------------------- | ----------------------------------------------------------------------------------------- |
| **Feld „Probability“** | Speichert die phasenbasierte Gewinnwahrscheinlichkeit |
| **Feld „Expected Amount“** | Speichert Amount × Probability |
| **Workflow #1** | Aktualisiert Probability bei Phasenwechsel und berechnet anschließend Expected Amount neu |
| **Workflow #2** | Berechnet Expected Amount neu, wenn sich Amount ändert |
| **Aggregation** | Zeigt die Summe des Expected Amount pro Phase an |
## Verwandt
* [Formel­felder](/l/de/user-guide/workflows/how-tos/crm-automations/formula-fields) — berechnete Felder mit Workflows erstellen
* [Kanban-Ansichten](/l/de/user-guide/views-pipelines/capabilities/kanban-views) — Spaltenaggregationen
* [Benutzerdefinierte Felder erstellen](/l/de/user-guide/data-model/how-tos/create-custom-fields) — Feldkonfiguration

View File

@@ -0,0 +1,231 @@
---
title: Verfolgen Sie, wie lange Opportunities in jeder Phase bleiben
description: Überwachen Sie die Deal-Geschwindigkeit, indem Sie nachverfolgen, wann Opportunities jede Phase betreten.
---
<Tip>
Dies ist ein Beispiel dafür, wie man mit Workflows [Formelfelder](/l/de/user-guide/workflows/how-tos/crm-automations/formula-fields) erstellt – konkret Datumsberechnungen.
</Tip>
Das Nachverfolgen, wann Opportunities eine Phase betreten, hilft, Engpässe zu erkennen und die Deal-Geschwindigkeit zu messen.
Diese Anleitung führt Sie durch das Einrichten benutzerdefinierter Felder und eines Workflows, um automatisch zu erfassen, wann eine Opportunity in eine Phase wechselt, und zu berechnen, wie viele Tage sie in der vorherigen Phase verbracht hat.
## Schritt 1: Benutzerdefinierte Felder erstellen
Für jede Phase benötigen Sie zwei Feldtypen:
* **Datums- und Uhrzeitfelder**: Erfassen, wann die Opportunity die jeweilige Phase betreten hat
* **Zahlenfelder**: Speichern, wie viele Tage die Opportunity in jeder Phase verbracht hat
### Erstellen Sie die Felder "Last Entered"
1. Gehen Sie zu **Settings → Data Model → Opportunities**
2. Klicken Sie für jede Phase auf **+ Add Field** und konfigurieren Sie:
* **Name**: Last Entered [Phasenname] (z. B. "Last Entered New", "Last Entered Qualified")
* **Type**: Date & Time
* **Description**: Zeitstempel, wann die Opportunity diese Phase betreten hat
3. Klicken Sie auf **Speichern**
Erstellen Sie diese Felder:
* Last Entered New
* Last Entered Qualified
* Last Entered Meeting
* Last Entered Proposal
* Last Entered Negotiation
* Last Entered Closed Won
* Last Entered Closed Lost
### Erstellen Sie die Felder "Days in Stage"
1. Klicken Sie für jede Phase auf **+ Add Field** und konfigurieren Sie:
* **Name**: Days in [Phasenname] (z. B. "Days in New", "Days in Qualified")
* **Type**: Number
* **Description**: Anzahl der in dieser Phase verbrachten Tage
2. Klicken Sie auf **Speichern**
Erstellen Sie diese Felder:
* Days in New
* Days in Qualified
* Days in Meeting
* Days in Proposal
* Days in Negotiation
<Note>
Sie benötigen keine "Days in"-Felder für Closed Won und Closed Lost, da dies finale Phasen sind.
</Note>
### Optional: Felder schreibgeschützt machen
Wenn Benutzer diese berechneten Felder nicht manuell bearbeiten sollen:
1. Gehen Sie zu **Einstellungen → Mitglieder → Rollen**
2. Rolle zum Konfigurieren auswählen
3. Suchen Sie das Objekt Opportunities
4. Setzen Sie die Felder "Last Entered" und "Days in" auf schreibgeschützt
## Schritt 2: Workflow erstellen
Dieser einzelne Workflow übernimmt beide Aufgaben:
* Erfasst den Zeitstempel beim Eintritt in eine neue Phase
* Berechnet die in der vorherigen Phase verbrachten Tage
### Workflow erstellen
1. Gehen Sie zu **Workflows**
2. Klicken Sie auf **+ New Workflow**
3. Nennen Sie ihn "Track Stage Time"
### Trigger konfigurieren
1. Fügen Sie einen **Record Updated**-Trigger hinzu
2. Wählen Sie **Opportunities** als Objekt aus
3. Filtern nach: **Stage**-Feld wird aktualisiert
### Verzweigungen für jede Phase hinzufügen
<Note>
Um eine neue Verzweigung zu erstellen, klicken Sie mit der rechten Maustaste auf den Workflow-Canvas und klicken Sie auf **New action**. Verknüpfen Sie anschließend diese Aktion mit dem vorherigen Knoten, indem Sie den Pfeil vom vorherigen Knoten zu dieser neuen Aktion ziehen.
</Note>
---
**Branch 1: Stage = New (erste Phase)**
Da dies die erste Phase ist, wird nur der Eintrittszeitstempel erfasst — es gibt keine vorherige Phase, von der aus berechnet werden kann.
1. Fügen Sie einen **Filter**-Knoten hinzu: Stage = New
2. Fügen Sie eine **Code**-Aktion hinzu:
```javascript
export const main = async (): Promise<object> => {
return { now: new Date().toISOString() };
};
```
3. Fügen Sie eine **Update Record**-Aktion hinzu:
* Datensatz: Die auslösende Opportunity
* Feld: Last Entered New
* Wert: `now` aus dem Code-Knoten
---
**Branch 2: Stage = Qualified**
Beim Wechsel zu Qualified den Eintrittszeitpunkt erfassen UND die in New verbrachten Tage berechnen.
1. Fügen Sie einen **Filter**-Knoten hinzu: Stage = Qualified
2. Fügen Sie eine **Code**-Aktion hinzu:
```javascript
export const main = async (params: {
lastEnteredPreviousStage: Date;
}): Promise<object> => {
const { lastEnteredPreviousStage } = params;
const now = new Date();
const entryDate = new Date(lastEnteredPreviousStage);
const diffTime = Math.abs(now.getTime() - entryDate.getTime());
const daysInPreviousStage = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
return {
now: now.toISOString(),
daysInPreviousStage: daysInPreviousStage
};
};
```
3. Konfigurieren Sie die Eingabe des Code-Knotens: Ordnen Sie `lastEnteredPreviousStage` dem Feld **Last Entered New** zu
4. Fügen Sie eine **Update Record**-Aktion hinzu:
* Datensatz: Die auslösende Opportunity
* Zu aktualisierende Felder:
* Last Entered Qualified = `now`
* Days in New = `daysInPreviousStage`
---
**Branch 3: Stage = Meeting**
Beim Wechsel zu Meeting den Eintrittszeitpunkt erfassen UND die in Qualified verbrachten Tage berechnen.
1. Fügen Sie einen **Filter**-Knoten hinzu: Stage = Meeting
2. Fügen Sie eine **Code**-Aktion hinzu:
```javascript
export const main = async (params: {
lastEnteredPreviousStage: Date;
}): Promise<object> => {
const { lastEnteredPreviousStage } = params;
const now = new Date();
const entryDate = new Date(lastEnteredPreviousStage);
const diffTime = Math.abs(now.getTime() - entryDate.getTime());
const daysInPreviousStage = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
return {
now: now.toISOString(),
daysInPreviousStage: daysInPreviousStage
};
};
```
3. Konfigurieren Sie die Eingabe des Code-Knotens: Ordnen Sie `lastEnteredPreviousStage` dem Feld **Last Entered Qualified** zu
4. Fügen Sie eine **Update Record**-Aktion hinzu:
* Datensatz: Die auslösende Opportunity
* Zu aktualisierende Felder:
* Last Entered Meeting = `now`
* Days in Qualified = `daysInPreviousStage`
---
**Für die verbleibenden Phasen fortfahren:**
| Phase | Datensätze | Berechnet |
| ----------- | ------------------------ | ------------------- |
| Proposal | Last Entered Proposal | Days in Meeting |
| Negotiation | Last Entered Negotiation | Days in Proposal |
| Closed Won | Last Entered Closed Won | Days in Negotiation |
| Closed Lost | Last Entered Closed Lost | Days in Negotiation |
Die Verzweigungen müssen nicht wieder zusammengeführt werden – jede läuft unabhängig, wenn ihre Phasenbedingung erfüllt ist.
## Schritt 3: Zeit in der Phase analysieren
Mit erfassten Zeitstempeln und Tageszahlen können Sie nun die Deal-Geschwindigkeit analysieren.
### Eine Ansicht "Slow Deals" erstellen
1. Erstellen Sie eine Tabellenansicht der Opportunities
2. Spalten hinzufügen: Name, Phase, Tage in [vorheriger Phase], Betrag
3. Nach dem Feld "Days in" sortieren (absteigend)
4. Nach Phase filtern, um sich jeweils auf eine Phase zu konzentrieren
Deals oben haben die meiste Zeit in der vorherigen Phase verbracht.
### Aggregationen verwenden
In Ihrer Pipeline-Kanban-Ansicht:
1. Klicken Sie auf die Zahl neben einem Phasennamen
2. Wählen Sie **Average** aus
3. Wählen Sie ein "Days in"-Feld
Dies zeigt die durchschnittliche Zeit, die Deals in jeder Phase verbringen.
## Zusammenfassung
| Komponente | Zweck |
| ----------------------------- | ----------------------------------------------------------------- |
| **Last Entered-Felder** | Speichern, wann die Opportunity jede Phase betreten hat |
| **Days in-Felder** | Speichern, wie viele Tage in jeder Phase verbracht wurden |
| **Workflow** | Erfasst den Zeitstempel UND berechnet die Tage in einem Durchlauf |
| **Ansichten & Aggregationen** | Deal-Geschwindigkeit analysieren und Engpässe identifizieren |
## Verwandt
* [Workflows](/l/de/user-guide/workflows/overview) — Grundlagen der Automatisierung
* [So erstellen Sie benutzerdefinierte Felder](/l/de/user-guide/data-model/how-tos/create-custom-fields) — Feldkonfiguration
* [Kanban-Ansichten](/l/de/user-guide/views-pipelines/capabilities/kanban-views) — Aggregationen