Showing 8 result(s) for tag: geocortex workflow

Technology Q&A: The evolution of Geocortex and Web AppBuilder for ArcGIS

If you’ve been following our blog, social channels, or have chatted with us in recent months, you’ve probably heard us talk a lot about our Geocortex Essentials 5-Series. Geocortex Workflow 5 was the first product in the series, and for the first time, Geocortex was able to be used inside (not just alongside) Esri applications.

This represents a major shift in Geocortex technology, with a commitment to continuing to offer products that can be used by a broader Esri audience. We sat down with Drew Millen, Director of Products at Latitude Geographics, to learn more about the Geocortex Essentials 5-Series, and what it means for Geocortex and Esri customers.

 

Latitude released Geocortex Workflow 5 in 2017. Can you tell us a little bit about this product?

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 popular capabilities in Geocortex Essentials 4. Workflows help organizations turn even the most sophisticated business processes into a set of simple, guided end-user interactions.

Not only does Geocortex Workflow 5 transform how organizations approach process automation inside their GIS, it helps organizations avoid re-writing applications for new versions of Esri technology. We worry about compatibility with upcoming versions, so you can stay focused on what you need to get done.

As you alluded to, a major evolution in Geocortex Workflow 5 when compared to previous Geocortex products is that organizations can choose to deploy workflows in multiple viewer frameworks. Workflows can be deployed to both your Geocortex and Web AppBuilder for ArcGIS® applications.

What’s been the reaction from customers so far?

[DM]: It’s been great! Since our beta launch in August 2017, we’ve seen nearly 1,500 unique users sign into the Geocortex Workflow Designer, which represents nearly as many unique organizations. More than 25% of those users have been power users, logging in more than 10 times. These are great signs for a product that’s still in its infancy - we can’t wait to see the workflows they’re building!

We recently conducted a survey of Geocortex Workflow 5 users and found that most are using the product to simplify the user interface in their applications. This is achieved by providing step-by-step interactions to your end-users, instead of presenting them with complex interfaces containing unnecessary tools.

It’s also great to see that customers are deploying workflows in Geocortex and Web AppBuilder for ArcGIS apps.

Can you tell us about the decision to offer products that can be run inside Esri applications?

[DM]: Over time, the Geocortex brand has become largely associated with our viewer technology, and for good reason: we offer world class viewers that leverage the latest Esri technology. But our customers know that Geocortex also provides a rich array of capabilities that add power and functionality to those viewers.

While Geocortex viewers are ideal for many applications (especially those that require sophisticated functionality or need to be maintained for a long duration), we recognize that Web AppBuilder for ArcGIS is a popular, lightweight framework that’s ideal for many types of applications.

Our guiding principle has always been about enabling organizations to get even more out of their ArcGIS investment, and by providing powerful capabilities that extend Web AppBuilder we’re able to do that for more customers and more application types.

We saw an excellent opportunity to provide the powerful functionality Geocortex customers know and love to the broader Esri community, without requiring the substantial investment required to adopt a new viewer framework.

What does Geocortex Workflow 5 allow Web AppBuilder for ArcGIS users to do?

[DM]: Geocortex Workflow 5 is focused on helping organizations improve efficiency and end-user success. Our experience shows that when organizations reach the limits of Web AppBuilder for ArcGIS, they typically start building custom widgets.

With Geocortex Workflow 5, instead of writing code to build widgets that satisfy complex application requirements, you can choose from 175 pre-built activities that chain together to automate virtually any task. The library of pre-built activities even includes specific activities for working with Web AppBuilder for ArcGIS, such as activating and passing data between widgets, and working with Arcade, map layers, and other elements of your apps.

Geocortex Workflow 5 also offers dynamic forms that allow you to deliver a better experience for the users of your applications. Forms don’t just capture user inputs; often certain elements must hide or appear based on user interactions. Cascading dropdowns and an advanced event-based system make it easy to deliver forms that engage your users with extraordinary flexibility.

If I’m a Web AppBuilder user, why would I choose Geocortex Workflow 5 instead of building my own custom widgets?

[DM]: One way to think about Geocortex Workflow 5 is as a “widget builder”. It provides GIS administrators a way to build widgets without any programming, and without deploying code onto the server. Workflows make it simple to rapidly prototype, iterate, and test functionality in your Web AppBuilder for ArcGIS applications.

One of the benefits our customers enjoy with Geocortex Workflow 5 is that once a workflow is authored, it becomes a self-documenting, visual representation of the task or business process being automated. This makes it easy for others to understand and work with your workflows.

A key consideration when we were building Geocortex Workflow 5 was ensuring it would help customers “future-proof” their applications. More specifically, we built Geocortex Workflow 5 to work with both of Esri’s existing JavaScript APIs (ArcGIS API for JavaScript 3.x and 4.x). So, when Web AppBuilder is released using the 4.x API, custom widgets will need to be re-written, but workflows will continue to function seamlessly.

