sort() function

The sort() function sorts an attribute or value mark delimited str.exp in ascending order.

Syntax

sort(str.exp{{,ac.exp{,vc.exp}}; 'sequence.exp'})

Parameter(s)

str.exp String, attribute or value mark to sort in sequence order.
ac.exp Attribute (or, the attribute that contains the value or subvalue) that contains the specified str.exp to sort. If ac.exp is used, the sequence.exp is required.
vc.exp Value (or, the value that contains the subvalue) that contains the specified str.exp to sort.
'sequence.exp'
Sequence expression. This expression must be surrounded by quotes.
Note: Non-integer numbers as well as mixing numeric and non-numeric data types may return unexpected results.
al Pseudo left-justified ascending sort.
ar Pseudo right-justified ascending sort.
dl Pseudo left-justified descending sort.
dr Pseudo right-justified descending sort.

Description

If the expression contains both attribute and value marks, this function replaces all marks with the type first encountered.

A second sort() function is available that works in a manner similar to the locate statement. In this expanded version, the user can specify in which attribute, and/or value the list resides as well as the sort sequence to use.

The sort() function performs a left-aligned string sort only. For example:

string = "1" : @vm : "2" : @vm : "11" : @vm : "100"
crt "before " : string
string = sort(string)
crt "after " : string

displays:

before 1]2]11]100
after 1]100]11]2

string = "-1": @vm: "-21": @vm: "-3"
crt "before ": string
string = sort(string)
crt "after ": string

displays:

before -1]-21]-3
after -1]-21]-3

Example(s)

list=’zebra’:@vm:’albatross’:@vm:’gooney bird’:@vm:’elephant’
newlist=sort(list)

The variable newlist contains the string:

albatross]elephant]gooney bird]zebra

The ] represents a value mark.

The following example illustrates the use of the 'sequence.exp'.

nums = 1:@vm:10:@vm:11:@vm:12:@vm:2:@vm:13:@vm:3
sortednums = sort(nums, 1; 'ar')
crt sortednums 

displays:

1]2]3]10]11]12]13