Kapitel 11: Unteraufgaben und Arbeitszeitberechnung

Endlich ist das nächste Kapitel da! Mit wachsendem Geschäft werden Aufgaben zahlreicher und komplexer. Eine einfache Aufgabenverwaltung reicht nicht mehr – wir benötigen eine feinere Verwaltung mit mehreren Ebenen, um effizienter arbeiten zu können.

11.1 Aufgaben planen: vom Großen zum Kleinen

Wir zerlegen komplexe Aufgaben in mehrere handhabbare Teilaufgaben, verfolgen den Fortschritt und unterstützen über Mehrebenen-Strukturen die Organisation der Unteraufgaben. Auf geht’s mit der Planung!


11.2 Unteraufgaben-Tabelle anlegen

11.2.1 Struktur der Unteraufgaben entwerfen

Wir legen zunächst eine „Unteraufgaben-Tabelle“ (Sub Tasks – Baumtabelle) an und gestalten sie als Baumstruktur. Die Eigenschaften ähneln denen der Hauptaufgabe – Aufgabenname, Status, Verantwortlich, Fortschritt usw. Bei Bedarf lassen sich Kommentare, Dokumente und weitere Inhalte ergänzen.

Damit Unteraufgaben mit ihrer Hauptaufgabe verknüpft sind, legen wir eine Viele-zu-Eins-Beziehung an, sodass jede Unteraufgabe einer Hauptaufgabe zugeordnet ist. Außerdem richten wir eine Reverse-Beziehung ein, um Unteraufgaben direkt aus der Hauptaufgabe heraus anzuzeigen oder zu verwalten.

Tipp: Es ist komfortabler, Unteraufgaben direkt aus der Hauptaufgabenseite über einen verknüpften Block anzulegen.

11.2.2 Unteraufgaben in der Aufgabenverwaltung anzeigen

Auf der Aufgabenverwaltungsseite stellen wir die Anzeigeart der „Aufgabentabelle“ auf Seitenmodus um.

Auf der Seite legen wir einen neuen Tab „Unteraufgabenverwaltung“ an, fügen die zuvor erstellte Unteraufgaben-Tabelle hinzu und zeigen sie als Baumstruktur an. So lassen sich Unteraufgaben auf derselben Seite verwalten.


11.3 Arbeitszeit-Vergleichsdiagramm: Gesamtarbeitszeit und Fortschritt schätzen (optional)

Im Anschluss erstellen wir Arbeitszeit-Details und ein Vergleichsdiagramm, um die Gesamtarbeitszeit und den Aufgabenfortschritt einzuschätzen.

11.3.1 Zeit- und Arbeitszeitfelder zur Unteraufgabe hinzufügen

Ergänzen Sie in der Unteraufgaben-Tabelle die folgenden Felder:

  • Startdatum
  • Enddatum
  • Gesamtarbeitszeit
  • Verbleibende Arbeitszeit

Mit diesen Feldern lassen sich Dauer und Arbeitszeit dynamisch berechnen.

11.3.2 Aufgabendauer berechnen

Wir legen in der Unteraufgaben-Tabelle ein neues Formelfeld „Tage“ an, um die Dauer der Aufgabe zu berechnen.

Mögliche Berechnungsmethoden:

  • Math.js

    Verwendet die Bibliothek math.js für komplexe numerische Formeln.

  • Formula.js

    Verwendet die Bibliothek Formula.js für gängige Formeln. Wenn Sie sich mit Excel-Formeln auskennen, fühlen Sie sich hier sofort wohl.

  • String-Vorlage

    Wie der Name sagt: Zeichenketten werden zusammengesetzt. Praktisch für dynamische Beschreibungen oder Nummern.

Hier können wir die Bibliothek Formula.js verwenden, ähnlich wie Excel-Formeln, um eine gängige Berechnung umzusetzen.

Die Formel für das Tagefeld lautet:

DAYS(Enddatum,Startdatum)

Achten Sie darauf, kleinbuchstaben-konformes Englisch zu verwenden, um Fehler zu vermeiden.

Probieren Sie es auf der Seite aus – die Tage passen sich dynamisch an Start- und Enddatum an!


11.4 Tägliche Arbeitszeiterfassung: tatsächlichen Fortschritt verfolgen (optional)

11.4.1 Tabelle für tägliche Arbeitszeiterfassung anlegen

