MS Project显示不正确的开始日期和结束日期

约翰7887

我正在使用mpxj 4.5导出ms项目。当我按ms项目打开mpx文件时,开始日期和结束日期不正确,但是正确计算了持续时间。我在做什么错,请告诉我。

要创建mpx任务,请使用以下mpxj参数:

public ProjectFile exportToMSProject(Integer projectID){
    file.setAutoTaskID(true);
     ...........
}
private void createMSProjectTask(ProjectFile file, EUser user, ETask eTask)        
    Task task = file.addTask();
    task.setUniqueID(eTask.getObjectID());
    task.setName(eTask.getName());
    task.setNotes(eTask.getDescription());
    task.setType(TaskType.FIXED_DURATION);
    long workTime = 0;
    if(eTask.getDueDate() != null && eTask.getStartDate() != null){
        workTime = (eTask.getDueDate().getTime() - eTask.getStartDate().getTime()) / (1000 * 60 * 60);
    }
    if(eTask.isAllDay()){
        task.setDuration(Duration.getInstance(workTime / 24, TimeUnit.DAYS));
    }else {
        task.setDuration(Duration.getInstance(workTime, TimeUnit.HOURS));
    }
    if(eTask.getStartDate() != null)
        task.setStart(user.getUserDate(eTask.getStartDate())); //get time from user time zone
    if(eTask.getDueDate() != null)
        task.setFinish(user.getUserDate(eTask.getDueDate()));
    task.setPercentageComplete(eTask.getPercent() != null ? eTask.getPercent() : new Float(0.0));
    if(eTask.getActualStartDate() != null)
        task.setActualStart(eTask.getActualStartDate());
}

我反复收到开始日期和不正确的结束日期。这里有什么问题?任何建议将不胜感激。

hurshid

我遇到过同样的问题。从我的角度来看,如果您没有任务的任何前任或实际开始日期,则mpxj会自动设置startdate,我的意思是,它从项目标头或项目的第一个任务的开始日期获取startdate。这就是为什么您要重复开始日期。

这是简单的示例(我正在使用mpxj 4,5并创建.mpx文件):

    SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");
    ProjectFile file = new ProjectFile();
    ProjectHeader header = file.getProjectHeader();
    header.setStartDate(df.parse("01/05/2014"));

    Task task1 = file.addTask();
    task1.setName("Summary Task");

    Task task2 = task1.addTask();
    task2.setName("First Sub Task");
    task2.setDuration(Duration.getInstance(10.5, TimeUnit.HOURS));
    task2.setStart(df.parse("01/05/2014"));
    task2.setPercentageComplete(NumberUtility.getDouble(50.0));

    Task task3 = task1.addTask();
    task3.setName("Second Sub Task");
    task3.setStart(df.parse("11/05/2014"));
    task3.setDuration(Duration.getInstance(10, TimeUnit.HOURS));

    Task milestone1 = task1.addTask();
    milestone1.setName("Milestone");
    milestone1.setStart(df.parse("21/05/2014"));
    milestone1.setDuration(Duration.getInstance(0, TimeUnit.HOURS));

    Task task4 = file.addTask();
    task4.setName("Last Task");
    task4.setDuration(Duration.getInstance(8, TimeUnit.HOURS));
    task4.setStart(df.parse("02/05/2014"));
    task4.setPercentageComplete(NumberUtility.getDouble(70.0));

    ProjectWriter writer = getWriter(filename);
    writer.write(file, filename); 

如您所见,我没有提供任何前任或实际开始日期。如果运行此命令,将得到以下结果。

在此处输入图片说明

为了正确地获取开始日期,我给出了一个实际的开始日期而不是开始日期,并且它起作用了。另外,如果您有前任,您将获得父任务的截止日期作为开始日期。

 task.setActualStart(df.parse("02/05/2014"));

顺便说一句,ms项目会根据您的持续时间设置截止日期。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在MS Access中显示开始日期和结束日期之间的日期

