这篇文章给大家讲解利用dhtmlxGantt导入MS项目。
导入MS项目
为了转换XML或MPP MS项目文件,您需要向导出服务发送以下请求:
- 请求 址 – https://export.dhtmlx.com/gantt
- 请求方法 – POST
- 内容类型 – 多部分/表单数据
请求参数为:
- 文件 – MPP 或 XML MS 项目文件
- 类型 -“msproject-parse”
- data – ( 可选 )带有设置的 JSON 字符串
<form action="https://export.dhtmlx.com/gantt" method="POST" enctype="multipart/form-data"> <input type="file" name="file" /> <input type="hidden" name="type" value="msproject-parse"> <button type="submit">Get</button></form>
或者,您可以使用 客户端API ,如下所示:
gantt.importFromMSProject({ data: file, taskProperties: ["Notes", "Name"], callback: function (project) { if (project) { gantt.clearAll(); if (project.config.duration_unit) { gantt.config.duration_unit = project.config.duration_unit; } gantt.parse(project.data); } }});
响应将包含以下结构的 JSON:
{ data: {}, config: {}, resources: [], worktime: {}}
- 数据-甘特图数据对象 。 每个任务都有以下属性:id 、 open 、 parent 、 progress 、 start_date 、 text 、 resource 。 日期以“%Y-%m-%d %H:%i”格式进行字符串化。
- config – 具有从项目文件中检索的设置的甘特图 配置 对象。
- resources – 一个对象数组(每个对象具有以下属性:{ id:string, name:string, type:string },表示项目文件中的资源列表。
- worktime – 包含项目日历中的工作时间设置的对象。
设置持续时间单位
要设置预期的持续时间单位,也可以将 durationUnit (“分钟”、“小时”、“天”、“周”、“月”、“年”)字符串发送到服务器。
<form action="https://export.dhtmlx.com/gantt" method="POST" enctype="multipart/form-data"> <input type="file" name="file" /> <input type="hidden" name="type" value="msproject-parse"> <input type="hidden" name="data" value="{ "durationUnit"": ""hour"" }"" /> <button type=""submit"">Get</button></form>
或者设置以下格式:
gantt.importFromMSProject({ data: file声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!