Comment écrire les données de Task mises à jour dans MPP
Aspose.Tasks for .NET permet aux développeurs de mettre à jour les informations de tâche (tels que les échéances, les notes, les IDs et la structure) puis enregistrer ces modifications dans des fichiers Microsoft Project au format MPP ou XML format. Cela permet de modifier de manière programmatique des projets existants sans les éditer manuellement dans Microsoft Project.
Mise à jour des données de Task dans Aspose.Tasks
Lorsqu’on travaille avec des plannings de projet, il est courant de mettre à jour les tâches après la planification — par exemple, ajuster les échéances, modifier les notes de tâche ou ajouter de nouveaux éléments. Aspose.Tasks propose un flux de travail simple pour ce processus :
- Créez une instance de la Project class.
- Chargez le fichier source MPP.
- Accédez à Task object et modifiez ses propriétés.
- Mettez à jour des paramètres tels que Deadline, NotesText, Start/Finish dates, ou IDs.
- Ajoutez éventuellement de nouvelles tâches à la tâche racine ou à des sous-tâches.
- Enregistrez le projet mis à jour au format MPP/XML.
Exemple : Mise à jour des données de Task et enregistrement au format MPP
L’exemple suivant montre comment mettre à jour l’échéance d’une tâche, ajouter des notes et trouver les IDs de tâches avant d’écrire le projet mis à jour sur le disque :
1Project project = new Project("New Project.mpp");
2
3// Set project start date
4project.Set(Prj.StartDate, new DateTime(2012, 07, 29, 8, 0, 0));
5
6// Add summary task and set its properties
7Task summary = project.RootTask.Children.Add("Summary task");
8Task task = summary.Children.Add("First task");
9task.Set(Tsk.Duration, project.GetDuration(3));
10task.Set(Tsk.Deadline, task.Get(Tsk.Start).AddDays(10));
11task.Set(Tsk.NotesText, "The first task.");
12task.Set(Tsk.DurationFormat, TimeUnitType.MinuteEstimated);
13task.Set(Tsk.ConstraintType, ConstraintType.FinishNoLaterThan);
14task.Set(Tsk.ConstraintDate, task.Get(Tsk.Deadline).AddDays(-1));
15
16
17// Create 10 new sub tasks for summary task
18for (int i = 0; i < 10; i++)
19{
20 Task subTask = summary.Children.Add(string.Format("Task{0}", i + 2));
21 subTask.Set(Tsk.Duration, task.Get(Tsk.Duration).Add(project.GetDuration(i + 1)));
22 subTask.Set(Tsk.DurationFormat, TimeUnitType.Day);
23 subTask.Set(Tsk.Deadline, task.Get(Tsk.Deadline).AddDays(i + 1));
24}
25
26project.Save("UpdateTaskData_out.mpp", SaveFileFormat.MPP);
Ce fragment montre comment les développeurs peuvent modifier de manière programmatique des tâches existantes et conserver les mises à jour dans des fichiers MPP. Cela est particulièrement utile lors de la synchronisation de systèmes externes avec les données de Microsoft Project.
Points clés
- Vous pouvez mettre à jour la plupart des propriétés de tâche, y compris Deadlines, Notes, Start/Finish dates, and custom fields.
- Les tâches peuvent être ajoutées, modifiées ou supprimées de manière programmatique avant l’enregistrement.
- Les projets mis à jour peuvent être enregistrés au format MPP et XML sans nécessiter l’installation de Microsoft Project.
- Les IDs de tâche (Original ID, External ID) peuvent être consultés pour références entre projets.
- Aspose.Tasks garantit l’intégrité des données lors de l’écriture dans les fichiers de projet.
FAQ
Q: Puis-je ajouter de nouvelles tâches lors de la mise à jour d’un projet existant ?
- Oui. Vous pouvez insérer de nouvelles tâches dans la tâche racine ou en tant que sous-tâches avant l’enregistrement.
Q: Les champs personnalisés sont-ils conservés lors de l’écriture des données mises à jour ?
- Oui. Aspose.Tasks conserve les valeurs des champs personnalisés lors de l’enregistrement des fichiers MPP/XML mis à jour.
Q: Ai-je besoin d’installer Microsoft Project pour enregistrer les modifications ?
- Non. Aspose.Tasks fonctionne de manière autonome et ne nécessite pas Microsoft Project.
Q: Puis-je mettre à jour les ressources des tâches en même temps que les données de tâche ?
- Oui. Vous pouvez modifier à la fois les détails de la tâche et les ressources assignées de manière programmatique.
Q: Comment suivre les références de tâches entre projets ?
- Utilisez le Original ID et External ID propriétés pour identifier les tâches liées à travers plusieurs projets.