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:

Pour voir le pourcentage physique complet dans le projet Microsoft:

  1. Dans le formulaire d’entrée de tâche, dans le menu insert, sélectionnez colonne.
  2. Ajoutez la colonne.

Pour voir le pourcentage terminé dans le projet Microsoft:

  1. 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);
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.