Showing 2 result(s) for tag: integrations

Integrating Geocortex Essentials with ArcGIS Online and ArcGIS Enterprise portal [Geocortex Tech Tip]

Whether you’ve been building against ArcGIS Server, or you’re just getting your feet wet with ArcGIS online, Geocortex technology is built to enable change, allowing for easy and seamless integration with the ArcGIS platform in its entirety.

 In this week’s Geocortex Tech Tip, we take a closer look at the intrinsic nature of web maps, and how Geocortex Essentials can be integrated with ArcGIS online and ArcGIS Enterprise portal.

 

 

Video Transcript

“Hi, my name’s Drew and I’m the Chief Technology Officer and in this Tech Tip we’re going to explore how Geocortex Essentials can be used alongside ArcGIS online, or your ArcGIS Enterprise portal, so let’s dive in!

So I think we’ll start with some context surrounding how to connect Geocortex Essentials to the ArcGIS platform. For many years, our customers have been able to connect Geocortex Essentials directly with ArcGIS Server. Public services can be connected to directly, or we can use token or Windows authentication to connect Geocortex Essentials sites to ArcGIS Server map services, feature services, tiled services, and other types. Applications produced by Geocortex Essentials can also connect to ArcGIS Server through that same authentication method.

ArcGIS Online, portal introduced Web Maps, and that’s really the central currency in the geoinformation model. When we used Geocortex Essentials with ArcGIS Enterprise or ArcGIS Online, web maps become an intrinsic part of this equation.

Here we can see multiple users or groups of users signing in to a portal. This can be ArcGIS online or an ArcGIS Enterprise portal, and they’re using their ArcGIS identity to do so, and then they can create web maps inside of this organization. Those web maps can be shared and used within apps like Operations Dashboard, Collector, or Web AppBuilder-based applications so that other users can use those apps that consume the web maps.

If we add Geocortex Essentials to this picture, users can sign in with the exact same ArcGIS identity that belongs to their portal (or ArcGIS Online org). Then, when we author a site, the identity’s credentials are used to fetch content, like the web map. So the very same web maps can be referenced inside of a Geocortex Essentials site. Then apps created out of Geocortex Essentials can be shared back in that portal, increasing the use of GIS throughout the organization.

Let’s have a look at this pattern in practice.

Here’s a web map that I want to use in a Geocortex Essentials application. It contains store locations and it’s stored inside of my ArcGIS online organization.

I’m going to sign into Geocortex Essentials using my ArcGIS online account. Once I’ve signed in, I’m brought to a list of sites that I’m able to manage. This time, I want to add a new site, give it the display name “Stores”, and I’m going to reference a web map from ArcGIS Online to create my application.

Now, I can search the public database for content, or I can hit this checkbox and refine the search results to only the web maps that are inside my organization.

Notice the lock icon indicates that this web map isn’t shared with everyone. That means end users of my application are going to have to sign in with their ArcGIS identity to access this app.

Geocortex Essentials makes a reference to the web map and understands all of the content within it. So it has an understanding of all of the map services and layers that are used within this web map, and now I can start to author my application within Geocortex Essentials Manager.

Let’s add a viewer to this application using our HTML5 viewer template. Without making any configuration changes, lets launch this in a new browser window.

Now, transparently and behind the scenes, I was signed in to this application. In the top right corner you can see that I can sign out and that I’m currently signed in using my ArcGIS Online account. The reason I was signed in is because the web map inside this application is protected. If I sign out, I’m prompted to sign in using my ArcGIS identity. If that web map is shared and made available to everyone, the end user is not required to sign in using an ArcGIS identity or otherwise.

Now that I’ve built an application, I can publish this back in to my ArcGIS Online organization and share it with other users or make it one of my favorites. Notice that this have been given an item ID, and if I click on this link, I’m brought to my ArcGIS Online org, where I’ve got my Stores application. Clicking on this will simply launch my application.

