Have it Both Ways

Connecting to and Editing ArcGIS Feature Services in QGIS

Housekeeping

Worth Paying For?

(Soapbox Warning)

Overview

  1. Why you should try it
  2. A brief tour of QGIS
  3. How to make the connection
  4. Things you can do

Reasons Why

You’re working with AGOL / Portal and…

  • Lots of editors, not a lot of budget
  • Distributed workforce
  • File interoperability
  • You’re not running Windows
  • You prefer QGIS
  • You want to use advanced capabilities that Q offers

A Tour!

Connect to a REST Directory (Anonymous)

Via Browser Panel

Via Data Source Manager

New Connection Dialog

Let’s use the US Census TIGERweb as our example.

  • name: TIGERweb
  • url: https://tigerweb.geo.census.gov/arcgis/rest/services

No other settings need to be configured.

Demonstration!

Connect to AGOL / Portal (Authenticated)

Credit where it’s due

The steps discussed here come from the invaluable guide at North Road.

AGOL / Portal: Add and Register an App

  1. My Content → Add Item → Application
  2. Register application with local redirect URLs
  3. Get the Client ID and Client Secret

QGIS: Create an Authentication

  1. Options → Settings → Authentication
  2. Fill in the appropriate URLs (see previously linked article)
  3. Enter the ClientID and Client Secret from your registered app

QGIS: Create Authenticated Connection

  1. Put in the REST URL as before
  2. Fill in the Community and Content endpoints
  3. Include the authentication credentials

Browse and Add Services

Anonymous vs Authenticated

Add from Browser Panel

Add from Data Source Manager

  1. Click “connect” to view services
  2. Search / filter by service name
  3. Select service from list
  4. Set spatial filter on service
  5. For image services, request images be encoded in specific format
  6. Add with an attribute-based filter 1
  7. Add layer

Demonstration!

The Fun Stuff

Editing

Here’s a private layer in my AGOL account. It has editing enabled, but is not accessible to other users.

There’s a public, non-editable view layer, too, with a corresponding map.

Virtual Layers

  • Make query layers from basically anything
  • Fancy SQL stuff 1
  • Spatial SQL stuff

Virtual Fields

  • Casting / converting values
  • Interact with other features / layers
  • Works on layers you’re not allowed to modify

Geometry Generator Symbology

  • On-the-fly generalization, buffering, etc
  • “Cast” the geometry as a different type
  • Can be used in conjunction with other symbology types
  • Just plain old weird stuff

Data Defined Overrides Everywhere

  • Too much to really go over!
  • Doesn’t need to be from the same feature or layer
  • Other variables
    • Cursor position
    • Atlas feature
    • System settings

Atlases, Variables, Inter-Layer Expressions

  • Sort of like Map Series, but not
  • What if you wanted the series map extents defined by something other than the main feature?

Questions?

Be in Touch!