Робота з орієнтовними та важливими завданнями
Contents
[
Hide
Show
]У Microsoft Project етапи використовуються для моніторингу прогресу проекту. Віхи мають вирішальне значення в проекті. Як правило, віха - це завдання без тривалості, але будь -яке завдання може бути позначене як віха. Aspose.Tasks для C ++ API допомагає вам керувати етапами.
Робота з віхами
Клас TSK розкриває властивості Isestimated та Ismilestone для управління оціновими та важливими завданнями:
- ISESTIMATE: Встановіть і отримайте, чи оцінюється завдання (значення BOOL).
- ISMILESTONE: Встановіть і отримайте, чи завдання - це віха (значення BOOL).
Перегляд орієнтовних та важливих завдань у Microsoft Project
Щоб побачити, чи є завдання оцінки позначеної як віхою в Microsoft Project One може двічі клацнути завдання у формі запису:
Дізнайтеся, чи оцінюється завдання чи віха
Наступний приклад коду демонструє, як з’ясувати, чи оцінюється завдання, чи віха використання Aspope.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}