Trabajando con tareas
Contents
[
Hide
Show
]Microsoft Project permite a los usuarios asignar horas extras a las tareas. Aspose.Tasks for C ++ API admite esta funcionalidad a través de dos propiedades en la clase de tareas.
Con el tiempo
El tsk expone varias propiedades para trabajar con tiempo extra:
- OvertimeCost: lee y escribe la suma del costo de tiempo extra real y restante de una tarea (doble).
- Overtimework: lee y escribe la cantidad de horas extras programadas para una tarea (Timespan).
Vista del proyecto Microsoft de las horas extras de la tarea
Para ver el trabajo de tiempo extra y las propiedades de costos de una tarea:
- En el formulario de entrada de tarea, seleccione el menú Insertar y luego columna.
- Agregue las columnas de tiempo extra.
Obtener la tarea de la tarea en aspose.Tasks
El siguiente ejemplo de código demuestra cómo obtener el costo de tiempo extra y el trabajo asociado con una tarea.
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"TaskOvertimes.mpp", System::IO::FileMode::Open);
4System::SharedPtr<Project> project1 = System::MakeObject<Project>(fs);
5fs->Close();
6
7// Read overtime and percentage completion for tasks
8
9{
10 auto tsk1_enumerator = (project1->get_RootTask()->get_Children())->GetEnumerator();
11 decltype(tsk1_enumerator->get_Current()) tsk1;
12 while (tsk1_enumerator->MoveNext() && (tsk1 = tsk1_enumerator->get_Current(), true))
13 {
14 System::Console::WriteLine(tsk1->Get<System::Decimal>(Tsk::OvertimeCost()));
15 System::Console::WriteLine(System::ObjectExt::ToString(tsk1->Get<Duration>(Tsk::OvertimeWork())));
16 System::Console::WriteLine(tsk1->Get<int32_t>(Tsk::PercentComplete()));
17 System::Console::WriteLine(System::Convert::ToString(tsk1->Get<int32_t>(Tsk::PercentWorkComplete())));
18 System::Console::WriteLine(System::Convert::ToString(tsk1->Get<int32_t>(Tsk::PhysicalPercentComplete())));
19
20 // Set percent complete
21 tsk1->Set<int32_t>(Tsk::PercentComplete(), 100);
22 }
23}