Ultimately, when you compare building workflows to developing custom widgets and functionality, it’s about saving time and resources. Organizations that leverage workflows to deliver custom functionality save a ton of time during development and ongoing application maintenance.

Does Latitude have plans to offer more products for Web AppBuilder for ArcGIS users? What’s next from Geocortex?

[DM]: Yes, we have big plans - Geocortex Workflow 5 is just the first link in the chain. In July 2018, we’ll release Geocortex Reporting 5, which enables Geocortex and Web AppBuilder for ArcGIS users to design and deploy production-ready, printable reports inside their applications. It simplifies the often-manual process of gathering, organizing, and sharing important GIS data in reports.

Application administrators can add the Geocortex Reporting 5 widget to apps built with Web AppBuilder for ArcGIS and allow their users to generate reports from ready-made templates they’ve designed in the web-based report designer.

In our experience, reports that organizations need come in all shapes and sizes – from basic mailing label reports to inspection compliance reports for governing bodies like FEMA – and they can range substantially in terms of complexity. It’s typically difficult to design reports for every need in an organization, expose them inside your apps, and allow them to be populated with data dynamically. Geocortex Reporting 5 makes this task incredibly easy.

We’ll also be unveiling Geocortex Printing 5 in early 2019, which offers a high-quality, easy-to-design map printing solution for Web AppBuilder for ArcGIS. The focus will be on enabling large format, high-resolution -- and overall great-looking -- print outputs.

Geocortex Essentials customers have benefitted from these capabilities for years, and we’re excited for Web AppBuilder for ArcGIS users to discover their power. To make things easy, we’re introducing an edition of Geocortex Essentials specifically for Web AppBuilder for ArcGIS that will allow organizations to purchase Geocortex Workflow 5, Geocortex Reporting 5, and Geocortex Printing 5 under one affordable license.

Do you envision offering Geocortex products that run in other ArcGIS products, such as ArcGIS Pro?

[DM]: One day. Our current focus is on building great products for Geocortex viewers and Web AppBuilder for ArcGIS, but at the same time we’re engineering the underlying APIs to be portable for use in environments like ArcGIS Pro in the future.

We’re currently exploring the types of markets and customers that would benefit from these capabilities in other ArcGIS apps.

What does the introduction of capability-based, 5-series products mean for Geocortex Essentials customers in the near future?

[DM]: We believe It means great things for existing Geocortex Essentials customers. First, we’re committed to continuing our investment in existing Geocortex Essentials components, such as Geocortex Essentials 4.x and Geocortex Viewer for HTML5.

Second, customers of Geocortex Essentials will be entitled to use Geocortex Workflow 5, Geocortex Reporting 5, and Geocortex Printing 5 in their Geocortex Viewer for HTML5 apps. They’ll also receive an entitlement to our new Geocortex Web Viewer, which will be released later this year and is built from the ground up on top of the ArcGIS API for JavaScript 4.x, enabling extremely fast, light-weight apps and 3D scene viewing capabilities.

These “entitlements” mean that Geocortex Essentials effectively becomes a collection of the standalone capabilities, and organizations can license the collection based on how they plan to use it: in Geocortex viewers, in Web AppBuilder for ArcGIS, or in both.

Before we finish up, where can people go to learn more?

[DM]: There’s a ton of places you can go. A good starting point is geocortex.com, where you’ll find details about all of our products, solutions, services, and customers.

Beyond that, our blog is always being updated with relevant information, our YouTube channel is continually showcasing new Tech Tip videos and webinars, and we attend lots of events around the world that can be found on our events page.


Getting started with forms in Geocortex Workflow 5 [Geocortex Tech Tip]

You hear us talk a lot about the importance of keeping your end-users in mind when developing GIS tools and applications; we built Geocortex Workflow 5 to help you improve user experience by allowing you to guide end-users through complex business processes in simple, intuitive ways, which is largely achieved through forms for capturing user inputs.

The improved forms offered with Geocortex Workflow 5 go beyond just simple text inputs; you can present users with checkboxes, dropdown menus, and geometry and file pickers. In this Geocortex Tech Tip, Ryan shows you how to get started and build your first form for deployment inside Geocortex or Web AppBuilder for ArcGIS.

Watch on YouTube

 

Video Transcript

“Hi, I’m Ryan, and I’m a Product Manager at Latitude. Today I’m going to show you how to get started and build your first form with Geocortex Workflow 5. Let’s get started.

One of the main uses of [Geocortex] Workflow is to create an experience that guides the end-user through some sort of business process. Typically, what that means is that we are presenting forms to the user so that we can capture inputs from them, then pass on to the rest of our workflow, which actually executes the business logic based on the data the user provided. So, an indispensable tool in [Geocortex] Workflow is the “display form” activity, available here in the tool box.

