Travailler avec les tâches en .NET
Gestion propriétés réelles des tâches fait partie intégrante de la planification et des rapports de projet. Dans Aspose.Tasks for .NET, vous pouvez facilement lire coût réel, durée, dates de début/fin, heures supplémentaires, et plus encore. Cela permet aux développeurs de analyser l’avancement du projet de manière programmatique, sans dépendre de Microsoft Project.
Quelles sont les propriétés réelles ?
Les propriétés réelles vous aident à déterminer combien de travail, de temps ou d’argent a déjà été dépensé sur une tâche. Ces valeurs sont particulièrement utiles pour comparer l’avancement prévu et réel.
Propriétés réelles courantes
La classe statique Tsk expose les champs suivants :
- ActualCost → coût réel de la tâche (
double
) - ActualOvertimeCost → coût des heures supplémentaires (
double
) - ActualOvertimeWork → travail en heures supplémentaires (
TimeSpan
) - ActualDuration → durée réelle (
TimeSpan
) - ActualStart → date de début effective de la tâche (
DateTime
) - ActualFinish → date de fin effective de la tâche (
DateTime
) - ACWP → Coût réel du travail effectué (
double
)
Afficher les propriétés réelles dans Microsoft Project
Si vous souhaitez comparer des valeurs dans MS Project:
- Ouvrez le View menu → sélectionnez More Views → choisissez Task Entry.
- Dans le Insert menu → sélectionnez Column → ajoutez des champs tels que Actual Start, Actual Finish, Actual Work, etc.
De cette façon, vous pouvez vérifier visuellement les mêmes données que l’Aspose.Tasks API fournit de manière programmatique.
Lecture des propriétés réelles en C#
Voici un exemple qui charge un fichier de projet (.mpp
) et affiche les propriétés réelles de la tâche dans la console.
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}
Astuce : Vous pouvez utiliser
ChildTasksCollector
avec
TaskUtils
pour récupérer récursivement toutes les tâches à partir de la tâche racine.
Principaux avantages
- Automatise les rapports de projet sans ouvrir Microsoft Project.
- Permet d’exporter les valeurs réelles vers tableaux de bord, Excel ou bases de données.
- Fonctionne avec
.mpp
et d’autres formats pris en charge.
FAQ
Q : Ai-je besoin d’installer Microsoft Project pour lire les propriétés réelles ?
- Non. Aspose.Tasks for .NET fonctionne indépendamment de Microsoft Project.
Q : Puis-je mettre à jour les propriétés réelles par programmation ?
- Oui. Vous pouvez définir des valeurs pour
ActualStart
,ActualFinish
, et d’autres avant d’enregistrer le projet.
Q : Est-ce que cela fonctionne avec Primavera ou seulement avec MS Project ?
- Aspose.Tasks prend en charge plusieurs formats, mais les propriétés réelles sont principalement alignées sur les champs de Microsoft Project.