Arbeiten mit Aufgaben in .NET
Verwalten tatsächliche Eigenschaften von Aufgaben ist ein wesentlicher Bestandteil der Projektplanung und -berichterstattung. In Aspose.Tasks for .NET, können Sie einfach die tatsächlichen Kosten, Dauer, Start-/Enddaten, Überstunden, und mehr. Dies ermöglicht Entwicklern, den Projektfortschritt programmgesteuert zu analysieren, ohne auf Microsoft Project angewiesen zu sein.
Was sind Actual Properties?
Actual Properties helfen Ihnen herauszufinden wie viel Arbeit, Zeit oder Geld bereits für eine Aufgabe aufgewendet wurde. Diese Werte sind besonders nützlich zum Vergleichen von geplantem vs. tatsächlichem Fortschritt.
Häufige Actual Properties
Die statische Klasse Tsk stellt die folgenden Felder bereit:
- ActualCost → tatsächliche Kosten der Aufgabe (
double
) - ActualOvertimeCost → Überstundenkosten (
double
) - ActualOvertimeWork → Überstunden (
TimeSpan
) - ActualDuration → tatsächliche Dauer (
TimeSpan
) - ActualStart → wann die Aufgabe tatsächlich begonnen hat (
DateTime
) - ActualFinish → wann die Aufgabe tatsächlich beendet wurde (
DateTime
) - ACWP → Tatsächliche Kosten der geleisteten Arbeit (
double
)
Anzeige von Actual Properties in Microsoft Project
Wenn Sie Werte innerhalb von MS Project:
- Öffnen Sie das View Menü → wählen Sie More Views → wählen Sie Task Entry.
- Im Insert Menü → wählen Sie Column → fügen Sie Felder wie Actual Start, Actual Finish, Actual Work, usw.
Auf diese Weise können Sie visuell dieselben Daten überprüfen, die die Aspose.Tasks API programmatisch bereitstellt.
Auslesen von Actual Properties in C#
Im Folgenden ein Beispiel, das eine Projektdatei lädt (.mpp
) und gibt tatsächliche Eigenschaften der Aufgaben in der Konsole aus.
1// Create Project instance
2Project project = new Project("New Project.mpp");
3
4// Create a ChildTasksCollector instance
5ChildTasksCollector collector = new ChildTasksCollector();
6
7// Collect all the tasks from RootTask using TaskUtils
8TaskUtils.Apply(project.RootTask, collector, 0);
9
10// Parse through all the collected tasks
11foreach (Task task in collector.Tasks)
12{
13 Console.WriteLine("Task Name : " + task.Get(Tsk.Name));
14 Console.WriteLine("Actual Start: " + task.Get(Tsk.ActualStart).ToLongDateString());
15 Console.WriteLine("Actual Finish: " + task.Get(Tsk.ActualFinish).ToLongDateString());
16 Console.WriteLine("Actual Duration: " + task.Get(Tsk.ActualDuration).TimeSpan.Hours.ToString());
17 Console.WriteLine("Actual Cost: " + task.Get(Tsk.ActualCost).ToString());
18 Console.WriteLine("---------------------------------------------");
19}
Tipp: Sie können
ChildTasksCollector
mit
TaskUtils
um alle Aufgaben rekursiv von der Stammaufgabe abzurufen.
Hauptvorteile
- Automatisiert Projektberichterstattung ohne Microsoft Project zu öffnen.
- Ermöglicht das Exportieren von Ist-Werten nach Dashboards, Excel oder Datenbanken.
- Funktioniert mit
.mpp
und anderen unterstützten Formaten.
FAQ
F: Muss Microsoft Project installiert sein, um Actual Properties auszulesen?
- Nein. Aspose.Tasks for .NET funktioniert unabhängig von Microsoft Project.
F: Kann ich Actual Properties programmgesteuert aktualisieren?
- Ja. Sie können Werte für
ActualStart
,ActualFinish
, und andere, bevor Sie das Projekt speichern.
F: Funktioniert dies mit Primavera oder nur mit MS Project?
- Aspose.Tasks unterstützt mehrere Formate, aber Actual Properties sind primär an die Felder von Microsoft Project angelehnt.