• <Helps for GetStart>
  • CSPro User's Guide
    • The CSPro System
    • Data Dictionary Module
    • The CSPro Language
    • Data Entry Module
    • Batch Editing Applications
    • Tabulation Applications
    • CSPro Statements and Functions
      • Statement Format Symbols
      • Alphabetical List of Functions and Statements
      • List of Reserved Words
      • Deprecated Features
      • Declaration Statements
      • Array Object
      • Audio Object
      • Barcode and QR Codes
      • Document Object
      • File Object
      • Freq Object
      • Geometry Object
      • HashMap Object
      • Image Object
      • List Object
      • Map Object
      • Path
      • Pff Object
      • SystemApp Object
      • ValueSet Object
      • Program Control Statements
        • Break Statement
        • Do Statement
        • Exit Statement
        • For Statement
        • ForCase Statement
        • For (Dictionary) Statement
        • If Statement
        • Next Statement
        • Universe Statement
        • When Statement
        • While Statement
      • Assignment Statements
      • Data Entry Statements and Functions
      • Batch Edit Statements
      • Numeric Functions
      • String Functions
      • Multiple Occurrence Functions
      • General Functions
      • Date and Time Functions
      • External File Functions
      • Synchronization Functions
      • Export Attributes
    • Templated Reporting System
    • HTML and JavaScript Integration
    • Appendix
  • <Helps for CSEntry>
  • <Helps for CSBatch>
  • <Helps for CSTab>
  • <Helps for DataViewer>
  • <Helps for TextView>
  • <Helps for TblView>
  • <Helps for TRSWin>
  • <Helps for CSDeploy>
  • <Helps for CSPack>
  • <Helps for CSFreq>
  • <Helps for CSSort>
  • <Helps for CSExport>
  • <Helps for CSReFmt>
  • <Helps for CSDiff>
  • <Helps for CSConcat>
  • <Helps for TRSSetup>
  • <Helps for ParadataViewer>
  • <Helps for ParadataConcat>
  • <Helps for CSIndex>
  • <Helps for Excel2CSPro>
  • <Helps for CSWeb>

If Statement

 

Format:

if condition then   [ ] indicates that this part is optional.

  statements;

[elseif condition then

  statements;]

[else

  statements;]

endif;

 

Description:

The if statement executes different statements based on the value of "condition". The condition following the if command is evaluated. If the condition is true, then the statements following it are executed and execution moves to the first statement after the endif keyword. If the condition is false, execution moves to the first elseif keyword or the else keyword (if there are no elseif keywords).

 

The elseif blocks are evaluated in the same way as the first if block. When CSPro finds a condition that is true it executes the statements following it and moves to the first statement after the endif keyword. If all the conditions are false, the statements following the else keyword are executed. If none of the conditions are true and there is no else keyword, execution moves to the first statement after the endif keyword without the execution of any statements within the if statement.

 

Every if statement must contain an endif keyword. However, if multiple elseif keywords are nested within an if block, they may be terminated with a single endif keyword. The statements within the if statement can be any number of CSPro statements. If a condition contains an inequality (e.g., >, <, >=, <=) and one of the values tested in the inequality is a special value (e.g., MISSING, REFUSED, NOTAPPL, or DEFAULT), the result of the condition is false and execution skips to the statement following the else.

 

Example:

if X = 3 then

  z = 6;

elseif x in 4:5 or y in 7:9,12 then

  z = 7;

else

  z = 8;

endif;

See also: When Statement, Recode Statement