GanttProject API or SDK

I am automating a real estate trade process. It is a surprising complex process. I’m using Salesforce to implement the process. Salesforce doesn’t have a good reporting process. I need an automated way to extract the data from Salesforce and populate GantProject. I would then automatically create a report and email it. I would update the GanttProject weekly and send a new report. At any time there are between 3 - 20 active trades with different clients. I want it running on a Linux server. Since it is written in Java a Java API would be great. Does one exist?

I could use MS Project and VBA but MS Project won’t run on a server, not even IIS.

There is no fixed and supported API. However for the described purpose it might suffice to write CSV file and import it into GanttProject. You can find the expected structure of CSV by exporting a sample project to CSV.

I thought of that but it doesn’t solve the automated reporting. I would have thought to do automated testing of the code they would have created an API. This way they could test the core functionality without the GUI. This capability would be a great addition to the product.

We do have unit tests and naturally they use public classes and methods but those classes and methods can’t be called API because they are not documented and most important they are not guaranteed to remain intact across the versions. If you can live with that then go ahead, checkout the repository and have a look at the tests jn ganttproject-tester module.

Thanks for responding. I have worked on some Java projects albeit many years ago. I have also worked on an API. To put together anything reasonable I would have to have an in-depth understanding of GanttProject which I don’t have. I’ll look at some other solutions for my reporting needs. Maybe Excel reports using EPPlus on .Net Core.

Perhaps a different approach. GP files can load / save xml. Do you have an xsd available for the latest version of the application output?

No, there is no XSD, sorry. We’re working on a small Java/Kotlin library which provides typed interface to GanttProject XML data. It may be published relatively soon.

1 Like