Читання ресурсів Timephed Data
Contents
[
Hide
Show
]Aspose.Tasks для C ++ API підтримує читання даних про часовий ресурс з файлів Microsoft Project (MPP).
ЧИТАННЯ ДАНИХ РЕСУРСІВ ТІМЕФА
Дані Timephoade отримують за допомогою методу TimeScaledata об’єкта ресурсу. Для даних про тинофусимості *ресурсної роботи *,
- Метод TimeScaledata отримує дані про часовий час для роботи з ресурсами та приймає дати запуску та закінчення проекту як вхідні параметри.
- Щоб отримати дані про часовий час для витрат на ресурс, метод TimeScaledata приймає ще один вхідний параметр - тип даних, що базується на часі, як ресурс.
Наступний приклад коду демонструє читання даних про часовий ресурс.
1// Create project instance
2System::SharedPtr<Project> project1 = System::MakeObject<Project>(dataDir + u"ResourceTimephasedData.mpp");
3
4// Get the Resource by its ID
5System::SharedPtr<Resource> resource = project1->get_Resources()->GetByUid(1);
6
7// Print Timephased data of ResourceWork
8System::Console::WriteLine(u"Timephased data of ResourceWork");
9
10{
11 auto td_enumerator = (resource->GetTimephasedData(project1->Get<System::DateTime>(Prj::StartDate()), project1->Get<System::DateTime>(Prj::FinishDate())))->GetEnumerator();
12 decltype(td_enumerator->get_Current()) td;
13 while (td_enumerator->MoveNext() && (td = td_enumerator->get_Current(), true))
14 {
15 System::Console::Write(System::String(u"Start: ") + td->get_Start().ToShortDateString());
16 System::Console::Write(System::String(u" Work: ") + td->get_Value() + System::Environment::get_NewLine());
17 }
18}
19
20// Print Timephased data of ResourceCost
21System::Console::WriteLine(u"Timephased data of ResourceCost");
22
23{
24 auto td_enumerator = (resource->GetTimephasedData(project1->Get<System::DateTime>(Prj::StartDate()), project1->Get<System::DateTime>(Prj::FinishDate()), Aspose::Tasks::TimephasedDataType::ResourceCost))->GetEnumerator();
25 decltype(td_enumerator->get_Current()) td;
26 while (td_enumerator->MoveNext() && (td = td_enumerator->get_Current(), true))
27 {
28 System::Console::Write(System::String(u"Start: ") + td->get_Start().ToShortDateString());
29 System::Console::Write(System::String(u" Cost: ") + td->get_Value() + System::Environment::get_NewLine());
30 }
31}