Cascading

  Previous topic Next topic JavaScript is required for the print function Mail us feedback on this topic! Mail us feedback on this topic!  

   Multi-Choice*Lists* offer tremendous possibilities for presenting long lists of choices using a single term. Further, if you nest *Lists* within other *Lists*, you can allow a user to select from progressively 'narrower' sub-topics nested beneath the main topic (this is referred to as 'cascading').

   For example, let's say that you manage many real estate holdings of a variety of types. You want the selection of one type of property from a MultiChoice *List* presented in the main document to automatically present sub-list from which topical (and more limited) choices can be made. Here is what you might try:

   First, create a MCL for the 'parent' choices. In the above example, you might give the parent *List* a name like "Property Types" (typed in the left column of the MCL table), with the listing of the types of property that you manage in the right column.

Property Types

Residential/Office/Commercial, Service/Commercial, Heavy Industry

   Next, create a separate MCL for each Property Type. Place the sub-types at the left and the various sub-sub-types at the right. This is how the rest of the MCL list might appear:

Residential

Single Family/Duplex/Condominium/Apartment

Office

Single tenant/Dual unit/Office Building/Office Park

Commercial, Service

Retail/Restaurant/Furniture/

Commercial, Heavy Industry

Manufacturing/Distribution/Mining

   You can continue the nesting to an unlimited number of levels simply by creating new entries for each sub-listing.

   Now on to the actual document assembly steps:

1.At a strategic location in your source document, type an options block that looks like this: {*Property Type*}.

The preceding uses the 'simplified options' block layout. You can use a 'standard' options block if desired: <<*Options**Property Type*>> (the double asterisks in the center are correct) .

2.Save the document in an appropriate book.
3.Assemble your document. During the first phase of assembly, the options block will be processed and you will be presented with the choices associated with {*Property Types*}. Select one of the choices presented and it will replace the options block.
4.Pathagoras will detect the existence of a 'nesting' (another child *List* represented by one of the terms in the parent *List*. When it does so, it presents to you a choice of how you want the next list to be handled. The choices are to present another {*Options*} list which will be further processed, or to present the choices as a [*Variable*]. If a [*Variable*], no further processing is done. Rather, the variable is inserted (but left intact) in the draft document, ready for selection when you call up the Instant Database system. If you know that you want the lowest level of nested choices to be presented as variables, you can pre-formate that lowest level of choices with "[*" and "*]" markers. When a [*Variable*] is called into the IDB screen, all choices are be displayed in dropdown list fashion alongside of the variable name, and no {*Options*} or [*Variable*] selection need be made.
5.You can 'cascade' Multichoice *Lists* called in as <<*Options*>> or {*Simplified Options*} text by selecting on of the radio buttons that will appear at the bottom of the selection screen. Choose from the ()Variables or ()Options
6.You can 'cascade' Multichoice *Lists* which you wish to use as variables the by following two rules:
The *Lists* must be on the same page and adjacent to one another in the Instant Database screen. This can generally be accomplished by placing them together within the form document, with no intervening variables between them.
The first element must reflect the top-level. In the above example, [*states*] would appear exactly in that fashion. The next level is the top lever with the addition of the word "Sub". e.g., [*states*sub]. (The 'sub' means that it is a sub-category of 'states'.

Page url: http://www.pathagoras.com/help/index.html?multi_choice_lists_advanced.htm