Calcular la fecha de finalización de una tarea dividida
Microsoft Project permite a los usuarios dividir las tareas cuando se interrumpe el horario. Aspose.Tasks le permite calcular la fecha de finalización de una tarea dividida.
Tareas divididas
El método GetTaskFinishDateFromDuration expuesto por la clase Calendario se utiliza para calcular la fecha de finalización de una tarea dividida desde la fecha de inicio, las piezas divididas y la duración. El método GetTaskFinishDateFomDuration toma una tarea dividida y duración como sus argumentos y devuelve la fecha de finalización de las tareas.
Tareas divididas en el proyecto Microsoft
Para ver la fecha de inicio de una tarea dividida en el proyecto Microsoft desde el menú View, seleccione Gantt Chart. Las partes de una tarea dividida están conectadas por una línea de puntos.
The split task in Microsoft Project
Cálculo de la fecha de finalización de una tarea dividida con Aspose.Tasks
Los siguientes ejemplos de código calculan la fecha de finalización de una tarea dividida.
1// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
2// The path to the documents directory.
3String dataDir = Utils.getDataDir(SplitTaskFinishDate.class);
4
5// Read project
6String projectName = dataDir + "SplitTaskProject.mpp";
7Project project = new Project(projectName);
8
9// Find a split task
10Task splitTask = project.getRootTask().getChildren().getByUid(1);
11
12// Find the project calendar
13Calendar calendar = project.get(Prj.CALENDAR);
14
15// Calculate task's finish date with different durations
16System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 8 hours\nFinish Date: "
17 + calendar.getTaskFinishDateFromDuration(splitTask, 8d));
18System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 16 hours\nFinish Date: "
19 + calendar.getTaskFinishDateFromDuration(splitTask, 16d));
20System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 24 hours\nFinish Date: "
21 + calendar.getTaskFinishDateFromDuration(splitTask, 24d));
22System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 28 hours\nFinish Date: "
23 + calendar.getTaskFinishDateFromDuration(splitTask, 28d));
24System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 32 hours\nFinish Date: "
25 + calendar.getTaskFinishDateFromDuration(splitTask, 32d));
26System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 46 hours\nFinish Date: "
27 + calendar.getTaskFinishDateFromDuration(splitTask, 46d));
28System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 61 hours\nFinish Date: "
29 + calendar.getTaskFinishDateFromDuration(splitTask, 61d));
30System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 75 hours\nFinish Date: "
31 + calendar.getTaskFinishDateFromDuration(splitTask, 75d));
32System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 80 hours\nFinish Date: "
33 + calendar.getTaskFinishDateFromDuration(splitTask, 80d));
34System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 120 hours\nFinish Date: "
35 + calendar.getTaskFinishDateFromDuration(splitTask, 120d));
36System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 150 hours\nFinish Date: "
37 + calendar.getTaskFinishDateFromDuration(splitTask, 150d));