Explanation
This method generates an array object.
Syntax
INVOKE class-name "NEW-ARRAY" USING elmNum RETURNING createdObject
Parameter and return value
Specifies the internal class name of the array class declared in the REPOSITORY paragraph.
Specifies the number of elements of the array to be generated.
Returns the array object generated.
Supplement
When a multidimensional array is generated, a (n-1)-dimensional array is generated and stored in each element of the n-dimensional array. For instance, a (n x m) two-dimensional array is generated as follows:
... REPOSITORY. CLASS JA-2-INT AS "JA-2-int" CLASS JA-1-INT AS "JA-1-int" ... 01 anArray OBJECT REFERENCE JA-2-INT. 01 wArray OBJECT REFERENCE JA-1-INT. ... INVOKE JA-2-INT "NEW-ARRAY" USING n RETURNING anArray. [1] PERFORM VARYING I FROM 0 BY 1 UNTIL I >= n INVOKE JA-1-INT "NEW-ARRAY" USING m RETURNING wArray [2] INVOKE anArray "SET-ARRAY-ELEMENT" USING I wArray [3] END-PERFORM. SET wArray TO NULL.
A two-dimensional array object of int is generated (number of elements = n).
A one-dimensional array object of int is generated (number of elements = m).
The one-dimensional array generated in [2] is set in each element of the first dimension of anArray.