For now, I’ll simply add it to my favorites. If I go into My Content, and then click on Favorites, there’s the Stores application that I just published from Geocortex Essentials.

You can see this pattern in action using Geocortex Essentials to build applications, share them back inside of your ArcGIS Online organization, or inside of your portal so that they can be used by more users.

Geocortex Essentials 5-Series applications also integrate with ArcGIS Enterprise and ArcGIS Online. Here we can see three example applications – Printing, Workflow, and Reporting. An ArcGIS identity is used to sign in to the design experience of these apps.

Once we’ve signed in, we can create content in the form of items. With Geocortex Workflow for example, the item type is a workflow, and with Geocortex Reporting 5, the item type is a report template.

These items are stored inside of the ArcGIS Online organization or within the ArcGIS Enterprise portal alongside apps and web maps and other types of content.

Those items can be used by Geocortex apps or within Web AppBuilder for ArcGIS apps so that more Geocortex content can be shared with other users within the organization.

Now, lets explore this pattern. I’m going to sign in to Geocortex Workflow. I’m using my ArcGIS identity to sign in so that I can restore a workflow that I created earlier. In the File menu, I can browse all of my workflows that I’ve authored, workflows that have been shared with me, or - if I have the URL to a workflow the item ID, and the URL to my ArcGIS Online organization - I can open it that way.

The workflow I’m looking for is one that I worked on recently. This workflow is called “StoreFinder” and it does just that; it allows the user to search for stores inside of the map. I’ve got a search form prompting the user to select from a list of store types, and once they select a store type, if they click search, we’re going to query the stores layer based on the center type that the user selected. Then we’re going to get the extent of the results, set the map to that extent, and then simply display the results in a list. It’s a pretty simple workflow.

If I go to the Info tab, you can see that this workflow is stored inside of my ArcGIS Online organization, and it has an item ID. I’ve named my workflow “StoreFinder” and it’s got a unique URL used to discover it.

Now, if I sign into Web AppBuilder using that same ArcGIS identity, I can access that workflow.

Let’s go to the widget tab in the authoring tool, and add a new widget to my application. I’ll use the workflow widget (which I’ve installed earlier), and I’m allowed to browse for any workflow in my organization. I can look for my content, my organization, groups, and even public workflows.

Using the keyword search “StoreFinder”, I was able to discover the workflow I authored earlier.

Now I’m just running through the workflow inside of my Web AppBuilder designer experience. Let’s look for all strip malls on this map.

You can see that the results are highlighted and then the workflow displays an item picker, allowing me to hover on each result and show the corresponding record on the map.

That’s an example of how Geocortex Workflow 5 was used to integrate with an ArcGIS Online organization by storing an item and consuming it inside of a Web AppBuilder for ArcGIS app.

The idea here is that you can deploy Geocortex alongside other ArcGIS applications that you have that are also consuming web maps. Collector, Operations Dashboard and Web AppBuilder can all be used alongside Geocortex Essentials.

We’ve built Geocortex Essentials to allow our customers to enable technology change. Whether you’ve been building directly against ArcGIS Server, or you’ve started to work with ArcGIS Online, or ArcGIS Enterprise, Geocortex Essentials has technology for you to integrate with the entire ArcGIS platform.

Thanks for watching this short Tech Tip. I hope you learned something today.

Bye for now!”

Want to learn more about how Geocortex Essentials can help organizations of any size or industry address business challenges? Check out the Discovery Center to get a feel for the product.

Discover Geocortex

 


How to search for data in a non-spatial database [Geocortex Tech Tip]

Maps allow you to visualize data in meaningful ways and expose patterns that can’t be seen anywhere else. One of the challenges, though, is that your most important business data typically lives in another system or database. This can become even more challenging when it’s data stored outside your geodatabase.

In this Geocortex Tech Tip, Drew Millen shows you how to search for data in a non-spatial database (such as Oracle or SQL), find the spatial relationship, and display it on a map. 

Watch on YouTube

 

Video Transcription

