Compatibility: Version 6.7.x and 6.8.x
Recently a new developer asked about using scroll bars on input forms. This tech tip is meant to provide an understanding of why the use of scroll bars should be avoided on input forms, and why buttons or a tabbed interface should be used in their place. The reasons to avoid using scroll bars on input forms have to do with basic form design concepts. These reasons are not specific to 4th Dimension.
There is a logical dependency between the information in fields on a form. For example, a user is dependent on viewing both First Name and Last Name fields in order to know who a person is. Therefore, it makes sense to have First Name and Last Name fields in view at the same time. Of course, this is obvious, but it is an important concept. The same thing is true when viewing a person's address; you would need to know the person to whom the address belongs, so you would want to have the First Name and Last Name fields in view at the same time as the address. Therefore, a fundamental principle of form design is that, what is in view should represent a logical unit or units of thought, or items that have a logical dependency. Why? Because people think in logical groupings. Given that, if scroll bars are used, some of the fields that make up a logical unit of thought may be out of view. This makes the form harder to use by requiring scrolling back and forth to refer to the fields that are not in view. Such a design is frustrating to use because it slows users down.
Based on the understanding that people think in logical groupings, when the logical dependencies between fields break down into separate groups, fields may be grouped with a visual aid such as a box (perhaps with a label).
Alternately, the next logical grouping of fields may be placed in a separate view (on a separate page), because too much information on a page can be visually confusing, and makes it harder for users to remember where things are located.
Therefore when the number of fields goes beyond what will fit in a view, it is best to put the next discreet logical group of fields in another view, by using separate pages of forms. Then, use buttons or a tabbed interface to give users easy, logical access to the pages of the form, making the form fast and easy to use.