Project Management using Golang, Cloud REST API for MS Project, Primavera P6 files

Project Management preview

This blog covers following topics

Go language

Go is a really simple language to understand as it allows new programmers to pick up the language quickly, and also allows seasoned veterans to quickly understand someone else’s code. Along with Ease of deployment, strong concurrency, one of Go lang’s biggest advantages is clarity and ease-of-use that other languages lack. It focuses on Go’s fast. Therefore, if you’re coming from an interpreted language like PHP, Python, or Ruby, it’s almost night-and-day. Owing to all these benefits, it’s getting very popular among programmers. Furthermore, instead of requiring Go to be installed on foreign machines, you can easily cross-compile your original source code to run on multiple machines.

Project Management applications

Now coming towards project management, it’s one of the essential jobs these days, and among various project management applications, MS Project and Oracle Primavera P6 Enterprise Project Portfolio Management are the popular products. However, in order to create as well as manipulate project management files, we need to install the respective application. Furthermore, you also need to pay a hefty amount for a license subscription and it gets cumbersome when you need to perform a quick small operation and the installation and activation process consumes more time than the actual activity. So a quick and viable solution is to opt for a programming API. Nevertheless, a more suitable solution is to consume REST based cloud API where you do not need to install any particular software but a simple cURL command over a command prompt can fulfill your requirements.

Aspose.Tasks Cloud

After careful consideration of the above scenarios, Aspose.Tasks Cloud is found to be an amazing choice as it provides the capabilities to create, manipulate, and transform MS Project and Primavera files to various supported formats using REST APIs. No software download or installation required for MS Office or Oracle Primavera. All you need to do is subscribe over dashboard.aspose.cloud, get your personalized Client Id and Client Secret keys and start working with your project management documents.

Aspose.Tasks Cloud SDK for Go

Now consider a scenario, where you need to programmatically process Project files and your preferred language is Go (due to its wonderful features as mentioned above), so in order to effectively fulfill these requirements, we have specifically created an SDK for Go language. The Aspose.Tasks Cloud SDK for Go provides all the features offered by Aspose.Tasks Cloud and becomes convenient when you need to process MS Project(MPP, MPT, MPX) and Oracle primavera (XML, XER) files. Some of the exciting features offered by this SDK are

  • Add, modify, remove project tasks
  • Move project task from one parent task to another
  • Change the position of project task under a parent task
  • Import project from Primavera DB formats
  • Allocate Assignments to a project
  • Manage project’s Work Breakdown Structure (WBS)
  • Perform risk analysis
  • Handle task links & task assignments.
  • Delete a project task with all its references and rebuild the task tree

Project Conversion to Other formats

The SDK provides flawless and robust rendering of Project files to other supported file formats including PDF, XPS, XLSX, CSV, TXT, HTML, PNG, JPEG, SVG, TIFF, BMP, SpreadsheetML, XER, P6XML, MPX, and Gdhtml. The best part is that a single method GetTaskDocumentWithFormat provides all these conversion capabilities.

The following example shows steps on how to perform .mpp conversion to PDF format.

cURL

curl -X GET "https://api.aspose.cloud/v3.0/tasks/CalendarWorkWeeks.mpp/format?format=pdf&returnAsZipArchive=false" \
-H "accept: multipart/form-data" \
-H "authorization: Bearer <JWT Token>"

You may consider visiting the following link for further information on How to get JWT access token?

Request URL

https://api.aspose.cloud/v3.0/tasks/CalendarWorkWeeks.mpp/format?format=pdf&returnAsZipArchive=false

The resource files used in above example can be downloaded from

Loading project files

In order to manipulate the files, the source file can be loaded using either of the following methods

  • GetTaskDocument – Get project document already available on cloud storage
  • PutImportProjectFromFile – Imports project from primavera DB formats (Primavera SQLite .db or Primavera XML) and saves it to specified file with the specified format
  • PutImportProjectFromDb – Imports project from the database with the specified connection string and saves it to specified file with the specified format
  • PutImportProjectFromProjectOnline – Imports project from Project Online and saves it to a specified file

Apart from the feature details mentioned above, there is a huge list of features supported by Aspose.Tasks Cloud SDK for Go. You may even consider downloading source code and modify it as per your requirements. The installation is just a one line operation

go get -v github.com/aspose-tasks-cloud/aspose-tasks-cloud-go/api

Please start exploring the amazing features offered by SDK either programmatically using Golang, or use swagger based API interface for quick testing. In order to a quick start with SDK, you may even try using sample code snippets shared over this link.

Feel free to explore the Developer’s Guide and in case of any technical query, please post the query in Aspose.Tasks support forum.

Pricing

Unlike conventional licensing mechanisms of products, pricing is also our salient feature. When using our Cloud APIs, you process as many files as you want and after one month, we will calculate the total number of credits used and bill you according to our flexible rates (discounted rates on large volumes). For further details, please visit Pricing.