Zum Hauptinhalt gehen

Issues with On-Prem Server Workflows

Kommentare

8 Kommentare

  • Ken Lyon

    HI Bryan,

    Could you explain what the file is that you're copying at the start of your description? I'm not really clear how this relates to SQL Server.

    When you create a server workflow using the on-premises version of Workflow Designer, the server workflow itself is saved on your own server. We also save a corresponding item to your Portal. That contains a few details such as the server url, so we know where to load the actual workflow from. The Portal item also contains a client-side workflow of its own which is essentially a wrapper around a call to Run Workflow that runs the server workflow. This exists as a convenience, so you can test the server workflow in the sandbox, for instance.

    If you're seeing an error that the portal item was not found, it might suggest that the workflow url for "Run Workflow" is wrong in the client workflow. I'm not entirely sure how that would happen, though. Maybe if the save operation failed in some way?

    You could use VertiGIS Studio Item Manager to inspect the Item JSON and confirm the serverUrl is correct. You could then look in the Item Content and confirm that the url supplied to Run Workflow is correct. (In my server workflow, it's line 56.)

    0
  • Bryan Bingham

    Ken Lyon The SQLQuery I mention in my original post is not a SQL Server file, it's actually a 'Run SQL Query' tool that is attempting to connect and query an on-prem Oracle database.  

    I've double checked my run workflow activity in my client workflow, it is exactly the same URL that is in the info panel of the workflow designer and pointed at our AGOL instance; It's also the exact same as line 56 in the Item Content tab of the VertiGIS Studio Item Manager, the URL there matches the one from the info panel and when I post it into a web browser it takes me to the content within our ArcGIS On-Line portal.

    I've attached an image of the developer console from when I try to run the server workflow in the sandbox.

    0
  • Ken Lyon

    Hi Bryan,

    This is starting to make a little more sense, but I think I still need to fill in some of the blanks. Is your intention to use the Run Application activity in a Server Workflow in order to use the SQL Query tool to perform a query of an Oracle database?

    I think you should be able to configure an oracle database connection in Workflow Server that would allow you to use our Run SQL Query activity. That would be the preferred pattern to use in Workflow.

    0
  • Bryan Bingham

    Ken Lyon My hope was that I could call a server side workflow that has a 'Run SQL Query' activity in it to query the database.  I've set up the connection to the database that I need to get connected to in the Data Connections part of the REST manager; I've tried both methods of connecting to the Oracle database, I copied and pasted the connection string from the REST Manager into the connection string input of the Run SQL Query activity.  I also configured the same connection string into the databasejson file on the server, both options to this point have not yielded query results from the database. The connection string is below with the important stuff blanked out.

    Data Source=(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = <host.server.ca>)(PORT = XXXX)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = db.domain.ca) ));User Id=<username>;Password=<password>

    0
  • Bryan Bingham

    **Clarification

    Sorry Ken Lyon, i'm hoping to have a client workflow, call a server workflow that will query the Oracle database and provide the results back to the client workflow.

    0
  • Ken Lyon

    I understand that additional steps are required to be able to connect to an Oracle database with Workflow.

    If you have not already, I would recommend you refer to this guide for our instructions:
    Database Connections for Server Workflows

    0
  • Bryan Bingham

    Thanks Ken Lyon; I got the client and server workflows to work, but there's another small item that has me confused. 

    In order for the client workflow to be able to call and have the server run the server side workflow that is saved in ArcGIS On-Line (AGOL); It needs to be shared with the public in AGOL (we tested public, organization and specific group/user sharing and public was the only one that didn't toss an 403 forbidden error) which seems like a bit of a security oversight. 

    Is there something that I've done incorrectly or a specific user that needs to be created in ArcGIS On-line to share the workflow with?

    0
  • Ken Lyon

    Hi Bryan,

    I'm glad to hear you got them working. In order to use a workflow that isn't public, I think all that's needed is to ensure that the end user is logged in to the viewer and that they are a member of the relevant org/group.

     

    0

Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.