To get started, just drag [the “display form” activity] onto the design area and connect it to the flow chart. Now we have a workflow that contains one “display form” activity. If I double click that activity, it opens the form designer experience. We can see here that I have a header that contains my title, and a footer that’s got some buttons in it for “submit” and “cancel”. So that’s what we have by default.

I can change the title of the form if I want to "My form". And if I wanted to, I could change the buttons around to “back” and “next” instead of “submit” and “cancel” or add and remove buttons as needed.

And then we’ve got a selection of form inputs that we can choose from, depending on what type of information we need to capture. So, just starting with something simple, a textbox, we can drag that onto the [design area]. And let’s say that we wanted to create an address entry form. I can change that textbox’s title to just be “address”. And if I want a little description underneath that, I could put something like “enter an address” in there and it shows up.

There’s even some cool things that we can support, like markdown, to make it have some improved formatting. If I wanted bold or italics, or things like that, that’s available. And I can supply a value.

Okay, so that’s sort of a basic input that we’ve fleshed out. There’s also all kinds of other things that we can add. If I wanted radio groups or check box groups, dropdown lists, all sorts of things are possible in here. And even things like a geometry picker is going to allow the end-user to draw a shape or multiple shapes on the map. File pickers can [also be used to] capture pictures from phones and things like that. All these different items are available in here.

So now what we do is, I’m going to hit “Ctrl+S” to save this and am going to demonstrate this form running in our sandbox application. So, we can see this workflow running with various Esri APIs - in this case just a 2D map. Here’s the form showing up, as it was designed. There’s my text input, I’ve got radio buttons that we didn’t bother to configure, I’ve got a geometry picker that’s going to allow me to draw a shape on the map. All that information is available just from that, the simple clicks that set-up that form.

And the last thing I’ll show here is a couple real applications. This is just a sandbox for testing, but if we were to look at WebApp Builder [for ArcGIS], I can connect to a widget that’s going to run that workflow.

Here’s that exact same form running from the workflow I just edited, available here. That’s a 2D Web AppBuilder for ArcGIS application, and then here’s a 3D one that runs a completely different viewer and a completely different layout that’s being used, but it runs just the same, so we can get our forms rendered and we can start capturing input.

That [should be] enough to get you started. Stay tuned for future [Tech Tips] where we look at how we can get this data out of the form and pass it on to our workflow process.”


Using Geocortex Workflow with Web AppBuilder for ArcGIS [Geocortex Tech Tip]

Last year’s release of Geocortex Workflow 5 (the first product in our Geocortex Essentials 5-series) introduced the ability to leverage Geocortex functionality inside Esri applications, not just alongside them. This was a major milestone and presents a new realm of implementation possibilities for licensees of Geocortex Essentials 5-series technology.

Geocortex Workflow 5 allows you to deploy your workflows in Web AppBuilder for ArcGIS applications. In this week’s Geocortex Tech Tip, Ryan Cooney takes you through the set-up and configuration required to deploy 5-series workflows in Web AppBuilder for ArcGIS Developer Edition.

Watch on YouTube

 


Video Transcription

“Hi, I’m Ryan. I’m a Product Manager at Latitude. Today I’m going to show you how to use Web AppBuilder [for ArcGIS] to run Geocortex Workflow 5. Let’s take a look.

Web AppBuilder [for ArcGIS] uses widgets to deliver custom functionality to your end-users. To get a workflow running in Web AppBuilder, we need a widget that’s going to run the workflow. Geocortex Workflow ships with some widgets, but to run a workflow, we’re going to have to make those widgets available to Web AppBuilder.

To do that, we’re [going to start] in Geocortex Workflow Designer. On the “info” tab, there’s a deployment section that has a link to download workflow widgets for Web AppBuilder, so I’m going to click that.

That’s going to download a .zip file, which we’re going to use in a second. And while we’re here, this page has a link to configure Web AppBuilder for ArcGIS to run a workflow. As we open that link, we’re taken to the [Geocortex] Documentation Center where we have complete instructions on how to set up the widget.

There’s actually two flavors of this set up. Today were going to look at Web AppBuilder [for ArcGIS] Developer Edition. It’s the slightly more complicated of the two, but we can also work with the edition of Web AppBuilder that’s built into Portal for ArcGIS. There’s slightly different steps that were going to take, but basically, it’s going to be the same process in which we tell Web AppBuilder where the workflow widget lives.

Once we’ve done that, we can use Web AppBuilder for ArcGIS to see that widget and configure it to run a particular workflow. So, these instructions are [in the Documentation Center] and I recommend reading them, but I’m just going to show you how it’s done.

First, I’ve downloaded that .zip file and I open it up (it’s just sitting here in my downloads). And then I need to go to where Web AppBuilder is running. So, in this case I’m just running Web AppBuilder out of this folder, and inside the Web AppBuilder folder structure, there’s a client folder, and in there is the stem app and the stem app 3D.

