importFromMSProject
converts an XML or MPP MS Project file to JSON
void importFromMSProject(object config);
config | object | an object with configuration properties of an imported file |
Example
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);
}
}
});
Related samples
Details
The method requires HTML5 File API support.
If you use the Gantt version older than 8.0, you need to include the https://export.dhtmlx.com/gantt/api.js on your page to enable the online export service, e.g.:
<script src="codebase/dhtmlxgantt.js"></script>
<script src="https://export.dhtmlx.com/gantt/api.js"></script>
The method takes as a parameter an object with configuration properties of an imported file:
- data - an instance of File which should contain either MPP or XML Project file.
- callback - a callback function.
- durationUnit - sets an expected duration unit ("minute", "hour", "day", "week", "month", "year").
- projectProperties - specifies an array of project properties that should be put into the response.
- taskProperties - specifies an array of additional task properties to be imported.
Check the detailed descriptions of the import settings in the related section.
Response
The response will contain a JSON of the following structure:
{
data: {},
config: {},
resources: [],
worktime: {},
calendars: []
}
- data - (object) a gantt data object. Each task has the following properties: id, open, parent, progress, start_date, text, resource.
Dates are stringified in the "%Y-%m-%d %H:%i" format.
- config - (object) a gantt configuration object with settings retrieved from the project file.
- resources - (array) an array of objects (each having the following properties: {id: string, name: string, type: string, calendar: string} that represent the list of resources from the project file.
- worktime - (object) an object containing the working time settings from the project calendar. It can contain the following attributes:
- id - (string | number) optional, the calendar id
- hours - (array) an array with global working hours, sets the start and end hours of the task
- dates - (array) an array of dates that can contain:
- 7 days of the week (from 0 - Sunday, to 6 - Saturday), where 1/true stands for a working day and 0/false - a non-working day
- other records are dates
- calendars - (array) an array containing calendar configuration objects for creating a new calendar.
- calendarConfig - (object) a calendar configuration object that can contain the following attributes:
- id - (string | number) optional, the calendar id
- name - (string) the calendar name
- hours - (array) an array with global working hours, sets the start and end hours of the task
- dates - (array) an array of dates that can contain:
- 7 days of the week (from 0 - Sunday, to 6 - Saturday), where 1/true stands for a working day and 0/false - a non-working day
- other records are dates
See also
Back to top