Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.

For information on migrating to InterSystems IRIS, see the InterSystems IRIS Migration Guide and Migrating to InterSystems IRIS, both available on the WRC Distributions page (login required).


Lowers dynamic array delimiters to next level.




dynarray An expression that resolves to a dynamic array.


The LOWER function returns a dynamic array with its delimiters converted to the next lower-level delimiters. For example, @VM value mark delimiters become @SM subvalue mark delimiters. When a delimiter cannot be lowered any further, it is returned unchanged. A dynarray value that does not contain dynamic array delimiters is returned unchanged.

The available levels, in descending order, are: @IM (CHAR(255)); @FM (CHAR(254)); @VM (CHAR(253)); @SM (CHAR(252)); @TM (CHAR(251)); and CHAR(250).

The RAISE function performs the opposite operation, raising the level of dynamic array delimiters to the next higher level.


The following example uses the LOWER function to convert dynamic array delimiters to the next lower level. It then uses the RAISE function to reverse this operation:

PRINT numvm;         ! Returns 123ý456ý10ý11
numlower = LOWER(numvm)
PRINT numlower;      ! Returns 123ü456ü10ü11
numraise = RAISE(numlower)
PRINT numraise;      ! Returns 123ý456ý10ý11
Copy code to clipboard

See Also