Inside of the stem app there’s a “widgets” folder, and this is where all the built-in and custom widgets live. What we need to do is just copy out of the downloaded one, so it’s got the same structure - it’s got a stem app, it’s got widgets, and there’s two widgets in 2D and two widgets in 3D. So basically, what we do is copy that entire client folder over top, and that’s just going deploy both the 2D and 3D widgets. And now we can go over into Web AppBuilder and start configuring these.

I have Web AppBuilder open right here, and I’ve got an existing application that’s basically empty. Web AppBuilder (if you’re not familiar with it) has all these spots where you can plug widgets in. Depending on the layout, it might be these buttons, or it could be in the tool bar.

But if we select widgets, and I hover over our widget place one, you can see that it’s highlighting it on the screen. And if I pick widget one, we have those two workflow widgets [that I copied over a moment ago]. The first one is just the in-panel widget, that’s your most common. And then we also have one that will run in a modal window, but they basically do the same thing. So, I’m going to choose the in-panel one.

Now, I’ve added that widget and what I need to do is tell this widget to run a particular workflow. So, that workflow that I was working with over here, which is called “autocomplete1”, it was really simple. It just had a form that had an autocomplete in it. I can look in my content and find it, or I can search for other workflows, but here it is right here. If the workflow happened to have input parameters (this one doesn’t) you could add them here. This was just a list of key value pairs, but I don’t need those in this case.

And there, it’s added that workflow. And if I run it, here’s my autocomplete. It’s not hooked up to anything, but that’s the workflow running inside Web AppBuilder. This will work for 2D and 3D. This is the Developer Edition we’re looking at, but also if you had followed the instructions on deploying to Portal for ArcGIS, you can get that too, it’ll work just as well in portal for ArcGIS’s version of Web AppBuilder. That’s all you need to do to get up and running running inside of Web AppBuilder for ArcGIS.

Want to take Geocortex Workflow 5 for a spin? Visit the Discovery Center today to learn more and get a feel for the product!

Go to the Discovery Center


Running Geocortex Essentials workflows from an identify operation [Geocortex Tech Tip]

The Geocortex Essentials identify operation allows you to draw a geometry on the map, and have the application return a collection of features that intersect that geometry. But the identify operation will only return results from your GIS layers, and many (likely most) of us integrate our GIS with various 3rd party business systems, such as asset management, document management, ERP, and business intelligence.

In this week’s Tech Tip, Drew Millen will show you how to invoke a Geocortex Essentials workflow from an identify operation to return non-GIS results. Perhaps you want to see documents in your document management system displayed on the map, or geo-located tweets for a specific area. Kicking off a workflow from the identify operation will allow you to display these types of results and will help you avoid writing a ton of custom code to do so.

Watch on YouTube

Video Transcription

“Hi, I’m Drew Millen, Director of Products at Latitude. In this short Tech Tip video, we’re going to talk about workflows; specifically how you can make Geocortex Essentials workflows run in Geocortex Viewer for HTML5 when you perform an identify operation. Let’s dive in.

I’m going to show you how to use identify workflows, which are Geocortex Essentials workflows that piggyback on top of the identify functionality. In this site, I’ve got the default identify behavior working, so when I perform an identify [operation], I’m going to find cities on top of this map, and I want to run a workflow every time I perform an identify as well.

Let’s look at the configuration file that supplies the configurations for this viewer. There’s a module in here called “identify”, and we want to configure the identify behavior. This [view you’re seeing] is the desktop.json.js file that configures the viewer we were just looking at. Notice that the identify module has a section called “identify providers”. It’s here that we specify which logic will run when an identify is performed by a user: for example, querying a graphics layer, or querying the map itself. And down here, I’ve added a workflow identify provider. I’ve also supplied some configuration to this identify provider, so it’s looking for workflows in my site with the suffix “_identify”. Any workflow I’ve added with this suffix will be run by this workflow identify provider.

With that in place, let’s author our workflow. I’m going to open the Geocortex Essentials Workflow Designer. If you go into the “file” menu and click on “new”, you’ll see that we’ve provided a template for creating identify workflows. This template supplies a basic example to help you get started. If you look at the arguments, an identify workflow is expecting a geometry as an input argument. That geometry comes from the identify the user performs. It’s also expecting a unique identifier just for some bookkeeping. We can just ignore that property.

The other properties are output arguments - things that your workflow must supply. For example, the feature set that’s returned from your query, the display name for that collection of features, and any aliases and formats that you want to use for the features that come back. In this example, we simply query a sample layer from ArcGIS Online that looks at [US] states. The geometry from the identify operation is passed in as a parameter to perform that identify. We set the display name to be "states” and we supply some aliases for the fields that are going to come back, making it readable for the user. And we supply some format strings for features that are going to be displayed in the map tips and results list.

