Desktop User Guides > Professional > Interview scripting > Writing interview scripts > Displaying information on a page > Navigation buttons > Labels on navigation buttons
 
Labels on navigation buttons
The interviewing program uses default texts for the buttons that it displays on each page. You can change these texts so that, for example, the Previous button is labeled Back or << instead. You can also translate these texts so that the button labels appear in the same language as the rest of the questionnaire.
For all projects
The default button names are defined in the StandardTexts.mdd file in C:\Program Files\Common Files\IBM\SPSS\DataCollection\<version> IOM, and translations are available in a number of languages. You can change these default texts using MDM Label Manager, or you can use Translation Utility to add translations in other languages. If you want to change button labels for certain projects only, you can define the new names in the metadata section of the script.
If you change StandardTexts.mdd, you must stop and restart IIS to have the changes recognized. If you are running Windows 2003, you can stop and restart the UNICOM Intelligence Interviewer - Server application pool rather than restarting IIS if you prefer; this has the advantage of not affecting any other applications that are using IIS.
For all pages in a script
To define replacement labels for navigation buttons throughout a single project, put the following statement in the metadata section of the interview script:
StandardTexts block fields
(
  Navigations block fields
  (
<button_name_1> "<text> 1" info;
    <button_name_2> "<text> 2" info; ...
  );
);
where:
<button_name_1> is the name of the navigation button, one of: Next, Prev, First, Last, GoTo, and Stop.
<text> is the replacement text.
You can define any number of replacement texts just by listing them one after the other inside the Navigations block. For example:
StandardTexts block fields
(
Navigations block fields
  ( Next "Forward" info;
    Prev "Back" info;
  );
);
changes the labels for the Next and Previous buttons but leaves the labels of the others unchanged.
For individual questions
If you want to use different navigation labels for just one question in a script, you define them in the metadata section as a helper text related to the question. Write the question’s definition as normal and then insert the helperfields block at the end of the definition:
<question_name> "<text>" <definition>
  helperfields
  (
    StandardTexts block fields
    (
      Navigations block fields
      (
        <button_name> "<button_text>" info;
      );
    );
  );
where:
<question_name> is the question name.
<text> is the question text.
<definition> is the remainder of the usual question definition, including the question type, length, and so on.
<button_name> is the name of the navigation button, and is one of: Next, Prev, First, Last, GoTo, and Stop.
<button_text> is the replacement text.
For groups of questions
If you want to make the same changes to a set of consecutive questions, you can use inserts: see Programmatically inserting text into labels. Inserts are normally used for text substitution in question and response texts but they work equally well with navigation buttons. Start by adding a StandardTexts block to the metadata section defining the buttons whose labels you want to change and specifying a unique insert name for each one. For example:
StandardTexts "StandardTexts" block fields ( Navigations "Navigations" block fields ( Next "{Ins}" info; ); );
Then, in the routing section, add statements at the appropriate points that define the values of the insert labels:
IOM.Navigations[NavigationTypes.<button_name>].Label.Inserts["<insert_name>"] = "<button_text>"
where:
<button_name> is the name of the navigation button, and is one of: nvNext, nvPrev, nvFirst, nvLast, nvGoto, and nvStop.
<insert_name> is the name of the variable that represents the button’s text in the Navigations block in the metadata section.
<button_text> is the replacement text.
For example:
IOM.Navigations[NavigationTypes.nvNext].Label.Inserts["Ins"] = ">>>"
This example defines a Next navigation button that has >>> as its label, instead of the word “Next”.
Whenever you want to change the button labels, just write another of these statements at the appropriate point in the routing section.
See also
Navigation buttons