Select to view content in your preferred language

Does S123 have an equivalent to QC's project user input?

405
7
05-19-2024 09:11 PM
EmmaErickson
New Contributor II

Kia ora Esri community, 

I am hoping someone has some helpful ideas - or can point me in the right direction for further support. 

We are capturing points using S123 - which symbolise fence strainer posts/posts of fencing that encloses "Protected Areas". These points are converted into fence lines in GIS - and this line layer then serves as a database of all our fence assets out there. 

The points captured around any given protected area - can range from 5-500 or more. Each of these points captured has approximately 20 fields that are to be populated, depending on the situation of each post and the fence lines between posts. For all these points, one field input remains the same and that is the Protected Area name (we have many areas, but one fence survey will be conducted at a time). Our field users are having to input the protected area name for every point they capture for the fence in the protected area. 

Is there a way that we could set our form up so that the field 'Protected Area' - could be populated with the name of the Protected Area the surveyor is at only once - and then all points they capture will have the Protected Area field populated already. 

Thank you to anyone who may be able to help.

Ems 

 

0 Kudos
7 Replies
MobiusSnake
MVP Regular Contributor

I don't think there's equivalent functionality in S123 like what exists in QC.  Would it be possible to apply the protected area values using post-processing?  A couple of simple ideas:

  • Is a data editor typically tasked with one protected area for a day's work?  If so, a desktop user could select their new records for the day and use something like the field calculator to set the values.
  • Do you have the protected areas as polygons?  A desktop user might be able to use them (possibly with some buffering) to enrich the point features, as long as the polygons aren't adjacent to each other.

Another approach that's a bit more complex, in the past I've had a workflow where field editors would collect data for a "job", sometimes over the course of up to a week, several dozen records from half a dozen different forms submitted as part of the job.  At completion time, I had them send in a separate form indicating they'd finished their assigned job.  This triggered the following:

  • Form submission would write a new record to a polygon layer but with a null geometry, and the user's username.
  • A scheduled process (Python Notebook) would run every couple of hours and look for these new records.
  • Upon finding a new polygon 'completion' record, the process would look for all new records submitted by the user in the other half dozen layers, calculate a polygon geometry from all the points (saving this to the form's layer), plus perform a series calculations based on the input.

You could do something like this where a user submits fencepost records, then upon completing the job, submits a "protected area" record.  A notebook could then copy the protected area value from that last record to the user's previous records.  This would require editor tracking, of course, and would mean editors couldn't jump between protected areas without submitting these records.

0 Kudos
EmmaErickson
New Contributor II

Thank you for your reply - it is much appreciated! Its firstly helpful that you can sort of confirm we aren't missing anything that could do something similar to the Project User Input function of QC. I just wanted to double check on that first. Given each S123 point is a new survey - it makes sense we can't apply the PUI function, but I just wanted to triple check.

Your advice for post processing is super helpful - I think I will go with that, as the small extra step to add protected areas post process, is going to be a real time and frustration saver for our field user. 

Again, thank you for your help with this 🙂 

Ems

0 Kudos
SMauri
by
Occasional Contributor III

Hi, maybe you could find the solution in this post if you haven't already checked it: How to pre-populate answers in Survey123 

But perhaps the best solution would be to use this method (pulldata @layer): Query a feature layer
with the buffer parameter Survey123 Tricks of the Trade: pulldata("@layer")

Cheers

Stefano

 

 

0 Kudos
EmmaErickson
New Contributor II

Good morning Stefano, 

Thank you for sharing this info and for the links provided. I will look into these today. 

Your reply is much appreciated, 

Ems 

 

0 Kudos
abureaux
MVP Regular Contributor

"...points captured ... can range from 5-500 or more".

So you'll need a repeat.

"Each ... points captured has approximately 20 fields ..."

All good there

"...For all these points, one field input remains the same ..." and "...one fence survey will be conducted at a time"

That all seems easy enough... have you tried this?

abureaux_0-1716302657105.png

Placing "Protected Areas" outside a repeat means you can use it for all repeat items. You can even pull it into the repeat if you'd like (either via a calculate in the survey, or in the Feature Report after the fact).

0 Kudos
EmmaErickson
New Contributor II

Hello abureaux, 

I appreciate your reply - thank you for the info. I worried that a repeat may glitch out with the number of points that are being captured around an individual protected area. If it's unlikely that that is going to cause issues, I think we should trial the repeat and see how we go. 

Thanks again 🙂

Ems 

0 Kudos
abureaux
MVP Regular Contributor

It sounds like you have a very small/simple survey, so a few hundred shouldn't be an issue.

Curious, but if not a repeat, how were you planning on collecting those fields? That seems like a wide margin to have hard-coded in!

0 Kudos