With this workflow developed, we [now need to] attach it to our site so that it can be run every time we perform an identify operation. Let’s look at this app in Geocortex Essentials Manager, and I’ll navigate down to the workflows tab where I want to attach this workflow that we were just looking at. Recall that it must have an “_identify” suffix to be picked up by my workflow identify provider. I’ll give it the name “helloworld_identfiy”. Now it’s looking for the URL or URI of the workflow I just authored. So, I’m going to browse for that, and I’m going to go into the directory that we have for this site. I’ll upload it into a folder I created called “resources”. It’s now stored on my workstation as “helloworld_identfy.xaml”. I’m going to go ahead and upload it to that directory and select it.

Now Geocortex Essentials Manager is smart enough to know that this workflow has parameters, so I’m being prompted to supply them here. Because the geometry and unique identifier are going to be supplied by the identify operation, we don’t need to supply them here.

The workflow is now attached to my site, so I’ll go ahead and save it. Let’s refresh the viewer and see the resulting behavior. I’m going to run an identify again, which will identify the cities, but it should also run my workflow and grab the states. Here we can see the result of my states workflow populating the list of results that I expected.

To view a more sophisticated example, we’ve also done the same thing by integrating a workflow that uses the Twitter API to find tweets within a geographic area. In this case, I’m going to perform an identify at the San Francisco airport and discover all the tweets that have been added in this area in the last hour. This is a more sophisticated example of using an identify workflow in a Geocortex Viewer for HTML5 application. To learn more, please get in touch. Thanks for watching!”

Want to learn more about Geocortex Essentials? Visit our Discovery Center to take it for a spin and explore real-world examples of how Geocortex Essentials helps organizations address common (and not-so-common) business challenges.

Visit the Discovery Center

 


GIS is shifting to SaaS, and it’s a win for everyone

Last year we released Geocortex Workflow 5 and – for the first time – we delivered a Geocortex product as software-as-a-service (SaaS). This is the direction Esri has been moving with ArcGIS Online, and has been the industry standard for most business software applications since the early 2000s: GIS arrived a little later to the game.

 

For those who aren’t familiar, SaaS is a way of delivering centrally-hosted software via the Internet – instead of downloading and configuring a piece of software in your environment, you access the application in a web browser.

One of the key benefits of SaaS is the concept of continuous deployment. Because applications are centrally hosted by the provider, new software updates can be pushed to customers with a much higher frequency.

Future-proofing your investment in Esri technology has always been at the forefront of our product direction, and this is an inherent protection that comes with SaaS delivery.

Seamless Upgrades

Since our beta release of Geocortex Workflow 5 last August we’ve built and deployed 11 successive releases – each containing exciting new features and adding improvements – and without interruptions to our users. Customers didn’t require compatibility testing, or incur any downtime to upgrade their applications. In fact, most probably didn’t notice: they simply logged in to do their work and were running the most current version of the software.

Many of us have experienced the pain of needing dedicated GIS- or IT professional assistance to complete an upgrade. It can take the better part of a workday, and involves significant planning and testing to ensure everything works as it did before (and even then, it sometimes doesn’t).

Due to the resources required to keep large, on-premises software deployments current, many organizations avoid upgrades, only to find themselves in a sticky situation a few years down the road when they’re finally forced to do so. This is never a good situation to be in, and the ease of upgrades with SaaS helps organizations limit the technical debt that comes with delays.

Rapid deployment of new features

We all love new features; with lots of traditional solutions, however, we can end up waiting months for new features that need to be scheduled into a long release cycle. SaaS, in comparison, allows new features to be built and deployed at a rapid pace. In some cases, new features can be delivered within a matter of days.

There is no better example of this than our 2017 Geocortex Business Partner Summit, an annual event where we bring all our international partners to our Victoria Head Office for three days of learning and collaboration. We dedicated the first day to a Geocortex Workflow Hackathon, where our partners teamed up to build the best workflows they could.

Geocortex Hackathon WinnersOur partners built some really cools apps, and provided a bunch of great feedback to our Product team about their experiences with Geocortex Workflow 5. By the last day of the Summit (roughly 48 hours later), our Product Manager was able to show them some of the feedback that the team had already implemented in the product.

Applications that are always secure

As noted above, organizations are often saddled with technical debt from not upgrading once new versions become available. Not only can this result in more work when you’re finally forced to upgrade, it can expose your applications to security vulnerabilities.

Many of our customers use their GIS for mission-critical business applications, which makes security even more critical.

The rate at which new releases are pushed to production assures that your applications are always secure. Instead of waiting to upgrade to new versions, every time you log in you know you’ll be working with the latest version of the software that’s been tested to ensure the strongest security measures are in place.

This is the approach most SaaS providers have adopted. For example, your Google Chrome browser has likely updated every week without you noticing. Google takes security very seriously, and pushing consistent updates lets them assure that their users are always running the most secure version of the browser.

Lower cost, better uptime

