Looks like it's sorting alphanumerically. Is it just one field in a
data structure? If so, why is it in a data structure? If not, see
below:
Here's a great article about sorting arrays by Paul Tuohy.
http://www.mcpressonline.com/programming/rpg/those-weird-and-wonderful-a
rrays.html
"Unfortunately, you may not use the SORTA operation to sort a data
structure array, especially if you want to sort based on one of the
subfields. Although you cannot sort the data in a data structure array
directly, by using a pointer and defining another data structure, you
can sort the data indirectly. Figure 8 shows the definition of the ArrDs
data structure array containing 20 elements. This is followed by the
definition of an unnamed data structure that is based on the pointer
pArrDs, which is initialized to the address of ArrDs. In other words,
the unnamed data structure overlays the ArrDs data structure array in
memory. If you used a named data structure, you would be restricted to
the 64K limit (up to V5R4)."
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Steve McKay
Sent: Thursday, November 06, 2008 2:54 PM
To: rpg400-l@xxxxxxxxxxxx
Subject: SORTA ignoring field sign
Greetings!
I'm using SORTA to sort a DS arrary containing both positive and
negative
numbers (the field is 11P 2). The resulting data appears to ignore the
sign, that is the items are returned in this order:
58,656.27-
32,714.07-
26,773.81
15,668.28
2,765.95-
.00
(Note that this is not all of the data, just a representative subset.)
What is it that SORTA does that causes this? Is it sorting on hex
values
rather than numeric? Or is there something going on that I'm not aware
of?
What other options do I have to sort in numeric sequence?
Thanks,
Steve
As an Amazon Associate we earn from qualifying purchases.