Перейти к основному содержимому

Экспорт и импорт данных

dhtmlxGantt может экспортировать диаграмму в файлы PDF, PNG, Excel, iCal, MS Project, Primavera P6 и JSON, а также импортировать данные из файлов Excel, MS Project и Primavera P6. Любой экспорт и импорт файлов выполняется через сервис экспорта: либо через онлайн-сервис экспорта, размещённый DHTMLX, либо через модуль экспорта, который вы устанавливаете на собственный сервер.

В этой документации:

  • сервис экспорта — программное обеспечение, которое преобразует данные Gantt в файл или файл в данные Gantt;
  • онлайн-сервис экспорта — экземпляр сервиса экспорта, который DHTMLX запускает по адресу https://export.dhtmlx.com;
  • модуль экспорта — сервис экспорта, который вы устанавливаете и запускаете самостоятельно.

Что можно экспортировать и импортировать​

ФорматЭкспортИмпортМетодыМодуль экспортаРуководство
PDFДа-exportToPDF()Модуль PDF/PNG/ExcelPDF и PNG
PNGДа-exportToPNG()Модуль PDF/PNG/ExcelPDF и PNG
ExcelДаДаexportToExcel(), importFromExcel()Модуль PDF/PNG/ExcelExcel
iCalДа-exportToICal()Модуль PDF/PNG/ExceliCal
MS ProjectДаДаexportToMSProject(), importFromMSProject()Модуль MS Project/P6MS Project
Primavera P6ДаДаexportToPrimaveraP6(), importFromPrimaveraP6()Модуль MS Project/P6Primavera P6
Файл JSONДа-exportToJSON()Модуль PDF/PNG/Excel-
JSON или XML на страницеДа-serialize()не нужен, выполняется в браузереJSON и XML

Чтобы экспортировать и импортировать данные на стороне сервера, см. Экспорт и импорт данных на Node.js.

Как работает экспорт​

  1. Вы включаете плагин export_api с помощью метода plugins и вызываете метод экспорта или импорта, например, gantt.exportToPDF().
  2. Метод отправляет данные Gantt в сервис экспорта в POST-запросе.
  3. Сервис экспорта создаёт файл или считывает импортируемый файл.
  4. Браузер получает файл. При импорте функция callback метода получает данные. При экспорте функция callback может получить вместо этого URL созданного файла.

По умолчанию все методы отправляют запросы в онлайн-сервис экспорта по адресу https://export.dhtmlx.com/gantt. Чтобы отправлять их в другой сервис экспорта, например, в собственный модуль экспорта, задайте параметр server метода:

gantt.exportToPDF({
server: "https://myapp.com/myexport/gantt"
});

Онлайн-сервис экспорта или собственная установка​

  • Водяной знак. Онлайн-сервис экспорта бесплатный, но файлы PDF и PNG, которые он создаёт, содержат водяной знак, если у вас нет действующей лицензии. См. Лицензия и водяной знак.
  • Ограничения. У онлайн-сервиса экспорта есть ограничения по времени и размеру запроса. См. Ограничения онлайн-сервиса экспорта. У установленного вами модуля экспорта ограничения такие, какие вы настроите.
  • Расположение данных. Онлайн-сервис экспорта обрабатывает ваши данные на серверах DHTMLX. С модулями экспорта вы можете хранить данные в своей сети. См. Как два модуля работают вместе.
  • Настройка. Онлайн-сервису экспорта настройка не нужна. Модулю экспорта нужен сервер: Node.js или Docker для модуля PDF/PNG/Excel, .NET для модуля MS Project/P6. См. Модули экспорта.

Ограничения онлайн-сервиса экспорта​

заметка

У онлайн-сервиса экспорта есть ограничения по времени и размеру запроса.

Ограничения по времени​

Если процесс занимает более 20 секунд, экспорт будет прерван и произойдёт следующая ошибка:

Error: Timeout trigger 20 seconds

Если несколько пользователей одновременно экспортируют Gantt, процесс может занимать больше времени, чем обычно. Но это нормально, поскольку время, затраченное на запрос экспорта от конкретного пользователя, считается отдельно.

Ограничения размера запроса​

Существует общий эндпойнт API https://export.dhtmlx.com/gantt, который обслуживает все методы экспорта (exportToPDF, exportToPNG, exportToMSProject и т. п.). Максимальный размер запроса — 10 МБ.

Есть также отдельный эндпойнт API https://export.dhtmlx.com/gantt/project, специфичный для сервисов экспорта/импорта MS Project и Primavera P6 (только для exportToMSProject / importFromMSProject / exportToPrimaveraP6 / importFromPrimaveraP6). Максимальный размер запроса: 40 МБ. Как его использовать, см. в руководствах по MS Project и Primavera P6.

Лицензия и водяной знак​

заметка

Онлайн-сервис экспорта бесплатный, но выходные файлы PDF и PNG будут содержать водяной знак библиотеки. Чтобы экспортировать без водяного знака, вам нужна действующая лицензия — результат экспорта будет доступен без водяного знака в течение действительного периода поддержки (12 месяцев для всех PRO-лицензий).

Модули экспорта не входят в пакет Gantt. Модуль экспорта предоставляется бесплатно, если вы получили Gantt по лицензии Commercial, Enterprise или Ultimate, или вы можете купить модуль отдельно. Прочитайте соответствующую статью, чтобы узнать условия использования каждого из них.

Need help?
Got a question about the documentation? Reach out to our technical support team for help and guidance. For custom component solutions, visit the Services page.