Pourcentage de calculs complets
Microsoft Project montre le pourcentage d’une tâche terminée. Le pourcentage peut être ajouté manuellement, par un chef de projet, ou automatiquement calculé par l’application. Aspose.Tasks pour C ++ prend en charge plusieurs calculs en pourcentage liés aux tâches.
pourcentages
La classe TSK expose un certain nombre de propriétés utilisées pour calculer les pourcentages:
- Le pourcentage Complete représente le pourcentage terminé de la durée d’une tâche (entier).
- PeckeworkComplete représente le pourcentage terminé du travail d’une tâche (entier).
- PhysicalPentComplete représente le pourcentage terminé tel qu’il est entré par un chef de projet (Integer).
Pour voir le pourcentage physique complet dans le projet Microsoft:
- Dans le formulaire d’entrée de tâche, dans le menu insert, sélectionnez colonne.
- Ajoutez la colonne.
Pour voir le pourcentage terminé dans le projet Microsoft:
- Sur le formulaire d’entrée de tâche, double-cliquez sur la colonne souhaitée.
Obtenir des pourcentages
L’exemple de code suivant montre comment obtenir les pourcentages de travaux relatifs aux tâches.
1// Create project instance
2System::String dataDir = RunExamples::GetDataDir(System::Reflection::MethodBase::GetCurrentMethod(ASPOSE_CURRENT_FUNCTION)->get_DeclaringType().get_FullName());
3System::SharedPtr<Project> project1 = System::MakeObject<Project>(dataDir + u"TaskPercentageCompletion.mpp");
4
5// Access tasks and display percentage completion
6auto tasks = project1->get_RootTask()->get_Children();
7
8{
9 auto tsk1_enumerator = (tasks)->GetEnumerator();
10 decltype(tsk1_enumerator->get_Current()) tsk1;
11 while (tsk1_enumerator->MoveNext() && (tsk1 = tsk1_enumerator->get_Current(), true))
12 {
13 System::Console::WriteLine(tsk1->Get<int32_t>(Tsk::PercentComplete()));
14 System::Console::WriteLine(System::Convert::ToString(tsk1->Get<int32_t>(Tsk::PercentWorkComplete())));
15 System::Console::WriteLine(System::Convert::ToString(tsk1->Get<int32_t>(Tsk::PhysicalPercentComplete())));
16 }
17}
Changing Task Progress
Aspose.Tasks for C++ API supports changing a task’s progress in terms of its percentage completion through the Task class’ SetPercentComplete() method. This method takes an integer argument as input for the percentage work completed.
The following piece of code shows how to change the progress of a task.
1System::SharedPtr<Project> project = System::MakeObject<Project>();
2System::Console::WriteLine(u"Project Calculation mode is Automatic: {0}", System::ObjectExt::Box<bool>(System::ObjectExt::Equals(project->get_CalculationMode(), Aspose::Tasks::CalculationMode::Automatic)));
3
4System::SharedPtr<Task> task = project->get_RootTask()->get_Children()->Add(u"Task");
5task->Set<Duration>(Tsk::Duration(), project->GetDuration(2));
6task->Set<int32_t>(Tsk::PercentComplete(), 50);