Solved

Passing process flow variable to a report API


Userlevel 1

 

Hello,

 

I'm trying to pass a process flow variable to a report API through HTTP connector process action but it doesn't work. I've even tried with a fixed parameter. I think the problem is with the report url. See the prints below:

 

 

icon

Best answer by Robbert van Tongeren 24 August 2022, 14:54

View original

This topic has been closed for comments

12 replies

Userlevel 7
Badge +23

Hi,

Very close, but it should be ...shipment_id={shipment_id}… 

This way {shipment_id} will be replaced by the process variable value 😁

Userlevel 1

Like this:

{shipment_id={shipment_id}} or (shipment_id={shipment_id})

?

 

Userlevel 7
Badge +23

Like (shipment_id={shipment_id}) I think

Userlevel 1

It didn't work. I even tried with fixed parameter value.
 

Below is the task that precedes the HTTP Connector

 

Userlevel 7
Badge +23

Hi,

Are you sending this request to Indicium or Indicium Basic? I'm also not sure if using "[local-host]” in the HTTP connector works. You can double check by opening the Process flow monitor if you are using the Windows GUI, otherwise you may need to inspect the Indicium log to find out why the request failed.

Besides that, if you are trying to run this Report from a row, the value inside the ( ) should be the PK value of the row you would like to start the Report on: (docs)

Example with Executing a Task on a record

Lastly, we added a new process action called Generate report in 2022.1, can that process action help out?

Sending requests to Indicium from within HTTP connectors is not feasible in the long run as Indicium may be renamed, may be placed elsewhere, report may be renamed, and your gui_appl_id changing over time.

Userlevel 5

The user running the process flow (ie the pooluser of indicium) should be active in the SF for the runtime config for application 984.
Like Mark said, this is not a desired solution for the long run, for testing purposes its fine.

Furthermore; are there any errors in the error_log of indicium? 
(You can find the error_log by logging in on indicium as an admin)

Userlevel 1

Hi Mark,

 

I tried to use the generate report process action previously. It runs the process action but returns null in the report data output.

 

The following task has to receive the report data:

 

But it fails because content is null.

 

Userlevel 5

From which GUI are you trying that process action?

The generate report process action only works on indicum, so coming from Universal GUI or as a system flow it works, coming from Windows / Web GUI it will fail.

Userlevel 1

Hi Robbert,

I'm using Windows GUI. In that case what's the best approach? HTTP connector?

Userlevel 5

Yes, a HTTP connector would be a good way to go. For an example see this topic:

 

Another way could be → Task → Queue table
    system flow → Check queue table → generate report

 

Depending if the user should see the document imidiatly or if it could be done asynchronous.

Userlevel 1

Hi Robbert,

 

I'm getting -4 status with the HTTP Connector. See below:
 

 

Userlevel 5

You have invalid headers.

https://docs.thinkwisesoftware.com/docs/sf/process_flows_connectors#http-connector

 

Your header should be something in line with this:

[ { "Key": "Header1", "Value": "Value1" }, { "Key": "Header2", "Value": "Value2" } ]