SaaS applications are centrally hosted, and this ensures that your applications are always hosted in an optimal environment. When customers host their own applications, there are inconsistencies in the configuration of the hosting environments, and they may not be hosted for the best performance.  

For Geocortex Workflow, we use world-class hosting services from Microsoft Azure. If anything goes wrong with the hardware in the hosting environment, teams of Microsoft engineers are standing by to fix the issue. And if something goes wrong with the software, we have a team ready to investigate and fix the issue, which can typically be achieved by pushing a new release or software patch.

The cost of hosting your applications is included in the cost you pay for the product. The hosting environment is scalable and includes protections such as failover, which are both difficult and expensive to achieve in your own environment. You don’t need your IT department to worry about managing your servers - we take care of all the hosting and associated maintenance. It’s a win-win: you free up your people for more important work, and you get a hosting environment that’s set-up in the best possible way for the product.

Moving forward

It’s easy to see why SaaS offerings are becoming the standard for business software solutions. Being able to offload a bulk of the costs associated with hosting your own applications can save you (and has saved many organizations) thousands of IT hours and dollars each year. The lower initial cost and the rapid delivery of new, powerful features are why we think SaaS is the direction more and more GIS tools will move towards.

"It’s a win-win: you free up your people for more important work, and you get a hosting environment that’s set-up in the best possible way for the product."

We’ll still be offering on-premises solutions for situations where it makes the most sense, but SaaS is where we’re headed. This is the model Esri has adopted with ArcGIS Online, and is sure to be the model for future ArcGIS products.

If you’d like to chat about what adopting a SaaS-first approach would look like for your organization, please feel free to get in touch with us. You can also get your hands on Geocortex Workflow 5 in our Discovery Center, complete with tutorials, demonstrations, and sample applications you can try.

Visit the Geocortex Workflow Discovery Center 


Build custom activities with the new SDK for Geocortex Workflow 5

It’s now been a few months since we officially launched Geocortex Workflow 5, and it’s great to see our users building some innovative apps with Geocortex and Web AppBuilder for ArcGIS®!

One thing that we’ve been hearing, though, is that developers want the ability to apply their own code in the workflows they’re building.

As of version 5.2 (released a few weeks ago), Geocortex Workflow 5 now offers a software development kit (SDK) for building custom workflow activities. The SDK is TypeScript-based, allowing you to write your own custom code to run in workflows, with your builds producing the JavaScript required to execute the activities at runtime.

So, what are “activities”? In the simplest terms, they’re the building blocks of a workflow - each activity represents a unit of work. Geocortex Workflow 5 offers more than 150 pre-built activities that chain together to automate almost any task. Activities such as geocode, query layer, set the map extent, get user info, calculate distance, buffer geometry, run geoprocessing, and so many more allow you to streamline even the most complex GIS and business tasks.

Flex your development chops and write activities to perform tasks that weren’t previously possible – or were extremely complex to assemble with pre-built activities. You can combine your programming skills with Geocortex Workflow’s intuitive, activity-based design to build powerful applications.

Custom activities can be built for yourself, or for others in your organization; even non-developers can work with activities as they would any others in Geocortex Workflow Designer. And granted that your technology of choice supports the functionality you’re building, custom activities can be consumed in Geocortex and/or Web AppBuilder for ArcGIS applications.

Take Geocortex Workflow 5 even further

While most tasks can be automated with the pre-built, out-of-the-box (OOTB) activities offered with Geocortex Workflow 5, you can now build anything you want with the SDK. Custom integrations, talking to custom web services, connecting with 3rd party APIs, and interfacing with custom code in your existing apps are now all possible.

Here are a few examples of what you can do with custom activities:

  • Perhaps you want to integrate with a 3rd party system like SAP®. While this is possible with pre-built activities, you’ll be manually assembling workflow logic to make the web requests, parse the responses, and execute your business logic. With the latest updates, you can achieve a result that’s more clean, efficient, and consumable by wrapping the logic in a few simple custom activities.
  • Many common tasks are time-consuming to build – maybe you find yourself using the same pattern over and over in one workflow. Instead of following this repetitive pattern, you can bundle all the logic within a single custom activity. An example might be sorting map features by multiple columns. Pre-built activities are available that will sort data by one column, but it’s more efficient to write a custom activity to sort by multiple columns than it is to link activity after activity – especially if you need to perform these tasks across multiple applications and workflows.
  • At the more complex end of the spectrum, you can build custom user interfaces using React (a leading JavaScript library for building user interfaces). This is the most challenging to achieve, but if you’re up for the challenge, it provides complete flexibility. If you’re thinking of doing this, we recommend chatting with us beforehand - we want to help make sure you’re on the right path.

Set a standard

Unless your organization follows strict guidelines for building custom apps and widgets, there is always the risk that developers will use different patterns and approaches to develop custom code. This makes it difficult for others to maintain or update the code; it can be a bit like the wild west.

