ProvideX V8.20 > Language Reference > 2. Directives
76
DEFAULT Directive
              Branch If No Matching Case
Format
DEFAULT; logic$
Where:
logic$
Procedure to handle default (undefined) cases in a case structure. It
doesn't have to be on the same line as the DEFAULT directive, but it
can be if you include the semicolon.
Description
Use the DEFAULT directive to create branch points to handle situations where there is
no corresponding CASE. If a matching case is not found and the DEFAULT is found,
execution continues at this point.
Note: Refer to SWITCH..CASE Branch Control, p.329, for complete syntax.
See Also
SWITCH..CASE Branch Control, p.329
BREAK Immediate Exit of Loop, p.33
CASE Define Branch Points, p.42.
Examples
00100 PROCESS_TAXCODE:
00110  LiquorTax=0,SalesTax=0,ServiceTax=0
00120  SWITCH UCS(TaxCode$)
00130  CASE "X","Z" ! two codes are tax exempt
00140  BREAK ! stop processing for case "X" here
00150  CASE "L" ! liquor pays all liquor,sales and service tax
00160  LiquorTax=cost*LiquorTaxRate
00170 ! no break here, logic falls through
00180  CASE "S" ! pays sales and service tax
00190  SalesTax=cost*SalesTaxRate
00200 ! no break here, logic falls through
00210  CASE "V" ! service tax
00220  ServiceTax=cost*ServiceTaxRate
00230  BREAK ! end processing for this case and any that fell through
00240  DEFAULT ! enter here if case not found
00250  MSGBOX "Unknown tax code","Error"
00260  END SWITCH
00270  TotalTax=LiquorTax+SalesTax+ServiceTax
00280  RETURN