| string.expression | Index Level | substring assignment |
| Syntax |
SUBROUTINE {(argument.list)}
SUBROUTINE subroutine.name{(argument.list)} |
| Category | BASIC |
| Type | Statement |
| Description |
defines program as an external subroutine.
FlashBASIC provides the ability to "call subroutines". The "subroutine" statement must appear on the first line of an external subroutine invoked by a "call" statement. Arguments defined in the optional "argument.list" are delimited by "," (commas). The "argument.list" must have the same number of arguments as are in the "call" statement. If a subroutine is called from the Update processor, in either a file-defining item, or an attribute-defining item, no "argument.list" may be specified by the "call" statement. If called from a file-defining item, the "item" being filed is automatically passed as a parameter in a call. If called from an attribute-defining item, the current value of the attribute being processed is automatically passed. Note that the subroutine will be called once for every value in the attribute. A subroutine exits with a "return" statement. All external subroutines must be cataloged prior to execution. |
| Options | |
| See Also | statements & functions ENTER PRECISION CLEAR hotkey0 hotkey1 hotkey2 hotkey3 hotkey4 hotkey5 hotkey6 hotkey7 hotkey8 hotkey9 date.iconv CALL RETURN x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 COMMON ACCESS GOSUB |
| Example |
*program main
10 input start.date call validate.date(start.date,ok) if not(ok) then goto 10 This example prompts for a date and calls the external subroutine "validate.date" to make sure the date is legal. Here is the subroutine: subroutine validate.date(pdate,ok) * may need rework for years crossing 2000 if pdate matches "1n0n1x1n0n1x2n0n" then if iconv(pdate,'d') # "" then ok=1 end else ok=0 end end else ok=0 end return The variable "ok" is set to 1 if the date is valid. Otherwise, "ok" is set to zero (false). |
| Warnings | |
| Compatibility | D3 7.0 AP R83 |
| string.expression | Index Level | substring assignment |