Workflow Manager JavaScript Web Viewer Questions and Concerns

538
1
03-06-2018 09:51 AM
deleted-user-7uOyUeQXbkI0
New Contributor III

Hello, I'm trying to find a better way for some remote users to connect and work with their teams Workflow Manager and I'm exploring the option of using the Workflow Manager JavaScript Web Viewer to do this.  I'm curious if others have successfully integrated using the Web Viewer into their teams processes, especially when it comes to remote users.

I am currently working on setting up a test viewer to try and answer some of these questions myself, but it is taking longer than I initially thought it would and would love to get some feedback on whether it is worth continuing to pursue this option or whether I should be looking for a different solution.

Below are some of the questions and concerns I have about the web viewer.  I would greatly appreciate feedback from anybody that has worked with it themselves, especially if you have successfully incorporated into your teams processes.

Step execution speed via Web Viewer vs. Step execution speed via desktop

One of the big reasons we are looking into this is because it is very slow for our remote users to connect directly to our WMX database and execute steps or make updates.  This is partly because all of our internet traffic is routed to our corporate offices and then back out to our sites, therefore we have pretty high latency between the two offices.  I am hoping that executing the steps via the web viewer can at the very least be an improvement for them, and hopefully comparable to speeds experienced by users who work on site.  What have others seen in this regard?  Also, does anybody know what are the main factors in how quickly a step will execute via the web viewer? 

Executing steps in workflows

I know that not all steps will be executable via the web viewer.  Particularly anything in the JTXDesktopSteps group of custom step objects, like JTXDesktop.LaunchGPTool.  However, we have setup quite a few Executable Steps where we are launching python.exe directly rather than using ExecuteGP.  I haven't seen anything in the documentation that implies this shouldn't be possible and it seems as long as the file path to python.exe is available on the server and the filepaths to the referenced scripts are available on the server, then it should be able to execute the script.  Has anybody else been able to run Executable steps that run an executable on the server, i.e., python.exe or cmd.exe?  If not, do you just use JTXSteps.ExecuteGPTool instead to run tools/scripts?

Can steps executed via the web client reference/access data that is stored on the users workstation or does all data need to be in a location the server can access?

This is particularly important in our situation because our users are working with file geodatabases stored on their local workstation.

Any other challenges, tips, or tricks, you came across that weren't specified in the documentation that you think would be helpful for others to know about?

Thank you in advance for all responses. I will greatly appreciate them.

0 Kudos
1 Reply
XiaomengZheng
Esri Contributor

Hi, Ryan,

The web viewer is highly recommended for GIS managers when they need to monitor the process and view the summary and reports. You can only execute the steps in the web viewer for the one that support both Desktop and Server platforms. 

To answer your first question regarding the performance of execution against web viewer. If you are currently experiencing the slowness due to database connection, I would doubt that execution in the web viewer will have better performance. The web viewer still requires to connect to your workflow database. 

Theoretically you can open any .exe by executing steps. If you would like to run python scripts as part of your workflow, you can also configure your script in LaunchGPTool or ExecuteGP steps. ExecuteGP will run the script silently using predefined parameters. If you would like to enter the inputs while run the script, you can set the step as LaunchGP. For example, if your scripts will be running against local data, the local data path can be entered while you execute the LaunchGPTool step. 

Let me know if you have further questions.

Thanks,

Meggie

0 Kudos