1 mpp简单介绍:
mpp指的是Microsoft Office Project文件。用于定制计划,主要参数有任务名称,资源名称,工期,开始时间,结束时间,工期通过工作时间及开始时间结束时间推算出来(工作时间:每星期工作几天,工作时间段为什么。可指定特定的工作日,工作时间段可单独设置)。也可以拆分任务,例如:一汽新需求外委,中间几天可能需要解决bug那么这几天不算在工期内,但是时间段包含解决bug的消耗时间。
2 操作mpp需要导入系统的jar包:
activation.jar,jaxb-api.jar,jaxb-impl.jar,jsr173_1.0_api.jar,poi-3.2-FINAL-20081019.jar,
mpxj.jar。(mpxj依赖于上面的jar包。) 以上包都可以在mpxj网站下载,直接下载mpxj3.0 的源码,源码中包含以上包。(注意:下载的mpxj源码中自带的mpxj.jar包直接导入项目会有问题,请将源码直接编译成class文件然后打成jar包再导入系统。)
3重要的类及属性简介:
Task
阶段
Name :
|
阶段名称。
|
UniqueID:
|
唯一编号。
|
ID:
|
编号(唯一编号和编号可能不同)。
|
OutlineLevel:
|
阶段级别。(1代表最大的一个阶段,以此类推)
|
Duration:
|
工期。(已天为单位)
|
Start:
|
阶段开始时间
|
Finish:
|
阶段结束时间
|
ActualStartDate:
|
实际开始时间
|
ActualFinishDate:
|
实际完成时间
|
资源分配中的信息直接影响到导出mpp的准确性,如果只有任务的工期,没有在ResourceAssignment
中赋值则导出的阶段工期就会出错。
ResourceAssignment
资源分配
RemainingWork:
|
工期,已小时为单位例如阶段工期为5,则work=5*8
|
Work:
|
同上
|
ActualWork:
|
实际工作时间也是已小时为单位
|
Start:
|
阶段开始时间
|
Finish:
|
阶段结束时间
|
TimephasedResourceAssignment
拆分时间段
Start:
|
时间段开始时间
|
Finish:
|
时间段结束时间
|
TotalWork:
|
总工作时间
|
WorkPerDay:
|
每天的工作时间,已分钟为单位,一般为480
|
ProjectCalendar
工作日历
Name
|
日历名称
|
setWorkingDay
|
设置星期几是否工作
|
addCalendarHours
|
设置星期几工作时间段
|
ProjectCalendarException
特殊工作日
FromDate:
|
开始时间
|
ToDate:
|
结束时间
|
Working
|
是否工作
|
Range
|
工作时间段
|
4 注意事项:
a)存储信息时不必将每个任务的"TimephasedResourceAssignment"信息存储起来,只有该阶段有拆分信息时该信息才有用。如果该阶段没有拆分存入该信息,导出时会导致数据错误。(TimephasedResourceAssignment:拆分时间段)
b)如果导入导出不一致可将导入的mpp转成xml,与导出的xml对比。(可能差别会很大,最好用删除的方法排除错误信息)
c)该项目还不完善有的功能目前还无法实现,如果碰到问题最好先在mpxj中直接导入导出试试看支不支持该功能。
5 参考资料:
mpxj官方网站:
http://mpxj.sourceforge.net/
mpxj API:
http://mpxj.sourceforge.net/apidocs/index.html
mpp xml标签解释:
http://www.microsoft.com/taiwan/office/project/prodinfo/saleguide/xmlstructure.mspx
6 简单例子:请下载代码
相关推荐
MPXJ是一个开源Java库,专门用于处理Microsoft Project文件,如MPP和XML格式的任务管理数据。这个库为开发者提供了一种方便的方式来读取、写入和修改Project文件,使得在非Microsoft环境中处理项目计划变得可能。在...
MPXJ是一个强大的Java库,专门用于处理Microsoft Project文件,如MPP和MPT格式。这个压缩包包含的六个jar文件是MPXJ项目的核心组件和依赖库,提供了全面的功能来读取、写入和修改Microsoft Project计划。下面将详细...
MPXJ库就是这样一个工具,它能够帮助我们读取MS Project的.mpp文件,并将其转换为XML格式,便于数据处理和共享。 MPXJ(Microsoft Project eXtended Java Library)是一个开源Java库,专门设计用来与Microsoft ...
1. **MPXJ简介**:MPXJ是一个跨平台的库,它允许开发者处理Microsoft Project文件而无需安装Project。它支持多种文件格式,包括MPP、MPT、XML、CSV等。MPXJ提供了丰富的API,用于创建、读取、修改和保存Project文件...
net-sf-mpxj.jar.操作project文件时使用
【标题】"mpxj与jobc:处理微软Project文件的工具" 在IT行业中,管理和协同项目进度是一项关键任务,而Microsoft Project是一款广泛使用的项目管理软件。为了与Project文件进行交互,开发人员经常需要借助第三方库...
MPXJ库是一个开源项目,主要致力于为Java、.Net、Ruby等编程语言提供与项目信息交互的能力。这个库的设计目标是使开发人员能够轻松地读取、写入以及操作项目管理软件的数据,如Microsoft Project文件(.mpp格式)。...
自己写的示例 仅供参考: public static void main(String[] args) { File file; file = new File("e:\\客户管理项目计划V1.0.mpp"); LinkedHashMap infoMap = new LinkedHashMap();...
MPXJ是Java,.Net和Ruby的开源文件处理库,用于读写Microsoft Project MPX和MSPDI XML文件,Planner文件,Primavera XER文件和数据库,Asta Powerproject文件和数据库,Asta Easyplan文件,Phoenix Project Manager...
为了在Java环境中操作这些文件,我们可以利用开源库如`mpxj`。 `mpxj`是一个强大的Java库,专门用于读取和写入MPP文件。它支持多种版本的Microsoft Project文件,包括.MPP和.MPT格式。在描述中提到的是`mpxj`的3.1...
在Java环境下,如果需要处理这样的文件,我们通常会借助于第三方库,例如`mpxj`。`mpxj`是一个开源的Java库,专门用于读取和写入Microsoft Project文件,包括MPP格式。这个库提供了丰富的API,使得开发者可以在Java...
MPXJ 是一个用于 Java、.Net 和 Ruby 的开源文件处理库,用于读写 Microsoft Project MPX 和 MSPDI XML 文件、Planner 文件、Primavera XER 文件和数据库、Asta Powerproject 文件和数据库、Asta Easyplan 文件、...
使用java的mpxj的jar包来生成mpx的project文件
本文将详细介绍如何利用给定的两个jar包——mpxj.jar和poi-3.6-20091214.jar来解析MPP文件。 首先,`mpxj.jar`是一个专门用于处理Microsoft Project文件的Java库。它提供了丰富的API,可以读取和写入MPP文件,包括...
适用于MPXJ的Apache Tika插件 这为Apache Tika提供了一个插件,可以使用MPXJ处理Microsoft Project文件(MPP)。 要使用此插件,只需在您的Tika类路径中包括MPXJ-Tika jar,Tika将自动检测该插件并使其可用。 信息...
MPXJ-Dojo-Gantt 此代码使用MPXJ处理Microsoft Project文件(MPP),并以Dojo Gantt库期望的JSON格式输出它们。 目前,转换只是从MPP到Dojo Gantt JSON的一种方式。 信息资源 Dojo Gantt- MPXJ- //mpxj....
emppC#实例; 移动 EMPPLib.ShortMessage shortMsg=new EMPPLib.ShortMessageClass(); shortMsg.srcID=accountId; shortMsg.ServiceID=serviceId; shortMsg.needStatus=true;... EMPPLib.Mobiles ...
在IT行业中,Microsoft Project是一款广泛使用的项目管理软件,它允许用户规划、跟踪和管理各种规模的项目。在处理与项目相关的任务和数据时,.mpp文件格式是Project的标准保存格式,其中包含了项目的详细信息,如...