× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



A.... the %SUBARR in V5R3 will do this for you.
You can use it with the SORTA opcode to isolate the number of elements
(similar to %LOOKUP) being sorted. 

See my article at www.mcpressonline.com/midrangedev for details.
-Bob


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of rob@xxxxxxxxx
Sent: Monday, November 01, 2004 12:19 PM
To: RPG programming on the AS400 / iSeries
Subject: Add ability to sort externally defined arrays.

Currently I can do the following:
     D                 ds
     D MyArray                        4a   dim(20)
     D  Code1                         2a   overlay(MyArray)
     D  Code2                         2a   overlay(MyArray:*next)
     D CurrNbrElem     s              5i 0
     D Result          s              5i 0
     D X               s             10i 0 
      /free
       Code1(1)='AA';
       Code1(2)='BB';
       Code1(3)='CC';
       Code2(1)='ZZ';
       Code2(2)='YY';
       Code2(3)='XX';
       // At this time MyArray(1)='AAZZ', (2)='BBYY', (3)='CCXX'
       CurrNbrElem=3;
       result = %lookup('YY':Code2:1:CurrNbrElem);
       dsply result;
       for x=4 to %elem(MyArray);
        Code1(x)=*hival;
        Code2(x)=*hival;
       EndFor;
       sorta code2;
       // At this time MyArray(1)='CCXX', (2)='BBYY', (3)='AAZZ'
       sorta code1;
       // At this time MyArray(1)='AAZZ', (2)='BBYY', (3)='CCXX'

I would also like this ability
     D MyDs          E DS                  extname(aaakey) qualified 
dim(10)
     D x               s              5i 0


      /free
       myds(1).loc='A';
       myds(2).loc='B';
       myds(1).comp=2;
       myds(2).comp=1;
       dsply myds(1).loc;  // should be 'A'
       sorta myds.comp;
 
       dsply myds(1).loc;  // should be 'B'
       sorta myds.loc;
       dsply myds.comp;  // should be 'A' again
       dsply x; //  should be equal to 2 

If this interests you, then please vote here:
https://www7b.software.ibm.com/webapp/wsdd/studioServlet3?client=form210&SID
=1099333121622&SAVEKEY=452

Rob Berendt
-- 
Group Dekko Services, LLC
Dept 01.073
PO Box 2000
Dock 108
6928N 400E
Kendallville, IN 46755
http://www.dekko.com

--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.




As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.