Here's an example of what I am trying to do - suppose I have an app
that tracks a sales pipeline in which each opportunity moves through a
series of stages (ending with either a closed sale or a lost sale).
In most daily usage, all I need to know is the current status.  The
challenge is that I also want to be able to look back and see how each
opportunity progressed (how far and how fast did it go before it
resolved as either closed or lost).

The approach I tried is to have a separate 1-many table with the
related_opportunity_id, the stage, and the date moved.  That way, each
time an opportunity moved to the next stage, a record would be
created.  This is the approach I tried, but I cannot find a way to
select only the most recent entry for each opportunity to show in
reports or edit forms.
 I once wrote a similar application in MS Access and used this
method;  I created a query to show me only the most recent stage for
each opportunity, and joined that query (rather than the whole table
of stage records) back to the opportunities table.  As I understand
it, based on a thread from last April on this list, web2py does not
have a similar mechanism to join the result of a db().select() back to
another table in a subsequent select.  Am I correct in that?  If so,
is there a better way to do this in web2py?

any ideas on either making this approach work in web2py or a totally
different approach would be much appreciated.

Thanks,
Philip

Reply via email to