Validating selection made in Column Selection Widget node

How does one determine whether the end user made a selection in the Column Selection Widget node?

In my scenario I set the default column to the null string using a flow variable because there is no sensible default column (I also wish to avoid the "MISSING: behavior). If the user doesn’t select a column at all, the node simply guesses a default column, but there’s no way to determine the user didn’t actually make a selection (unless I’m missing something).

If the user failed to select a column, I plan to alert them to this in a downstream validation component.
I’m using KNIME AP 4.4.4

Thanks,
Don

Hello @dnaki,

don’t think that is possible. However there’s a workaround. You can use Single Selection Widget node where Possible Choices will be your column headers (controlled by flow variable). Trick is in this: here you don’t have to define Default Value and thus single-selection flow variable will be empty string if user doesn’t make selection. Additionally this node outputs selection index and in same scenario value will be -1. And that is actually how you can determine that user didn’t make a selection :wink:

You can also create flow variable type list which is holding your column names by using columnNames() function from Column Expressions node.

Br,
Ivan

5 Likes

Thanks for the workaround, @ipazin

It would be nice if the Column Selection Widget supported validating whether the user made a choice. Perhaps this belongs in the Feedback / Ideas category of the forum.

Kind regards,
Don

1 Like

You are welcome @dnaki.

If I remember well there used to be option (at a certain point in time) in Quickform nodes which defined whether input is required or not. You can still see required option on Flow Variables tab in Widget and Configuration nodes. But unfortunately this field is not “responsive”. See here:

Br,
Ivan

1 Like