从 MS Project 导出和导入
dhtmlxGantt 库允许将甘特图中的数据导出到 MS Project。你也可以从 MS Project 将数据导入到甘特图。
该服务是免费的,但输出文件在 GPL 许可下会包含库的水印。若你购买了许可证,在有效支持期内(所有 PRO 许可均为 12 个月)导出的结果将不带水印。
有若干导出服务可用。你可以在本地计算机上安装它们,并本地将甘特图导出为 MS Project。 请注意,导出服务不包含在 Gantt 包中, 请阅读 corresponding article 以了解每个服务的使用条款。
在线导出服务的限制
导出服务对时间和请求大小有一定限制。
时间限制
如果处理时间超过 20 秒,导出将被取消,出现如下错误:
Error: Timeout trigger 20 seconds
如果多个人同时导出甘特图,过程可能比平时耗时更长。但这没关系,因为来自特定用户的导出请求所花费的时间是单独计数的。
请求大小限制
有一个通用 API 端点 https://export.dhtmlx.com/gantt,用于所有导出方法(exportToPDF、exportToPNG、exportToMSProject 等等)。最大请求大小为 10 MB。
还有一个单独的 API 端点 https://export.dhtmlx.com/gantt/project,专用于 MSProject 与
Primavera P6 的导出/导入服务(仅限 exportToMSProject / importFromMSProject / exportToPrimaveraP6 / importFromPrimaveraP6)。最大请求大小:40 MB。
使用导出模块
如果你需要导出较大的图表,可以使用一个 standalone export module。 若你在 Commercial、Enterprise 或 Ultimate 许可证下获得 Gantt,导出模块免费提供,或者你也可以 单独购买该模块。
导出到 MS Project
Gantt 组件允许将链接、任务和资源导出到 MS Project。
要将数据从 Gantt 图导出到 MS Project,请执行下列操作:
- 要使用导出/导入功能,请通过 plugins 方法启用 export_api 插件:
gantt.plugins({
export_api: true
});
它允许你使用在线导出服务或本地导出模块。
如果你使用的 Gantt 版本低于 8.0,需要在页面中包含 https://export.dhtmlx.com/gantt/api.js 以启用导出功能,例如:
<script src="codebase/dhtmlxgantt.js"></script>
<script src="https://export.dhtmlx.com/gantt/api.js"></script>
- 调用 exportToMSProject 方法以从 Gantt 图导出数据。
gantt.exportToMSProject();
该方法将向远程服务发送请求,远程服务要么输出一个 XML Project 文件,要么返回一个用于下载生成文件的 URL。
相关示例: Export data : MS Project, PrimaveraP6, Excel & iCal