System Functions
Top  Previous  Next

SSI Web includes a number of functions that can be used to display information to the screen, within skip logic, within constructed list logic, and in other fields within the SSI Web menu system.

The "SSI Script" column below gives the syntax for System Functions.
         
SSI Script:
Description:
Answered(QuestionName)
Is true if the question was answered by the respondent, false otherwise.
More info
Browser()
Returns information on respondent's browser.
Debug()
Returns debug information that assists you when testing the questionnaire.
DisplayTotal (FirstQuestionName, 
  LastQuestionName, Width)
Returns a greyed out box displaying the total of all questions beginning with FirstQuestionName and ending with LastQuestionName. Useful when using Free Format questions to implement custom constant sum CBC questions. May also be used for non-CBC questions.
EncodeForURL(QuestionName)
Converts characters that are not valid for use in URLs to URL-supported strings.
GraphicsPath()
Returns the system graphics path.
IPAddress()
Returns respondent's IP Address.
JavaScript()
Is true if they have JavaScript, false otherwise.
More info
Label(QuestionName)
Returns the label that is associated with the answer to a single select response type question.
LinkButton("URL")
Returns an HTML "submit" button (this helps in linking surveys).
NumChecked(QuestionName)
Returns number of response options checked. QuestionName can be a select checkbox (i.e. Q1), a row or column of checkboxes (i.e. Q1_r1 or Q1_c1), or a Free Format question (i.e. Q1_checked).
OperatingSystem()
Returns information on Respondent's operating system.
PageNumber()
Returns current page number.
PopUp("Link Text", "File.htm", Width, Height)
Returns the HTML for a JavaScript pop-up. File.htm is assumed to be in the graphics folder. Or, File.htm can be elsewhere if referenced with full http:// path. More info
ProgressBar()
Returns the progress bar to the screen. Typically placed in the Global Header or Global Footer.
RandNum(Seed)
RandNum(Seed, Min#, Max#)

Returns a random number. If one parameter is given, returns a uniform random decimal value between 0 and 1. If three parameters are given, returns a random integer value from Min# to Max#. Seed must be an integer.
More info.
RespNum()
Returns the internal respondent number converted to an integer.
RespNumLabel() 
Returns the internal respondent number as converted to a label (letters) or a "string".
Shown(QuestionName)
Is true if the question has been seen by the respondent, or false if the question was not seen by the respondent.
More info
SysRand()
SysRand(Min#, Max#)
Returns a random number seeded by the system clock (different seed every time instruction is encountered).
SystemTime() 
Returns the number of non-leap seconds since January 1, 1970
TabWidth()
Returns the global tab width specified in global settings
TotalPages()
Returns total number of pages in study.
UserAgent()
Returns respondent's User Agent.
Value(QuestionName)
Returns the value of the question as it is recorded in the STUDYNAMEdat.cgi file. More Info.


For additional flexibility in SSI Scripting, see the Unverified Perl documentation.



Notes on use of Value (QuestionName) function:

The Value (QuestionName) function returns the value of the question as recorded in the data file. It can be used with various questions:

·Numeric, Open-End or Select (radio) question types:  
[%Value(G3)%] where G3 is the name of a question  

·Select (check box) question types:  
[%Value(G3_1)%] where G3 is the name of a question, the number after the underscore indicates the response item#, and the value returned is "1" (checked) or "0" (not checked)  
 
·Grid question type  
[%Value(G3_r2_c3)%] where G3 is the name of a grid question, and the response is in a particular row (_r#) and column (_c#)