Prev and Cancel in Page Flow

Topics: Web Client Software Factory
Jan 22, 2007 at 9:38 PM
In many processes you can go back a previous step. Many processes can also be cancelled while part way through. There is currently not a Cancel or Prev in the current IPageFlow interface. What is the recommendation for handling Prev and Cancel actions inside the page flow?
Developer
Jan 23, 2007 at 2:06 AM
Hi,
You could think of 'Previous' as a transition to a specific page. In that case, you could add a transition named 'Back' to the page you want to support the 'previous' transition and from your controller call:

MyPageFlow.Navigate("Back");

To cancel a page flow, you can call from your controller:

MyPageFlow.Abort(true) // redirect to abort page after aborting
MyPageFlow.Abort(false) // do not redirect to abort page after aborting

Did this help?

Cheers,
Mariano Szklanny
http://staff.southworks.net/mariano
Jan 23, 2007 at 9:21 PM
Ah, yes. I had completely overlooked the Abort method. That should work great.

In regards to Previous, what I'm wondering is if we think navigating to a previous state is common enough that it warrants its own method. So there would be a Next() method and a Previous() method.
Jan 23, 2007 at 10:31 PM
Navigating to Previous state(step) is very common in wizard-like work flows. There are some more common requirements here:
1) Navigation to any of previous completed steps
2) Navigation to first not completed step
3) Navigation visualization and completion status - show all previous completed steps, current step and all the rest uncompleted steps. This as to account for conditional branches and "composite steps". Composite step is a step that consists of several separate pages which manifest themselves as one step(e.g. in navigation widget).

I would definitely want to see a guidance for work flows of such kind.
If someone thinks those flows are pretty simple i could post screen shot of WFF state machine work flow that models a wizard. That shot depicts a fairly simple flow. Still, you could hardly understand how it works :)
Jan 24, 2007 at 6:03 PM
This discussion has been copied to Work Item 7597. You may wish to continue further discussion there.