Travailler avec des tâches estimées et marquées

Dans le projet Microsoft, les jalons sont utilisés pour suivre les progrès d’un projet. Les jalons sont des points cruciaux du projet. En règle générale, une étape est une tâche sans durée, mais toute tâche peut être marquée comme une étape importante. Aspose.Tasks pour l’API C ++ vous aide à gérer les jalons.

Travailler avec des jalons

La classe TSK expose les propriétés istimées et ismilestones pour gérer les tâches estimées et marquantes:

Voir les tâches estimées et marquées dans Microsoft Project

Pour voir si une tâche est des estimations de marqué comme une étape importante dans le projet Microsoft, on peut double-cliquer sur une tâche dans le formulaire de saisie des tâches:

Marquant une tâche estimée comme étape importante dans le projet Microsoft

Découvrir si une tâche est estimée ou une étape importante

L’exemple de code suivant montre comment savoir si une tâche est estimée ou une étape importante à l’aide d’Aspose.Tasks.

 1// Read project from file stream
 2System::String dataDir = RunExamples::GetDataDir(System::Reflection::MethodBase::GetCurrentMethod(ASPOSE_CURRENT_FUNCTION)->get_DeclaringType().get_FullName());
 3System::SharedPtr<System::IO::FileStream> fs = System::MakeObject<System::IO::FileStream>(dataDir + u"EstimatedMilestoneTasks.mpp", System::IO::FileMode::Open);
 4System::SharedPtr<Project> prj = System::MakeObject<Project>(fs);
 5fs->Close();
 6    
 7// Create a ChildTasksCollector instance
 8System::SharedPtr<ChildTasksCollector> collector = System::MakeObject<ChildTasksCollector>();
 9    
10// Collect all the tasks from RootTask using TaskUtils
11TaskUtils::Apply(prj->get_RootTask(), collector, 0);
12    
13// Parse through all the collected tasks
14    
15{
16    auto tsk1_enumerator = (collector->get_Tasks())->GetEnumerator();
17    decltype(tsk1_enumerator->get_Current()) tsk1;
18    while (tsk1_enumerator->MoveNext() && (tsk1 = tsk1_enumerator->get_Current(), true))
19    {
20        System::String strEst = tsk1->Get<NullableBool>(Tsk::IsEstimated()).get_Value() ? System::String(u"Estimated") : System::String(u"Non-Estimated");
21        System::String strMileStone = tsk1->Get<NullableBool>(Tsk::IsMilestone()).get_Value() ? System::String(u"Milestone") : System::String(u"Non-Milestone");
22        System::Console::WriteLine(tsk1->Get(Tsk::Name()) + u" : " + strEst);
23        System::Console::WriteLine(tsk1->Get(Tsk::Name()) + u" : " + strMileStone);
24    }
25}
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.