gpt4 book ai didi

java - 导入由 MPXJ 创建的 MSPDI 后,MS Project 显示不正确的开始和完成日期

转载 作者:行者123 更新时间:2023-11-30 11:32:11 26 4
gpt4 key购买 nike

我已经基于来自 MPXJ 库分发的 MpxjCreate 示例创建了一个应用程序。我创建了几个任务,其中一些带有子任务,并使用 Task.setStart()/Task.setFinish()用于设置任务开始/完成日期。在我使用 MSPDIWriter 写入结果文件后, 在 <Task> 中生成的 xml 文件中可以看到以下标签标签:

<Start>2013-01-01T00:00:00</Start>
<Finish>2016-12-31T00:00:00</Finish>

但是当我使用 MS Project 2007 打开文件时,它似乎忽略给定值并使用 <StartDate>来自 <Project> 的值标记,这会导致一系列持续时间为 1 天的任务。

请告知,使用<Task>-><Start>/<Finish>应该怎么做没有任何“智能”计算的 MS Project 任务开始/结束日期的标记值?

最佳答案

自 2003 版本以来,我一直在为 MS-Project XML 文件导入而苦恼。

现在我必须处理 MSP 2013 问题(为什么是 Microsoft?为什么这么不可预测?)

在我看来,需要一些基本信息才能正确导入所需的值。

这是我的做法:

task.setEstimated(false); //to get rid of the percentage in the duration value

task.setPercentageComplete(50d); //50% for example
task.setPercentageWorkComplete(50d);
task.setPhysicalPercentComplete(50d);

task.setStart(<start date>);
task.setFinish(<finish date>);
task.setActualStart(<actual start date>);
task.setActualFinish(<actual finish date>); //only necessary if the task is 100%

task.setDuration(Duration.getInstance(4d, TimeUnit.DAYS)); //4d for example
task.setActualDuration(Duration.getInstance(2d, TimeUnit.DAYS));

double remainingDuration = task.getDuration().getDuration() - task.getActualDuration().getDuration();
task.setRemainingDuration(Duration.getInstance(remainingDuration, task.getDuration().getUnits()));

//if your task has resources assigned, you should set the work values
//suppose you have 2 resources assigned with 3 units each
double work = task.getDuration().getDuration() * 6;
task.setWork(Duration.getInstance(work, task.getDuration().getUnits()));
task.setRegularWork(work);

double actualWork = work * task.getPercentageComplete() / 100d;
task.setActualWork(Duration.getInstance(actualWork, task.getWork().getUnits()));

double remaining = task.getWork().getDuration() - task.getActualWork().getDuration();
task.setRemainingWork(Duration.getInstance(remaining, task.getWork().getUnits()));

好吧,我相信这已经足够了。

关于java - 导入由 MPXJ 创建的 MSPDI 后,MS Project 显示不正确的开始和完成日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16807627/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com