Is it possible to have a "multi-step" geoprocessing widget?

268
3
05-22-2018 09:09 AM
AndrewValenski__IT_
Occasional Contributor III

Howdy Team!

I'm looking at implementing an app that, as it currently stands, is wrapped into a single GP function and is working quite well, but the UI/UX side of me doesn't quite love how my GP widget functions. What I'm looking for is a way for the geoprocessing widget to, in way or another, provide the user multiple dialogues throughout their interaction with the widget. 

What I'm looking for (in a simplified scenario) is this:

  • User would launch the geoprocessing widget to show the 'geoprocessing input panel' (below)
    • Primary Input Panel
  • User would select features on the map and click the 'Execute' button.
    • When the execution has finished, the geoprocessing widget would then open a secondary 'geoprocessing input panel' (below)
      • Secondary Input Panel
  • User would fill out the fields and hit 'Execute' and then be complete.

The reason I want to do it this way is because I have intermediate checks built into the python script to dictate the geoprocessing widget’s next steps – right now, it’s all wrapped into a single script which will either run successfully if all the conditions are met, or exit the script with the appropriate error message and inform the user to start again. While this will work, it is not ideal.

Any insight / help is appreciated!

Previn Wong‌ , Robert Scheitlin, GISP‌ , Derek Law

0 Kudos
3 Replies
RobertScheitlin__GISP
MVP Esteemed Contributor

Andrew,

   Well you are off in unexplored territory there for me. I have not had the need to investigate a work flow like that, so I don't have any advice at this point.

0 Kudos
AndrewValenski__IT_
Occasional Contributor III

I think the solution I may end up running with is to configure the Geoprocessing widget to open a second geoprocessing widget so, from an end-user perspective, it seems like a "multi-step" widget, but is actually just tethering separate GP widgets together that derive inputs from the earlier ones. I'll update this thread as progress gets made.

Also, Robert, I'm trying to disable the Geoprocessing Widget's class change for onClick events when inputting FeatureSet variables. Right now, the GP widget requires a user to re-click the edit icon for each individual point. I want the user to be able to add as many points as they'd like without re-clicking the button.

I see where all the classes are changing in the html-elements within the SettingDetail.js and see that the _onParamChange is responsible for determining what the change will be, but I can't seem to isolate where the Web Map's onClick event that triggers the element's change is. Any ideas?

And don't worry, I'll post the answer as a separate question so its discoverable  

0 Kudos
RobertScheitlin__GISP
MVP Esteemed Contributor

Andrew,

   So it sounds like the Geoprocessing widget it set to deactivate the DrawBox after drawing a geometry so to change that you would have to edit the GP Widgets editors/SelectFeatureSetFromDraw.js and add a drawOptions property of deactivateAfterDrawing: false

0 Kudos