Pieter,

Thanks for the detailed description of the problem. I have created a
Trello card here - https://trello.com/c/H5u4HrC3. I think what you
have laid out is reasonable - I am not sure how difficult it would be
to implement but it sounds like a good first step. Not sure I will be
able to find the time to work on it soon or that it is a tier 1
priority for the team - but it is definitely on my radar.

-John



On Wed, Sep 3, 2014 at 5:47 AM, Lukasse, Pieter <pieter.lukasse@wur.nl> wrote:

Hi John,

 

Thanks for the reply. I think that for the workflow it would be good to have the conditionals and dynamic options working at least in one of the places, i.e. either in the workflow editor (so that options can be chosen at design time) or in the workflow runner (so that options can be chosen at runtime). At this moment, neither of these really cover the functionality that you get with the normal tool form, which to me is not intuitive at all and a bit of a surprise (also surprised with myself that I only noticed this now ;). See also my screenshot showing that dynamic options are not presented in the workflow editor.

 

So my initial proposal would be to at least show the dynamic options in the workflow design time, which would let the workflow design time tool functionality be the same as in the tool form, since the design time already supports restructuring itself based on conditionals for example.

 

Best regards,

 

Pieter.

 

 

 

 

 

-----Original Message-----
From: John Chilton [mailto:jmchilton@gmail.com]
Sent: dinsdag 2 september 2014 14:20
To: Lukasse, Pieter
Cc: Peter Cock; galaxy-dev@lists.bx.psu.edu
Subject: Re: [galaxy-dev] "when else" in <conditional> ? RE: refresh_on_change : is this a valid attribute? Any other ideas/options??

 

Galaxy's handling of dynamic options has some restrictions for sure outlined here and it is true that conditional test parameters cannot be set at runtime in workflow execution (the workflow form doesn't have the ability to restructure itself based on the conditional the way the tool form does).

 

Aysam has started work on the tool form rewrite and hopefully this will provide some opportunities for a greater amount of dynamism - but those dynamic_options present some problems for moving stuff to the client side - since they require a Python 'eval'. At any rate there is a lot of work to do - especially if the desired end game is to get such parameters to work with workflow execution.

 

Sometimes one can get the same effect as the page construct by splitting the tool into two - one that generates a config file or something and one that actually performs the computation. This is an unsatisfying solution in many ways though.

 

Anyway - I don't have any great ideas on this issue - I have created a Trello card for Peter's conditional ideas https://trello.com/c/Ud7uut7R (and to collect some other open ones).

 

-John

 

On Sat, Aug 30, 2014 at 8:42 AM, Lukasse, Pieter <pieter.lukasse@wur.nl> wrote:

> Hm...and now I’m completely stuck because apparently a conditional

> cannot be set at runtime in a workflow...? Ideas anyone?

> 

> 

> 

> Thanks,

> 

> 

> 

> Pieter.

> 

> 

> 

> 

> 

> 

> 

> From: galaxy-dev-bounces@lists.bx.psu.edu

> [mailto:galaxy-dev-bounces@lists.bx.psu.edu] On Behalf Of Lukasse,

> Pieter

> Sent: zaterdag 30 augustus 2014 14:22

> To: 'Peter Cock'

> 

> 

> Cc: galaxy-dev@lists.bx.psu.edu

> Subject: Re: [galaxy-dev] "when else" in <conditional> ? RE:

> refresh_on_change : is this a valid attribute? Any other ideas/options??

> 

> 

> 

> Yes, adding a "<when else>" option would be nice. However, what I

> really would like to have is a way to tell in one select box which

> other select

> box(es) should be refreshed when its value is changed by the user. For

> example:

> 

> 

> 

> 

> 

> <param name="cmb_col_type" type="select" label="Select column type"

> param_to_refresh_on_change="cmb_polarity"

> 

>                 display="radio"

> dynamic_options='get_column_type(library_file)'

> 

>                 help="" />

> 

> 

> 

>       <param name="cmb_polarity" type="select" label="Select polarity"

> 

>              display="radio"

> dynamic_options='filter_column(library_file,cmb_col_type)'

> 

>                 help="" />

> 

> 

> 

> So when cmb_col_type is changed, the dynamic_options of cmb_polarity

> are generated again by a new call to the function configured. I can

> create a Trello card, but I’m just wondering whether this is not

> already being planned by the team, especially with the Javascript/AJAX

> rework that is now planned/going on(?) for some time on the user interface?

> 

> 

> 

> Regards,

> 

> 

> 

> Pieter.

> 

> 

> 

> -----Original Message-----

> From: Peter Cock [mailto:p.j.a.cock@googlemail.com]

> Sent: zaterdag 30 augustus 2014 0:58

> To: Lukasse, Pieter

> Cc: galaxy-dev@lists.bx.psu.edu

> Subject: Re: [galaxy-dev] "when else" in <conditional> ? RE:

> refresh_on_change : is this a valid attribute? Any other ideas/options??

> 

> 

> 

> On Fri, Aug 29, 2014 at 11:43 PM, Lukasse, Pieter

> <pieter.lukasse@wur.nl>

> wrote:

> 

>> So I need to refresh on change....I see that if I have a conditional

> 

>> item in my form, this causes a refresh of the page and a

> 

>> (re)evaluation of my dynamic_options methods....so I could misuse

>> this “feature”.

> 

> 

> 

> This is deliberate, although there has been talk of updating the

> conditional code to do the dependent parameters dynamically rather

> than server-side with a page refresh.

> 

> 

> 

> From your outline description, I think you should be using the Galaxy

> <conditional> tag.

> 

> 

> 

>> However, it seems that when I have a <conditional> I must have a

> 

>> <when> entry for every item in my select box. There is no “when else”

> 

>> option?

> 

> 

> 

> I think you are right - I've asked in the past about this, e.g.

> 

> this discussion which appears not to have been fully on the mailing

> list

> though:

> 

> 

> 

> http://dev.list.galaxyproject.org/Multiple-values-in-lt-when-gt-tags-f

> or-lt-conditiona-gt-parameters-tc4659704.html#none

> 

> 

> 

> This probably deserves to be tracked with a Trello Card...

> 

> 

> 

> Peter

> 

> 

> ___________________________________________________________

> 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/

> 

> To search Galaxy mailing lists use the unified search at:

>   http://galaxyproject.org/search/mailinglists/