Wir legen eine Tabelle für die tägliche Arbeitszeiterfassung an, um den täglichen Aufgabenfortschritt zu protokollieren. Ergänzen Sie folgende Felder:

  • Tägliche Arbeitszeit (hours, idealerweise ganzzahlig)
  • Datum
  • Ideal-Arbeitszeit (ideal_hours, idealerweise ganzzahlig)
  • Zugehörige Unteraufgabe: Viele-zu-Eins-Beziehung zu Unteraufgaben.

11.4.2 Tägliche Arbeitszeit auf der Unteraufgaben-Seite anzeigen

Im Bearbeitungsformular der Unteraufgabe stellen Sie die Tabelle für die tägliche Arbeitszeit als Sub-Tabelle dar und ordnen die übrigen Felder per Drag-and-Drop. So können Sie tägliche Arbeitszeitdaten direkt auf der Unteraufgaben-Seite eintragen und einsehen.


11.5 Wichtige Berechnungen und Verknüpfungsregeln (optional)

Damit sich der Fortschritt und die verbleibende Arbeitszeit präzise schätzen lassen, treffen wir einige zentrale Konfigurationen.

11.5.1 Pflichtfelder der Unteraufgaben festlegen

Markieren Sie Startdatum, Enddatum und Geschätzte Arbeitszeit als Pflichtfelder, damit alle Daten vorhanden sind und die Berechnungen funktionieren.

11.5.2 Verknüpfungsregeln für Fertigstellungsgrad und verbleibende Arbeitszeit

Fügen Sie in der Unteraufgaben-Tabelle folgende Berechnungsregeln hinzu:

  • Fertigstellungsgrad: Summe der täglichen Arbeitszeit / Geschätzte Arbeitszeit
SUM(【Aktuelles Formular / Tägliche Arbeitszeit / Tägliche Arbeitszeit】)  /  【Aktuelles Formular / Geschätzte Arbeitszeit】
  • Verbleibende Arbeitszeit: Geschätzte Arbeitszeit – Summe der täglichen Arbeitszeit
【Aktuelles Formular / Geschätzte Arbeitszeit】 - SUM(【Aktuelles Formular / Tägliche Arbeitszeit / Tägliche Arbeitszeit】)

202411170353551731786835.png

  • Ebenso konfigurieren wir in den Verknüpfungsregeln der täglichen Arbeitszeit die Ideal-Arbeitszeit:
  【Aktuelles Formular / Geschätzte Arbeitszeit】 / 【Aktuelles Formular / Aufgabendauer】

So lassen sich Fortschritt und verbleibende Arbeitszeit in Echtzeit berechnen.

11.6 Diagramm zum Aufgabenfortschritt erstellen (optional)

11.6.1 Diagramm zum Aufgabenfortschritt erstellen

Legen Sie einen neuen Diagramm-Block an, um die Veränderungen von Summe der täglichen Arbeitszeit und Summe der Ideal-Arbeitszeit über die Zeit darzustellen und so den Fortschritt sichtbar zu machen.

Setzen Sie die Bedingung 【Verknüpfte Aufgabe/Id】 gleich 【Aktueller Popup-Datensatz/ID】, damit das Diagramm den realen Stand der aktuellen Aufgabe widerspiegelt.

202411170417341731788254.png

202411170418231731788303.png

11.6.2 Basisinformationen und Fortschrittsänderungen anzeigen

Erinnern Sie sich an unseren Markdown-Block? Über einen markdown-Block stellen wir Basisinformationen und Fortschritt der Aufgabe dar.

Verwenden Sie Handlebars.js, um den Fortschritt in Prozent darzustellen:

Progress of Last Update:
<p style="font-size: 54px; font-weight: bold; color: green;">
{{floor (multiply $nRecord.complete_percent 100)}}
 %
</p>

Als Template-Sprache wählen Sie Handlebars.js. Details zur Syntax finden Sie in der offiziellen Dokumentation.


11.7 Zusammenfassung

Glückwunsch! Wir haben die Aufgabenzerlegung in Unteraufgaben abgeschlossen. Mit Mehrebenen-Verwaltung, täglicher Arbeitszeit-Erfassung und Diagrammen sehen wir den Fortschritt klar und können effizienter arbeiten. Vielen Dank fürs geduldige Mitlesen – auf zum nächsten Kapitel!


Erkunden Sie weiter und lassen Sie Ihrer Kreativität freien Lauf! Bei Problemen können Sie jederzeit in der offiziellen NocoBase-Dokumentation nachlesen oder in der NocoBase-Community diskutieren.