Call the workflow table based on the variable that does not accept with the path

@cridiaz from my experience it would be best to provide the paths via a workflow variable in the batch. The path should not have any blanks or funny characters. You can call the sub-workflow directly and do not need to use the JSON communication.

A basic batch/cmd file might look like this:

REM Set the path to your KNIME executable (Windows)
set KNIME_PATH=C:\Users\%USERNAME%\software\knime_4.7.0\knime.exe

REM Set the path to your workflow directory (the workflow you want to run)
set WORKFLOW_DIR=C:\Users\%USERNAME%\knime-workspace\KNIME_Batch\KNIME_Batch_Workflow

REM Set a string variable to pass to the workflow (a variable to bed used in workflow)
REM you have to define them as workflow variable in in WF
set STRING_VAR_NAME=var_data_path
set STRING_VAR_VALUE=C:\Users\%USERNAME%\knime-workspace\KNIME_Batch\data\

REM Run KNIME in batch mode with the specified workflow, string variable, proxy settings, and save the log output
"%KNIME_PATH%" -reset -nosave -nosplash -application org.knime.product.KNIME_BATCH_APPLICATION -workflowDir="%WORKFLOW_DIR%" ^
-workflow.variable=%STRING_VAR_NAME%,%STRING_VAR_VALUE%,String

You would have to set the “var_data_path” as Workflow Variable in the workflow. That would later be replaced by the value sent thru the CMD batch file.

image

image

2 Likes