Siebel SmartScript Administration Guide > Customizing a SmartScript User Interface >

Controlling the Questions Displayed on a Page

It is often convenient to place multiple questions on the same subject into a single page. If the resulting page is a serviceable unit, you can use and reuse this same page in different contexts, effectively reusing the same questions and question-controls to accomplish the same immediate tasks, but with a different higher-level goal.

SmartScript displays at once to the user all of the questions in a page section. A page section is a logical subset of all of the questions between page breaks. Page breaks are dynamically determined by SmartScript based on the following rules:

  • A branch leads from a question to a new page or the end of the script.
  • The last question on a page is completed.
  • One of SmartScript's implicit page break rules causes a break.

About SmartScript's Implicit Page Break Rules

Sometimes a question cannot appear on the same page with a preceding or following question, regardless of other design criteria that you may be considering, because of the mechanisms involved in a question's definition. SmartScript processes each question, and if the processing of a question requires certain events, then SmartScript may have to end (or break) the current page to perform those events in a logical order.

For example, if a question has dynamic text substitution defined for it where the answer of the previous question determines the text for the question, then clearly there must be a page break between these questions. Or, a question may have code executed when the question is completed to check some values in the question answer before moving to the next question.

To determine where to break a page, SmartScript applies the following rules:

  • If a question has a VB leave event such as Question_PreBranch, Question_PreLeave, or Question_Leave, SmartScript will always break a page after that question.
  • If a question has a VB enter event such as Question_Enter or has a Search Spec, the page will always break before that question.
  • If a question uses a User Parameter or a Buscomp Field to do Auto Substitution and a previous question in the same section sets that User Parameter or Buscomp Field (through Save Field), SmartScript will break a page before that question.
  • If a question is on a Save BusComp and that buscomp is not positioned on any record, SmartScript will break the page before that question, unless the first question in that page is also on the same buscomp. This rule allows new records to be created.

SmartScript's implicit page break rules are based on the options used to define a question. As you work with these options, you should always consider their effects with respect to information flow and page design. It is often possible to put off a question that will cause a mandatory page break until you actually want the page to end. Or, it is often possible to move the location of VB or eScript code to a different location in the script in order to limit page breaks.

NOTE:  You can manipulate SmartScript's implicit page break rules and exploit them to change the way questions are arranged into pages. For example, it is possible to add null or comment VB code that triggers a certain type of page break without including code that actually causes any other effect.

Siebel SmartScript Administration Guide