Ethan Jucovy wrote:
> I don't know of a plugin that does this but it sounds very useful,
> I'm looking forward to seeing it. 
> 
> How would propagation "parentness" be determined?  Would you look
> directly to the MasterTicket fields or rely on some kind of
> interface?  I've only skimmed the recent threads on subtasks, sorry
> if this has already been discussed on one of them.   

As I developed the concept, I realized this might apply to
MasterTickets, too.  My plan was to have a list of ticket "link" fields
(e.g., parents for Subtickets or parent for ChildTickets, blockedby for
Master Tickets, etc.) so you could configure what fields to look at.
The plugin would do something like:

get ticket's dependent (parent, predecessor, successor, etc.)
if dependent != None:
    for field in rollup.fields:
        if current's old value and new value differ:
            get dependent's value for field
            switch rollup.%s.method % field:
                case 'min':
                    if dependent's value > current's new value:
                        set dependent's value to current's new value
                case 'max':
                    if dependent's value < current's new value:
                        set dependent's value to current's new value
                case 'sum':
                    dependent's value = dependent's value - 
                                     current's old value + 
                                     current's new value

> In the TimingAndEstimation case, and presumably others, propagation
> could lead to misleading reports -- e.g. doubling the estimated time
> for a set of tickets by counting the fields twice.  Solving that
> automatically and in a generic way seems hard.  The user can probably
> deal with that (and I bet a sufficiently clever SQL report could
> account for it).     

I'm not sure how that's going to work.  One answer would be to only
query leaf nodes for that kind of report.  OTOH, if you're looking at a
top-level ticket, the values were already rolled up so you can just look
at it and no report is needed.

-- 
You received this message because you are subscribed to the Google Groups "Trac 
Users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/trac-users?hl=en.

Reply via email to