来自分类Dev

MS Access 查询显示不正确

来自分类Dev

MS Access:在开始日期和结束日期之间按月分组

来自分类Dev

开始日期和结束日期之间的每个项目的MS SQL Server查询总和

来自分类Dev

MS SQL将日期行合并为开始结束日期

来自分类Dev

根据MS Access中的年和周编号填充周开始和周结束日期

来自分类Dev

MS Access 根据开始和结束日期自动填充查询列

来自分类Dev

MS Access VBA - 变量显示不正确

来自分类Dev

fullcalendar-结束日期不正确

来自分类Dev

查看daterange,结束日期不正确

来自分类Dev

事件的结束日期不正确

来自分类Dev

fullcalendar-结束日期不正确

来自分类Dev

在Office 365 API上插入重复发生的事件返回不正确的开始和结束日期

来自分类Dev

MatplotLib上的日期和图例显示不正确

来自分类Dev

如何基于MS Project中任务的开始日期自动更新过去任务中的日期

来自分类Dev

通过VBA将任务基线的开始和完成日期从MS Project导入到Excel中

来自分类Dev

MS Project-导入的XML具有错误的持续时间,开始和完成日期

来自分类Dev

JavaScript setMonth显示日期不正确

来自分类Dev

日期以不正确的语言显示

来自分类Dev

日期的年份显示不正确

来自分类Dev

日期以不正确的语言显示

来自分类Dev

日期字段显示不正确

来自分类Dev

Windows 显示日期格式不正确

来自分类Dev

MS-Access:选择每个会计月的开始日期和日期

来自分类Dev

imapclient日期和时间不正确

来自分类Dev

MS Graph-LINQ查询返回不正确的结果

来自分类Dev

MS Access存储了不正确的DateTime.MinValue吗?

来自分类Dev

MS Access数据库是/否更新不正确

来自分类Dev

MS Excel中的多个嵌套IF语句-括号不正确?

Related 相关文章

  1. 1

    如何在MS Access中显示开始日期和结束日期之间的日期

  2. 2

    MS Access 查询显示不正确

  3. 3

    MS Access:在开始日期和结束日期之间按月分组

  4. 4

    开始日期和结束日期之间的每个项目的MS SQL Server查询总和

  5. 5

    MS SQL将日期行合并为开始结束日期

  6. 6

    根据MS Access中的年和周编号填充周开始和周结束日期

  7. 7

    MS Access 根据开始和结束日期自动填充查询列

  8. 8

    MS Access VBA - 变量显示不正确

  9. 9

    fullcalendar-结束日期不正确

  10. 10

    查看daterange,结束日期不正确

  11. 11

    事件的结束日期不正确

  12. 12

    fullcalendar-结束日期不正确

  13. 13

    在Office 365 API上插入重复发生的事件返回不正确的开始和结束日期

  14. 14

    MatplotLib上的日期和图例显示不正确

  15. 15

    如何基于MS Project中任务的开始日期自动更新过去任务中的日期

  16. 16

    通过VBA将任务基线的开始和完成日期从MS Project导入到Excel中

  17. 17

    MS Project-导入的XML具有错误的持续时间,开始和完成日期

  18. 18

    JavaScript setMonth显示日期不正确

  19. 19

    日期以不正确的语言显示

  20. 20

    日期的年份显示不正确

  21. 21

    日期以不正确的语言显示

  22. 22

    日期字段显示不正确

  23. 23

    Windows 显示日期格式不正确

  24. 24

    MS-Access:选择每个会计月的开始日期和日期

  25. 25

    imapclient日期和时间不正确

  26. 26

    MS Graph-LINQ查询返回不正确的结果

  27. 27

    MS Access存储了不正确的DateTime.MinValue吗?

  28. 28

    MS Access数据库是/否更新不正确

  29. 29

    MS Excel中的多个嵌套IF语句-括号不正确?

热门标签

归档