This can be mitigated with Geocortex Workflow 5’s custom activities. All activities have the same, simple signature of inputs, outputs, and an execute method. Following the activity-based pattern ensures you have a standard practice for building custom logic.

With activities, you are implementing a unit of work rather than a large, rigid solution. This promotes reusability and your code will be easier to write, interpret, test, and maintain. Any developer will be able to pick up your custom activities and understand how to work with them.

You can also control how custom activities are presented to other users in the browser-based Geocortex Workflow Designer. They can be configured to look like the existing OOTB activities, helping ensure a consistent pattern across your apps.

Custom activities in Web AppBuilder for ArcGIS®

At Latitude Geographics, we’ve always built complementary technology to help our customers accomplish even more with Esri’s ArcGIS platform. With Geocortex Workflow 5, we’ve taken this to a new level by allowing you to build workflows that run inside Web AppBuilder for ArcGIS.

If you’re using Web AppBuilder for ArcGIS, creating custom activities with Geocortex Workflow 5 is still the preferred alternative to writing a bunch of custom widgets. Initial deployment will require a similar amount of effort, but ongoing maintenance and modifications of custom activities require significantly less time (and pain!).

If you write a custom widget for Web AppBuilder for ArcGIS and want to deploy it to multiple apps, you need to edit the source code in all the applications using that widget each time a modification is required. With Geocortex Workflow 5, the custom code is packaged in an activity, and you only need to modify the source activity for changes to be applied across all your applications.

Learn more about deploying workflows inside Web AppBuilder for ArcGIS in the Geocortex Workflow Discovery Center.

Start building today

You can access the SDK in our Documentation Center. Just look for the .zip file that contains all the necessary instructions you need to get started.

Let us know how it goes

As you get going with the new SDK, we want to hear your feedback. If you have questions, comments, or concerns, please get in touch with us to let us know.

We’d also love it if you share what you’re building with us and other users in the Geocortex Workflow Community. This is a great place to connect with other users - everyone benefits from sharing tips, tricks, and sample workflows.

Happy building!

 


When is it time to break up with a business process?

Far too often, organizations find themselves tied to inefficient, labor-intensive processes. Whether your end-users are stuck completing mindless and repetitive tasks, or they’re collecting data on paper (only to have to enter it in an archaic system in the office), it can make for a frustrating experience.

With advancements in technology, and GIS in particular, there is no reason to continue following manual, inefficient processes. There are several signs that a business process is just isn’t right for you anymore – see if any of them sound familiar. 

 

End-users are experiencing difficulty

While this may be the most obvious sign that a process isn’t working, it’s often overlooked. When processes are complex or manual in nature, you’ll generally see end-users having difficulty completing their tasks and continually requiring assistance from the GIS department

This can slow down your workforce and bog you down with requests for assistance. One way to improve in this area is by simplifying the end-user experience; providing users with guided interactions makes for a much more pleasing experience and improves end-user success

You’re experiencing data integrity issues

Data integrity is an ongoing challenge in many organizations, and depending on the type of data being used, errors can have significant consequences. In many cases, poor data comes from using paper-based processes that are prone to transcription errors, or from not setting the proper parameters on the data being entered into an application.

At their core, GIS systems are about improving decision making. If your team doesn’t have proper information, they are not making properly informed decisions.

The best way to avoid this is to provide dedicated interfaces for data collection. Most technology will allow you to present only the data you require your field workers to collect, as well as set rules against the data being entered, to ensure it enters the system correctly. It’s unlikely that you’ll be able to completely avoid data errors, but following best practices can reduce them significantly.

Your users are spending a lot of time searching for information across disparate systems

Most organizations house important business data across several different systems; there are financial systems, asset management systems, document management systems, business intelligence systems, and many more.

If these systems are not properly integrated, it can become difficult for your end-users to track down all the information they need. It can also waste time and money if your users need to jump between systems to find information.

This pain can be alleviated with proper integrations between systems. Try making all the necessary data – regardless of which system it lives in – available in the application being used to manage a process.

For example, if your end-users need to complete fire inspections on buildings, don’t make them jump to a separate zoning system to collect information about a particular building. Instead, consider integrating the zoning system within the inspection application, and automatically present the necessary zoning info at a stage in the process that makes sense.

You’re struggling to organize and present important information to other departments and stakeholders

One of the most common, and valuable, use-cases of a GIS is conveying information to people so they can make informed decisions. If you find that your users are spending many hours collecting and compiling information into reports, it may be time to revisit the process.

Besides the obvious repetitive, inefficient nature of manually compiling reports, it takes your users away from high-value activities. Labor is expensive and you want to ensure you’re getting the most out of the investments in your team… they’ll be happier doing more fulfilling work, too!

It all comes back to decision making – if people don’t have the information they need, when they need it, and in an easy-to-interpret format, they won’t be making properly informed decisions.

