This documentation is for Geocortex Workflow 5, a standalone product in the new generation of Geocortex products. Geocortex Workflow 5 addresses similar needs to the existing capabilities offered by Geocortex Essentials Workflow: the ability to easily automate custom business requirements by chaining together pre-built activities, without programming. However, there are significant differences between Workflow 5 and Geocortex Essentials Workflow:
Geocortex Workflow 5 is offered as a standalone product. You do not need any other Geocortex products (like Geocortex Essentials) to use Workflow 5. If you have Geocortex Essentials, you can use Workflow 5 with Essentials and its companion products, the HTML5 Viewer and the Geocortex Mobile App Framework.
Geocortex Workflow is available as a service (SaaS), so there's nothing to install. Alternatively, you can install Geocortex Workflow on premises and use it with your native Portal for ArcGIS installation.
Geocortex Workflow 5 is built on a JavaScript engine instead of a .NET engine. Workflow files are JSON files, not XAML files.
Geocortex Workflow 5 workflows run in the end user's browser, instead of on the server. This eliminates the need for communications between the client and server, so you don't need to concern yourself with serialization or the volume of data being transferred back and forth.
Workflow 5 workflows are capable of running when there is no network connectivity.
In addition to running in Geocortex HTML5 viewers (with or without the Geocortex Mobile App Framework), Workflow 5 workflows run in Web AppBuilder for ArcGIS apps.
Geocortex Workflow 5 supports both 2D and 3D maps and applications.
Geocortex Workflow 5 supports apps with multiple maps.
Geocortex Workflow 5 integrates with ArcGIS Online and Portal for ArcGIS. You need an ArcGIS account to save and share workflows. You can open a workflow item in ArcGIS directly from Geocortex Workflow Designer.
Geocortex Workflow 5 has fewer programming concepts, like arguments, variables, and scope, so there is less specialized knowledge required to design workflows:
Variables: Geocortex Workflow 5 does not have variables. However, any activity with an ID implicitly acts like a variable by providing access to its values through its outputs. If you need to store a value that is not produced by a specific activity, use the Create Value activity or the Evaluate Expression activity.
Arguments: Geocortex Workflow 5 does not have an Arguments area where you define a workflow's inputs and outputs, like Geocortex Essentials Workflow does. In Workflow 5, you use the Get Workflow Inputs and Set Workflow Output activities to get the inputs and set the output. To get inputs for a workflow that runs in the Geocortex Viewer for HTML5, configure the inputs in the command parameter. In Web AppBuilder, specify the inputs when you configure the workflow in the widget.
Expressions: Because Geocortex Workflow 5 is built on JavaScript, expressions in Workflow 5 are JavaScript expressions. See Expressions.
Events: Geocortex Workflow 5 does not have run-time modifications for forms and you cannot use expressions in form elements. Instead, you can add events to form elements. Each event that you add is a workflow within the main workflow—a subworkflow. You build an event the same way you build the main workflow, by dragging activities from the Toolbox to the design surface and connecting the activities into a flowchart. This gives you the full power of Geocortex Workflow within an event subworkflow, so you can perform run-time modifications and more.
Events are associated with form elements. If you want the workflow to do something when a form element loads, use the load
event. If you want the workflow to do something when the user changes the element, use the click
or change
event. If you want to validate the user's input, use the validate
event.
Scope: For the most part, everything in a workflow is globally available, however, there is an exception: The outputs of activities within an event subworkflow are not directly available outside the event subworkflow. However, you can pass values out of an event.
If you have used Geocortex Essentials Workflow, you will notice many changes when you start using Geocortex Workflow 5. Here are some tips to help you make the transition:
Create Feature Sets, Graphics, and Geometries: In Geocortex Essentials Workflow, you could use expressions to create feature sets, graphics, and geometries. In Geocortex Workflow 5, you cannot use expressions to create these objects. Instead, you will use activities to create feature sets, graphics, and geometries.
Get Geometries from the User: Geocortex Workflow 5 does not have a Display Capture Geometry activity. Instead, Workflow 5 has a form element, Geometry Picker, that allows you to get geometries from the user and display them on a map.
Get Map Information: Geocortex Workflow 5 does not have a Get Map Info activity. Instead, you will use the Get Map and Get Map Extent activities. To get map service information, use the Get Layer and Get Layer Property activities.
Populate Auto Complete Boxes and Drop-Down Lists: To populate auto complete boxes and drop-down lists (combo boxes) with values, you can either define the selections manually in the workflow configuration, or, more commonly, create a subworkflow that dynamically gets the values. Workflow Designer gives you the choice of creating the subworkflow from scratch or using an ArcGIS Query template. The template has the activities that you need to perform the query—you simply need to configure the activity inputs, such as the URL of the layer to query and the WHERE clause to use.
Add Hyperlinks to Forms: Instead of a Hyperlink form element, Geocortex Workflow 5 allows you to define hyperlinks in settings that support formatting. If you want to add a hyperlink without any other text, you can add a Text element to the form. For more information, see Add Formatting and Hyperlinks to Forms (Markdown).
Pass Values Out of an Event Subworkflow: You can use Create Value or Evaluate Expression activities to pass values out of an event subworkflow. Put one Create Value (or Evaluate Expression) activity outside the event's Display Form activity and another Create Value activity inside the event. Use the inside activity to assign the values to the outside activity. For example, set the expression
input of the Create Value activity in the event to =$outside.result = $inside.result
.
Use Loops: Geocortex Workflow 5 has a Loop activity that you can use to perform While and Do While loops, and a For Each activity.
Access Server Resources: Geocortex Workflow 5 is designed to run primarily in the end user's browser. To access server-side resources, you create a server workflow and run it from a client workflow using the Run Workflow activity. Server workflows allow you to do tasks that you cannot do on the client, like querying external databases, managing files on the server, and sending email.
Create Offline-Capable Workflows: Some activities require network connectivity. If you want a workflow to be able to run when there is no network connectivity, make sure the activities in the workflow are capable of running offline. For more information, see Offline Support for Activities.
Some Workflow 5 activities have the same name and function as Geocortex Essentials Workflow activities, but differ in subtle ways. It is worth reading the documentation for an activity before using it for the first time. To open the documentation for an activity, hover the pointer over the activity in the Toolbox and click the More... hyperlink.