“Hi everybody, I’m Drew with Latitude and in this Tech Tip we’re going to look at searching for non-spatial data. That’s data stored in Oracle or SQL Server… somewhere that’s not in your geodatabase. We’re going to look for that, find the spatial relationship, and display it on a map, so let’s see how we do that with Geocortex.

What we’re looking at here is a very basic Geocortex viewer application that’s been configured with a single layer called “Land Use”. This contains polygons of different types of land uses and what I’m interested in is this “Arts and Recreation” land use polygon, which contains park information for Los Angeles County. I also have a database table - in this case, an Excel spreadsheet of trees. Now notice that I‘ve got records of all the different types of trees that exist, but I don’t have location information for these. In other words, this is a non-spatial database table. This could live in Oracle or SQL Server, but for the sake of this demonstration it’s just an Excel table.

We’ve got a facility that tells us which park this tree belongs to, but we still don’t have its “XY” location on the map. What I want to find out is where I can find certain trees in my county, so, what parks do I have to visit to discover certain types of trees.

Now in this application, I’ve got a data link between my parks layer, or my land use layer, and the tree database. So, if I have a park selected, and I view the additional details for [the park]; I can see the spatial details associated with that park and I can also see the trees that are within that park, but I’m not quite there. What I want to find out is which parks contain which trees... and remember, my trees don’t have “XY” locations.

How do I solve this? Well, I’ve already set it up so that we can do a search against this Excel table. So, if I do a search for the word “macadamia”, for example, I will find search results from that Excel table, but I still don’t have the location on the map where these macadamia nut trees exist. I need to create a “join” between these search results and a spatial layer on the map to find the underlying spatial feature. In other words, the park that the trees live within.

What I can do is come back to Geocortex Essentials Manager where I’ve configured this application. And to connect to this Excel spreadsheet, I’ve established a data connection. You can see the connection string that we’ve used here simply points to the spreadsheet. If you’re connecting to Oracle or SQL Server, there’s different syntax that you would use for your connection string, but the same idea exists.

Now that we have that data connection, we can set up what we call a “Search Table.” And a search table gives us a select clause: in other words, which fields are we interested in returning from that table when the user issues a search. In this case, we want the user to be able to search on the common name of the tree (like my example when I typed in the keyword “macadamia”) and find all the attributes from the LA Parks trees in this database. So that search is set up.

I’ve also got the land-use layer in my site configured with a datalink. This datalink means that the layer is joined to this data connection, so that every time I click on a park on the map, I see the associated records from my Excel spreadsheet. Recall, however, that I want to do the reverse. So, our current datalink makes sure that every time I select a park on the map I’m grabbing the trees and joining it on the facility column. Notice that facility column is the name of the column that we're using in the spreadsheet to represent the park that the tree exists within.

There’s this section down at the bottom, here, that allows me to add a search, so that’s the reverse of what we’re currently doing, and it allows me to use one of the searches that I’ve configured to find these features from the land use layer that match my search criteria from my datalink.

I’m going to give this a display name. We’ll just use “Park Trees Search,” and the search table that I’m searching on is the only one that we’ve configured in our site earlier, so it’s this Park Trees Search table. And then the field that we want to join is called “Facility,” and that maps to the name of the land use polygon. So that’s where we get our many-to-one relationship from. I’ll go ahead and save the site with those configuration changes and then refresh our viewer.

Now I’m going to issue a search for the word “macadamia” like I did before, and I’ll find the same four results from my Excel spreadsheet. But now when I drill into a result, we can see the facility that it belongs to. It exists in two different parks: there’s “Runyon Canyon Park” and “Runyon Canyon Park – MRCA”. If I click on one of those it’s going to take me to the park where I can discover these macadamia trees.

Hopefully this quick Tech Tip has shown you how you can configure a non-spatial data source to be searchable inside your viewer and still return spatial results. Thanks for watching!”

Explore more Geocortex Essentials functionality in the Discovery Center.

Discover Geocortex