Call workflow table based not accepting variable with path

Hello,

my problem is similar to the one described here (@Paul_P):

I want to call a workflow (table based) using a variable representing its path, but the following error appears:

Note that:

  • The path is correct, since I have used it in a call workflow (row based), which simply works.
  • If I manually copy and paste the path inside the “Workflow path” setting it works.

immagine

Can anyone help?

Thank you in advance and have a nice evening,
Raffaello

@lelloba the variable expects a string. You can see that at the little S symbol.

2 Likes

Hello @mlauber71 ,

thank you for your reply and the attached workflow. Unfortunately, I was not able to solve my problem.

  1. My first question is: since I want to call a workflow using a variable containing its path, why is it working for the row-based call local workflow node and not for the table-based one (see my attached workflow)?
  2. I don’t understand the comment below; if you see my first image, the provided variable named “path” is a string.
  1. As far as I understood from your workflow, you are not calling the secondary workflow using a variable containing its path; on the contrary, the workflow path is manually inputed.

Maybe I am missing a key point in your answer, but I am still not able to solve my problem.

Thank you for your time and patience,
Raffaello

@lelloba sorry I would have to look closer at the details. @Iris , @ScottF it seems there is a problem with the use of String variables together with the Call Workflow (Table Based) – KNIME Hub node. It would not accept a string coming from a flow variable (at least on my Mac).

1 Like

Good morning everyone,

is there any update about this issue? Sorry to bother, but I need it for a project at work.
In the meantime, any suggestion for workarounds would be appreciated. :slight_smile:

Thank you all and have a nice day,
Raffaello

@lelloba you could try the new:

It seems it would accept String variables (as realtive paths):

Do you have by any chance a simple but easy comparison reference between the 3 different call workflow nodes? (Maybe also from your projects in the past) Looks like they can in part be used in the same use case.
The node description alone is not enough for me
br

@Daniel_Weikert I use the Call Workflow (Table Based) – KNIME Hub with a parallel call to start Workflows simultaneously following an idea by @Iris :

The new node collection (KNIME Workflow Services – KNIME Hub ) it seems try to ease and streamline the call experience using input and output ports instead of a more complicated construct to transfer information.

And then there is the concept of:

2 Likes

Hello @mlauber71 ,

thank you for your support.

Still, in your new workflow, path variable seems not to work. It’s like if the “workflow path” field had been filled manually, and even if you have selected to provide the path with a variable (var_workflow_path), it is still considering the manual input to run.

If you delete “…/workflow_sub” from the field “Workflow path”, you should see something like in the image above, meaning that neither this node works with paths provided with variables.

Thank you,
Raffaello

1 Like

@lelloba indeed. The problem seems to be that the call workflow node would fetch the configuration from the child workflow and adapt its ports accordingly. And it seems this is not working with a flow variable even if it says so … that you have to fill dummy data into a field is a typical behaviour of KNIME but with other nodes the value would then be replaced by the Flow Variable …

Someone from KNIME might have to weight in if there is a concept down the road that would allow for dynamic variables.

I have used the other call workflow node on a KNIME server with dynamic (relative) paths, I assumed it would also work with local calls.

1 Like

I understand. I think I will try to modify my workflow so that I can avoid using this node.
Hopefully, one day it will solved - but if this is an issue, a ticket should be opened, right?

Have a nice day,
Raffaello