[Catalyst] Suggestions on how to handle 12 page form

Mike Raynham catalyst at mikeraynham.co.uk
Wed Nov 17 07:36:24 GMT 2010


On 16/11/10 22:01, Hauck, William B. wrote:
> Hi.
>
> I'm working on the project request section of our new project tracking system.  The request form is broken up into 12 pages-yes, lots and lots of data to be submitted.
>
> Anyone have any experience / advice on how to handle that many fields?  Should I use a single subroutine to handle it all based on a "page" variable?  Or, should I simply have a subroutine per page?  How about going back to correct something the user messed up during initial entry-we want to show a summary of the data before final submission.
>
> Any help is appreciated.
>
> Thanks,
>
> bill
>
> CONFIDENTIALITY NOTICE: This E-Mail is intended only for the use of the individual or entity to which it is addressed and may contain information that is privileged, confidential and exempt from disclosure under applicable law. If you have received this communication in error, please do not distribute and delete the original message.  Please notify the sender by E-Mail at the address shown. Thank you for your compliance
>
> _______________________________________________
> List: Catalyst at lists.scsys.co.uk
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> Dev site: http://dev.catalyst.perl.org/

In the UK, HMRC tax self assessment forms can be completed online.  The 
process comprises many pages - essentially one big form that has been 
split into logical sections.  I last completed this a few months ago, so 
what follows may not be entirely accurate...

The user is able to advance through the form one page at a time.  At the 
end of each page there is an option to save the current page, and an 
option to continue to the next page.  I think it is possible to 
partially complete pages (where, for example, the user doesn't have all 
the information to hand), and return to them later.  The save option 
allows the user to save the form in its current state, logout, and 
return at a later date.

Each page is validated in real time using JS and also when the page is 
submitted.  There is a vertical menu which shows all the sections. 
Completed sections are highlighted, and it is possible to return to 
these at any time to make amendments.

Once the whole form has been completed, you have the option to finalise 
and submit it.  After this final submission, it is not possible to go 
back and make any changes.  From my experiences, the system works quite 
well.  Completing the whole form can be a lengthy process, so being able 
to move around between the pages, and complete the form over multiple 
sessions is very useful.



More information about the Catalyst mailing list