Bypass metanode or component

Hi,
what about implementing an automatic bypass for metanodes and components?
A sort of embedded logic where an user can enable or disable the a group of nodes inside a metanode/component…

I’ve a component with hard coded logic to bypass, but whenever i want to use this i’ve to disable the link of the component and copy/paste a set of node inside it… not really streamlined…

Luca

1 Like

Here’s example of brunching in KNIME

3 Likes

Hi @izaychik63
that’s exactly what i’ve done in a component.
But whenever i want to bypass some nodes in my development workflow i’ve to:
-drag in my component
-unlink it
-cut and paste the nodes i want to bypass on in
-go on

In this scenario i can simply disconnect the nodes and bypassing them the easy way, we should be able to do that with a simple toggle when converting a bunch of nodes into a component or metanode

1 Like

I agree @Luca_Italy, this would be useful.

1 Like

Hi @Luca_Italy

for my understanding, do you need something like this?

Greetings, Brotfahrer

1 Like

Hi @Luca_Italy
Alternatively to ‘If Switch / End If’ workflow controls that are really useful; you can provide an empty output to promote a secondary flow switch.

Regards
KNIME_error-control.knwf (25.3 KB)

1 Like

Hello,

Empty Table Switch is a good solution if you only have to handle empty tables. If you have to handly more complex states you can control the If Switch Node with a Rule Engine Variable. If your conditions are true then use the “top” output of the If Switch otherwise the “bottom” output.
Of course you can nest these switches.

My content of the Rule Engine Variable Node looks like this

Please note that the If Switch Node needs case sensitive input! “bottom” and “top” only in lower case letters.

Brotfahrer

2 Likes

I see your point and agree, to have option like “pass node through” to skip node functionality but save the logic/structure of the component could be useful.

If we are looking for something that can be configured easily to enable or disable part of a flow without having to disconnect nodes, then maybe something like this is a workaround? It cannot do pass-through, but it can do disabling.

image

Attach the Flow Variable port of the Enable-Disable Flow component to a node, and if it is configured to “Disable Flow”, that node and downstream nodes are disabled. :slight_smile:

Attached demo workflowKNIME_demo_flow_disabler.knwf (35.0 KB)

I’ve dropped the component on the hub at

Would be interested in feedback. Are there situations where this won’t work? Does it cause any problems? It makes use of the “Fail in execution” node to fail a flow within the component if “Disable Flow” has been chosen.

Taking this further, and utilising the If Switch concept, but making it into something that visually identifies this as a specific “Bypass” and also making it simple to turn on and off. Here is a bypass component. Under the surface, its really just an IF switch and a variable, but it can be configured easily to bypass or not .


image

KNIME_demo_flow_bypass.knwf (25.5 KB)

3 Likes