When building out processes, it’s important to start with the end in mind. Consider GIS technology that allows you to auto-generate reports in different templates. Start with a vision for the report you want in mind, then tailor data collection activities based on your goals.

So, it’s time to break up - what do you do now?

If your organization is experiencing any of the challenges described above, chances are it’s time to break up with your business process(es). But that’s a big decision to make, so what do you do next?

A good start is to shadow the people responsible for completing a particular process (if it’s not you). If you’re in the office supporting a process for a different department, you may not get a full sense of everything that’s involved. It’s good to get in the trenches with your staff and really get an understanding of what it is they have to do to complete their work.

You can also try drawing your workflow out on paper, from end to end. By thinking critically about the entire flow of a process you’re able to identify areas that are ripe for improvement. We often get so tied up in the day-to-day demands of our jobs that we miss tasks that are repetitive or unnecessary. There may be steps that can be automated with the right technology, or removed entirely. Until you see the full picture, it’s difficult to determine where to adjust.


You have a GIS. Have you connected your business processes to it?

Historically, GIS has been a system of record for many organizations, and the ability to complete any meaningful analysis lived within the GIS department. Mapping software has recently become more accessible and easy to use, and we’ve seen GIS evolve into a system of engagement and insight.

Did you know you can take your GIS even further, and use it to streamline many of your key (and often annoyingly manual) business processes? 

 

Simplify end-user experiences with automated, repeatable tasks

Many of your end-users’ common interactions with your applications can be automated and significantly simplified. Common tasks that can be automated include:

  • Data collection: Paper-based data collection -- particularly for users in the field – is still a common process for many organizations; modern GIS tools allow data to be collected seamlessly through easy-to-configure forms. Providing fields for only the information you need simplifies the experience and improves data quality.
  • Visual analysis: There are many examples of visual analysis that, if not automated, would be incredibly laborious and difficult for a user to complete. For example, if a water utility needs to shut down a valve, they can quickly run an analysis inside their mapping application that shows them all the water supply sources that the shutdown will affect. To complete this manually would take many hours, and becomes increasingly costly for everyone involved.
  • Reporting: When work is complete, there’s often a need to compile all the necessary information into a report; this can happen manually (and usually involves some combination of photocopying and scanning). This can be simplified with web mapping software: by pre-determining report templates, you can automatically compile the required data into a summary report.

Take charge and guide your end-users

Your end-users don’t need a set of complex GIS tools; they only want to see what is required to complete the task at hand. Automating repeatable tasks is one way to simplify the experience for your users, but there are additional steps you can take to improve your business processes.

  • Guided interactions: Walking your users through the processes they need to complete increases the likelihood of success, and can reduce frustration. Only show them what they need, when they need it. A great example of guided interactions is walking the public through permit applications. Many local governments offer mapping applications where residents can submit applications online, and by guiding the public through the process, you ensure that you get the right information and that the user understands what is required of them.
  • Dedicated interfaces: Offer your end-users dedicated, task-based interfaces; it reduces clutter and allows them to complete their jobs more efficiently.
  • Pre-populate key fields: If your users are collecting data through the application, don’t make them complete fields that you’re able to pre-populate automatically. Fields such as who’s running the task, or what time it is, can be populated based on information that already lives in the application.

Validate data intelligently

Data integrity is an ongoing challenge for many organizations, and fixing poor data can eat up precious time. Luckily, there are approaches you can use to ensure quality data.

  • Real-time validation: If your users are entering data into the application, notify them instantly if the data is incorrect. Being allowed to enter incorrect data throughout a form – only to have to go back and fix it later – can make for a frustrating experience. For example, a field worker may be completing a water meter install: if they enter the model number of the meter into the application, they can be automatically notified if it’s the wrong meter, or if there’s a duplicate meter number already in use. It saves them from installing the meter, only to find out later that it needs to be replaced.
  • Rules-based validation: If you need data to be displayed in a specific format, building formatting requirements at the outset will save you – and your end-user – needless frustration. Rules-based validation allows you to provide instant feedback if a user tries to enter data in an incorrect format. An example of this that we’re all used to is password requirements. How many times have you tried to create a password for a new system, and are prompted that the password requires a capital letter, a number, and a special character? That’s rules-based validation.

Spreading the word in your organization

You can greatly improve the experience for your end-users and increase adoption of your mapping applications. For many, GIS is a foreign concept, but with a few simple tactics you can put powerful tools in the hands of your employees that are simple and intuitive to use.

Now that you know what it means to streamline business processes with GIS, it’s up to you to share this knowledge in your organization.

Why should anyone else care? At the end of the day, it all comes down to efficiency gains, consistency, and ROI. If your organization is following paper-based processes or battling with data integrity, it’s costing you time and money. By automating repeatable tasks and taking steps to ensure the correct data is collected, we’ve seen organizations save hundreds of thousands of dollars each year in operating costs.