Hello,
I write a tool and I have a problem with the outputs generated :
My script is :
<tool id=Pl" name="Parallel"> <command interpreter="bash"> #if ($Step.Multithread.threads is True): script_multi-threads.sh $input $Step.Multithread.nb_threads $output #else script_mono-thread.sh $input #end if </command> <inputs> <param name="input" type="data" label="Input" /> <conditional name="Step"> <param name="step_select" type="select" label="Choose a step> <option value="step1" selected="true">Step 1</option> <option value="step2">Step 2</option> </param> <when value="step1"> <param name="A" type="integer" label="A" value="1"/> </when> <when value="step2"> <conditional name="Multithread"> <param name="threads" type="boolean" checked="no" label="Multithreads" value="1"/> <when value="true"> <param name="nb_threads" type="integer" label="Number threads" value="32"/> <!-- If it's yes, I want to return a file, if it's no, I don't.--> </when> <when value="false"></when> </conditional> </when> </conditional> </inputs> <outputs> <data name="output1" label="${input.name}_${Step.Multithread.nb_threads}.out"> <!-- output name : input_32.out--> <filter>(Step['step_select'] == 'step2') and (Step.Multithread['threads'] is True)</filter> </data> </outputs> </tool>
In this case, Galaxy return an output every time, and doesn't care about which value in the boolean threads is selected.
I read the doc multiple time, and I don't see where the error come from (Is there a problem with the nested conditional ?).
Can you see what I am doing wrong ?
Thanks for your help,
Rob.