Geocortex Workflow 5 celebrated its first birthday in August 2018. As part of growing up, it’s learning some exciting new tricks! Until now, Geocortex Workflow 5 has been available exclusively as a SaaS offering, and workflows authored by administrators are run entirely inside of a browser, typically within Geocortex Viewer for HTML5 or Web AppBuilder for ArcGIS®.
As of now, customers can choose to install Geocortex Workflow 5 on-premises and build workflows that run on the server. We sat down with Drew Millen, Chief Technology Officer for Geocortex, to learn more about what this means for organizations using Geocortex Workflow 5.
Let’s start at the top: What is Geocortex Workflow 5 and how is it currently offered?
Drew Millen [DM]: Geocortex Workflow 5 is the first standalone product in the Geocortex Essentials 5-series: a next-generation suite of products, inspired by Geocortex Essentials 4, that provides unique and powerful capabilities to organizations using Esri’s ArcGIS® software.
You may hear us mention “the 5-series” when referring to our future-generation Geocortex Essentials products, and a “5-series workflow” is a workflow authored using Geocortex Workflow 5.
Geocortex Workflow 5 addresses the ability to easily automate custom business requirements by chaining together pre-built activities, and providing users with simple, guided interactions without programming. Workflows built by administrators can be deployed in Geocortex viewers and within Web AppBuilder for ArcGIS.
Until now, Geocortex Workflow 5 was built exclusively on a JavaScript engine, and it runs in the browser instead of the server. It has also been offered exclusively as a SaaS product – there’s a Workflow Designer that’s hosted online at apps.geocortex.com/workflow where users go to build their workflows – so there’s no infrastructure or maintenance requirements for customers to take advantage of its value.
If Geocortex Workflow 5 has only been offered as a SaaS product until now, how have you supported organizations that can’t use cloud software, or need to run on-premises?
[DM]: It’s true: some organizations simply aren’t ready for cloud software or can’t use SaaS offerings for one reason or another. Typically, this has to do with where sensitive data is stored at rest. With Geocortex Workflow 5, you can be assured that even though you are signing into a cloud-hosted designer application, you can still store your workflows inside your on-premises ArcGIS Enterprise portal, and run them within Geocortex viewers or Web AppBuilder apps that are deployed on internal, on-premises web servers. The only thing that’s really served from the cloud is the Workflow Designer application, which doesn’t store anything on cloud servers, so we haven’t encountered any customers who are unable to access Geocortex Workflow 5 in its current deployment.
OK, so you’re saying that even though Geocortex Workflow 5 is a SaaS product, it can effectively be run on-premises anyway – so why did you decide to release an on-premises edition and what makes it any different?
[DM]: There are some advantages to being able to physically install Geocortex Workflow Designer on-premises, rather than signing into the SaaS edition. For example: when on-premises, you can give the application your own virtual directory name, and thus your own custom URL. You can also deploy multiple instances of Geocortex Workflow 5, which might be useful if you ever had the need to simultaneously run multiple versions (for example).
But the real reason we’ve created an on-premises edition is far more significant. Since Geocortex Workflow 5 was built on JavaScript and targets the browser, there have been limitations on what you can do with workflows. For example, you can’t open a database connection, or write a file to disk in the server’s filesystem from within a browser. These represent important activities that could enable workflows to automate more impactful business processes. We mirrored the JavaScript runtime and built a runtime in Microsoft .NET, which can run workflows in a server context.
The on-premises edition of Geocortex Workflow 5, therefore, includes the .NET runtime and a web service that accepts HTTP requests to run server-side workflows.
What can you do with a server-side workflow?
[DM]: There are a couple of patterns we see emerging. The first is a simple server-side automation task that doesn’t involve an end-user. In this pattern, a workflow running on a server could perform data migration or extraction tasks, nightly QA/QC on data changing throughout the day, or produce meaningful information products (such as .PDF reports) scheduled for delivery into email inboxes in the morning.
The other pattern involves integration with workflows running in a browser. In this case, the workflow starts in the browser using the JavaScript runtime, with a user invoking the workflow in a Geocortex viewer or Web AppBuilder. The JavaScript workflow runtime can prompt the user for inputs using a form – and perform logic in the browser – before sending a request to the server-side web service used to invoke the server-side workflow. There, the server-side workflow can input records into a database or perform a SQL query, send emails to colleagues, or write files to the disk before it returns a response back to the client.
Is there a new Workflow Designer to support server-side workflows?
[DM]: No. Geocortex Workflow Designer supports authors who wish to create client-side workflows and server-side workflows. In the Info panel for any given workflow, the author can choose if they are building a Client Workflow or a Server Workflow. This decision will filter the list of workflow activities to those appropriate for the client or server environment. Also, if the workflow already has an activity in it that is exclusively available in the client or the server, choosing a workflow type that doesn’t support that activity will produce a warning showing the author that the workflow won’t correctly execute. For example, if your workflow has a browser alert activity and you specify that it’s a server workflow, or if your workflow has a SQL activity and you specify that it’s a client workflow, you will see a warning.
Do I need to license the Geocortex Workflow on-premises edition separately from the SaaS edition?
[DM]: Since the SaaS edition of Geocortex Workflow 5 is the only edition that has been available to date, we have entitled all licensees of Geocortex Workflow or Geocortex Essentials to the SaaS edition. With the introduction of the on-premises deployment option, we’re providing access to more capabilities, and we’re being more specific about the entitlement that comes with your license.
More specifically, organizations who have purchased a perpetual license of Geocortex Workflow 5 or Geocortex Essentials (any edition) will be entitled to use Geocortex Workflow 5 on-premises. Organizations who have a subscription license to Geocortex Workflow 5 or Geocortex Essentials (any edition) will be entitled to use Geocortex Workflow 5 on-premises or in the cloud via the SaaS offering.
Note that organizations using the SaaS offering won’t lose any of their workflows if they decide to use the on-premises edition – the workflows are still stored in the same place (either an ArcGIS Enterprise portal or ArcGIS Online).
This sounds exciting. What’s next for Geocortex Workflow 5 now that the on-premises edition has been released?
[DM]: Since the initial release in August of 2017 we’ve had several releases of Geocortex Workflow 5, each of which has introduced compelling new functionality. We plan to keep this cadence up and provide more activities and improvements for authors and end-users.
One of the development projects we’re excited about is the upcoming Geocortex Mobile Viewer 5, which is a framework for building native, mobile, offline mapping apps on iOS, Android and Windows devices. Geocortex Mobile Viewer can run workflows built with Geocortex Workflow 5, and even some of the out-of-the-box features are authored using workflows.
You can also be sure that Geocortex Workflow 5 will be shipping with an activity to integrate with our upcoming Geocortex Printing 5 product, scheduled for release in Q1 2019. It’s really rewarding to see the 5-series products working together and helping organizations build terrific apps!+
Ready to get started with Geocortex Workflow 5? Learn more and sign up for a trial here