VARIABLE

Contents


Variable is used to declare arguments of a sub-programme, specifying that they have been passed by address.

 

Syntax

   Variable word_type list_var_dim

 

Parameters

Element

Description

Restrictions

word_type

One of the key words used for declarations:
Libelle, Shortint, Date, Integer, Decimal, Char.
For Char, the name of the
variable is then followed by ().

This must be an Adonix data type.

list_var_dim

List ofvar_dim separated by the character ','.

None.

var_dim

Variable expressed in one of the following forms:
nom_var ou nom_var '(' list_sep ')'

None.

nom_var

name_of_variable.

None.

list_sep

List of ',' separations (the place normally taken by the dimensions expression stays empty, and only the number of dimensions is therefore declared).

Not more than 3 separators, since the number of dimensions is limited to 4.

 

Examples

   # Declaration of Call arguments
   Subprog SOUS_TRAIT(ARGUM1, ARGUM2,  ARGUM3)
  
Variable Integer ARGUM1(,,) :# ARGUM1 is a 3 dimension table
   Variable Char ARGUM2()(,)   :# ARGUM2 is a 2 dimension table
  
Variable Date ARGUM3        :# ARGUM3 is a date (without dimension)

 

Description and comments

Variable is used to declare that arguments of a sub-programme have been passed by address. The variables declared in this way are defined in class [L], but they point to variables passed in the Call parameter. In other words, any modification made to one of the variables in the sub-programme has an effect on variables passed in the Call parameter.

 

Associated errors

Error

Description

ERMODE (10)

Incompatibility of type between declaration of the argument and the parameter passed in the Call.

ERDIM (55)

The number of dimensions declared does not match the dimension of the variable passed in parameter.

ERARGTY (70)

The argument passed in call is an expression (it may only be passed by value).

 

Associated key words

SHORTINT - DECIMAL - CHAR - DATE - INTEGER - LIBELLE - CONST - VALUE - CALL - SUBPROG


CONTENTS


Copyright © Sage 1999 - 2007