|
OK, but you don't need to lose that flow when you move to the web.I agree it can be done. Basically, you implement your own stack. But that requires a different thought process than is often the norm in web application development. Most web applications don't have a "done" concept; the closest you get is the end of a transaction where they print the page, or a "Home" button.
There's no reason you can't have a flow between pages in a web world,
and that includes two different "entry points" into a common multi-page
flow where at the end of the flow you return to the "correct" place.
We've been doing it in web apps for years. There are two ways we've
accomplished this, both have advantages.
The simpler way is to pass a parm to the "common flow" telling it where
to return when it's done. We (and others I've seen use this concept)
tend to call it the retURL, short for "return URL" so you're basically
telling the target flow, when you're complete redirect to the retURL
url. Simple enough. The nice thing is, if you do your urlencoding
correctly you can move from flow to flow to flow and the retURL just
keeps getting bigger. The problem with this approach is there is a limit
to how big the URL can be. IE seems to have problems w/URLs > 4K. It
takes a while to get there, but if you've got long URLs to begin with,
then a couple of loops and you're there.
Second way requires more infrastructure, but it works better. Basically
the same concept, but instead of using the URL to hold the "done stack"
(named because we have actions in our app called "done" that takes you
back to the last logical entry point, eg F3) you store the stack in a
database table. If a page wants to register itself as the "done" target
it simple writes itself into the stack. When you need to process the
done action you look at the last URL on the stack and go there.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.