Hi Leandro,

Thanks! I had to change one line to get it working:

<command interpreter="perl">
     ...
     #for $i in $add_inputs
     ${i.extra_table.file_name}
     #end for
</command>

<repeat name="add_inputs" title="Extra Fitness Tables">
    <param format="txt"             name="extra_table"      type="data" label="Another fitness table" />
</repeat>

Now galaxy will provide a list of files as the last parameters to the script.

Best,

Kip

On Fri, Jul 1, 2011 at 3:53 AM, Leandro Hermida <softdev@leandrohermida.com> wrote:
Hi Kip,

For the time being we are using this method to achieve the same
result, although its not as nice as just having a multi-select menu in
the form:

<command>
   ...
   $input1
   #for $r in $add_inputs
   $r.$input2
   #end for
   ...
</command>

In <inputs>:

<param name="input1" type="data"/>
<repeat name="add_inputs">
       <param name="input2" type="data" />
</repeat>


best,
Leandro


On Thu, Jun 30, 2011 at 4:52 PM, Kip Bodi <kip.bodi@tufts.edu> wrote:
> Sorry, I tried to edit that, to make it simpler, but missed the <param>
> block. The 'name' does match the one in the 'command' on my end
> (list_of_items_in_history).
>
> On Thu, Jun 30, 2011 at 10:45 AM, Kip Bodi <kip.bodi@tufts.edu> wrote:
>>
>> Hi all,
>>
>> I'm having the same problem. I have a script that tries to take several
>> history data sets as a single input:
>>
>> <command interpreter="perl">aggregate.pl --out $outfile
>> $list_of_items_in_history</command>
>>
>>   <inputs>
>>     <param format="txt" name="fitness_tables" type="data" multiple="true"
>> label="Fitness score table, per site"/>
>>   </inputs>
>>
>>   <outputs>
>>     <data format="tabular" name="outfile" />
>>   </outputs>
>>
>> If I select only one history item it works, but if I press 'ctrl' to
>> select multiple items, it fails:
>>
>> File
>> '/storage/apps/galaxy_dist/eggs/WebError-0.8a-py2.6.egg/weberror/evalexception/middleware.py',
>> line 364 in respond
>>   app_iter = self.application(environ, detect_start_response)
>> File '/usr/lib/python2.6/site-packages/paste/debug/prints.py', line 106 in
>> __call__
>>   environ, self.app)
>> File '/usr/lib/python2.6/site-packages/paste/wsgilib.py', line 543 in
>> intercept_output
>>   app_iter = application(environ, replacement_start_response)
>> File '/usr/lib/python2.6/site-packages/paste/recursive.py', line 80 in
>> __call__
>>   return self.application(environ, start_response)
>> File '/usr/lib/python2.6/site-packages/paste/httpexceptions.py', line 633
>> in __call__
>>   return self.application(environ, start_response)
>> File '/storage/apps/galaxy_dist/lib/galaxy/web/framework/base.py', line
>> 145 in __call__
>>   body = method( trans, **kwargs )
>> File
>> '/storage/apps/galaxy_dist/lib/galaxy/web/controllers/tool_runner.py', line
>> 68 in index
>>   template, vars = tool.handle_input( trans, params.__dict__ )
>> File '/storage/apps/galaxy_dist/lib/galaxy/tools/__init__.py', line 979 in
>> handle_input
>>   _, out_data = self.execute( trans, incoming=params, history=history )
>> File '/storage/apps/galaxy_dist/lib/galaxy/tools/__init__.py', line 1271
>> in execute
>>   return self.tool_action.execute( self, trans, incoming=incoming,
>> set_output_hid=set_output_hid, history=history, **kwargs )
>> File '/storage/apps/galaxy_dist/lib/galaxy/tools/actions/__init__.py',
>> line 360 in execute
>>   for name, value in tool.params_to_strings( incoming, trans.app
>> ).iteritems():
>> File '/storage/apps/galaxy_dist/lib/galaxy/tools/__init__.py', line 1274
>> in params_to_strings
>>   return params_to_strings( self.inputs, params, app )
>> File '/storage/apps/galaxy_dist/lib/galaxy/tools/parameters/__init__.py',
>> line 79 in params_to_strings
>>   value = params[ key ].value_to_basic( value, app )
>> File '/storage/apps/galaxy_dist/lib/galaxy/tools/parameters/basic.py',
>> line 110 in value_to_basic
>>   return self.to_string( value, app )
>> File '/storage/apps/galaxy_dist/lib/galaxy/tools/parameters/basic.py',
>> line 1457 in to_string
>>   return value.id
>> AttributeError: 'list' object has no attribute 'id'
>>
>> Is using multiple history items as a single input not currently supported,
>> or is there something else I'm doing wrong?
>>
>> Cheers,
>>
>> Kip
>>
>> On Thu, Jun 9, 2011 at 7:05 AM, Leandro Hermida
>> <softdev@leandrohermida.com> wrote:
>>>
>>> Hi again,
>>>
>>> Sorry to ping again about this, just very interested in knowing if
>>> this is a missing feature in Galaxy or if I had configured something
>>> wrong.
>>>
>>> Is it possible in Galaxy to have a tool with a multiple="true" input
>>> dataset parameter?  It doesn't seem so?
>>>
>>> best,
>>> Leandro
>>>
>>>
>>> On Tue, May 24, 2011 at 1:31 PM, Leandro Hermida
>>> <softdev@leandrohermida.com> wrote:
>>> > Hi Nate,
>>> >
>>> > Thanks for the ping, have fun at the conference!
>>> > On Tue, May 24, 2011 at 11:22 AM, Nate Coraor <nate@bx.psu.edu> wrote:
>>> >>
>>> >> Hi Leandro,
>>> >>
>>> >> The Galaxy Team has recently been preparing for and traveling in
>>> >> advance
>>> >> of the Galaxy Community Conference, which begins today.  Unfortunately
>>> >> I
>>> >> don't have an answer for you, but when we're all back at work next
>>> >> week,
>>> >> someone should be able to respond.
>>> >>
>>> >> Thanks,
>>> >> --nate
>>> >>
>>> >> Leandro Hermida wrote:
>>> >> > Hi again,
>>> >> >
>>> >> > Very sorry to ask again, just gotten no repsonse, but is this a
>>> >> > Galaxy
>>> >> > bug
>>> >> > or does anyone have a functioning tool that takes multiple datasets
>>> >> > as
>>> >> > an
>>> >> > input parameter??? i.e.
>>> >> >
>>> >> > <param type="data" multiple="true" ...  />
>>> >> >
>>> >> > regards,
>>> >> > Leandro
>>> >> >
>>> >> > On Thu, May 19, 2011 at 7:15 PM, Leandro Hermida
>>> >> > <softdev@leandrohermida.com
>>> >> > > wrote:
>>> >> >
>>> >> > > Hi again,
>>> >> > >
>>> >> > > I tried changing the format to txt and tabular which I have other
>>> >> > > datasets
>>> >> > > in my history and still the same error and stack trace in Galaxy.
>>> >> > >
>>> >> > > Is it possible at all to have a select multiple of datasets as an
>>> >> > > input
>>> >> > > parameter??
>>> >> > >
>>> >> > > best,
>>> >> > > Leandro
>>> >> > >
>>> >> > >
>>> >> > > On Thu, May 19, 2011 at 6:59 PM, Leandro Hermida <
>>> >> > > softdev@leandrohermida.com> wrote:
>>> >> > >
>>> >> > >> Hi Galaxy developers,
>>> >> > >>
>>> >> > >> Something seems maybe to be wrong with the format="html" type...
>>> >> > >> I
>>> >> > >> forgot
>>> >> > >> to add before that my tool input param the format="html"
>>> >> > >> attribute:
>>> >> > >>
>>> >> > >> <param type="data" multiple="true" format="html" name="input1" />
>>> >> > >>
>>> >> > >> In another tool I have it outputs format="html" and this works
>>> >> > >> and
>>> >> > >> displays in Galaxy just fine. I would like to use multiple of
>>> >> > >> these
>>> >> > >> output
>>> >> > >> datasets in my history as the input for this other tool but
>>> >> > >> something
>>> >> > >> seems
>>> >> > >> to be wrong if you try to do this?
>>> >> > >>
>>> >> > >> a bit lost,
>>> >> > >> Leandro
>>> >> > >>
>>> >> > >>
>>> >> > >> On Thu, May 19, 2011 at 3:30 PM, Leandro Hermida <
>>> >> > >> softdev@leandrohermida.com> wrote:
>>> >> > >>
>>> >> > >>> Hi,
>>> >> > >>>
>>> >> > >>> I have a tool where the input is multi-select of datasets, e.g.:
>>> >> > >>>
>>> >> > >>> <param type="data" multiple="true" name="input1" />
>>> >> > >>>
>>> >> > >>> I tested it to see what it would pass to my command and I get
>>> >> > >>> the
>>> >> > >>> following debug page and error in Galaxy:
>>> >> > >>>
>>> >> > >>> AttributeError: 'list' object has no attribute 'missing_meta'
>>> >> > >>>
>>> >> > >>> The last part of the stack trace looks like:
>>> >> > >>>
>>> >> > >>> >>  validator.validate( value, history )
>>> >> > >>> Module galaxy.tools.parameters.validation:185 in validate
>>> >> > >>>
>>> >> > >>> history <galaxy.model.History object at 0xb8ea190>
>>> >> > >>> self
>>> >> > >>>  <galaxy.tools.parameters.validation.MetadataValidator
>>> >> > >>> object
>>> >> > >>> at 0xb8e6250>
>>> >> > >>> value [<galaxy.model.HistoryDatasetAssociation object at
>>> >> > >>> 0xa255550>,
>>> >> > >>> <galaxy.model.HistoryDataset ... Association object at
>>> >> > >>> 0xb8ea210>]
>>> >> > >>>
>>> >> > >>> >>  if value and value.missing_meta( check = self.check, skip =
>>> >> > >>> >> self.skip
>>> >> > >>> ):
>>> >> > >>> AttributeError: 'list' object has no attribute 'missing_meta'
>>> >> > >>>
>>> >> > >>> What am I doing wrong?
>>> >> > >>>
>>> >> > >>> regards,
>>> >> > >>> Leandro
>>> >> > >>>
>>> >> > >>>
>>> >> > >>
>>> >> > >
>>> >>
>>> >> > ___________________________________________________________
>>> >> > Please keep all replies on the list by using "reply all"
>>> >> > in your mail client.  To manage your subscriptions to this
>>> >> > and other Galaxy lists, please use the interface at:
>>> >> >
>>> >> >   http://lists.bx.psu.edu/
>>> >>
>>> >
>>> >
>>>
>>> ___________________________________________________________
>>> Please keep all replies on the list by using "reply all"
>>> in your mail client.  To manage your subscriptions to this
>>> and other Galaxy lists, please use the interface at:
>>>
>>>  http://lists.bx.psu.edu/
>>
>>
>>
>> --
>> Kip Lord Bodi Jr.
>> Tufts University School of Medicine
>> 136 Harrison Avenue, South Cove 502
>> Boston, MA 02118
>> 617-636-3763
>> kip.bodi@tufts.edu
>> www.tucf.org | genomics.med.tufts.edu
>
>
>
> --
> Kip Lord Bodi Jr.
> Tufts University School of Medicine
> 136 Harrison Avenue, South Cove 502
> Boston, MA 02118
> 617-636-3763
> kip.bodi@tufts.edu
> www.tucf.org | genomics.med.tufts.edu
>



--
Kip Lord Bodi Jr.
Tufts University School of Medicine
136 Harrison Avenue, South Cove 502
Boston, MA 02118
617-636-3763
kip.bodi@tufts.edu
www.tucf.org | genomics.med.tufts.edu