×

Good News Everybody!

The new search engine is LIVE!

Please report any problems to david (at) midrange.com.




How familiar are you with embedded SQL? You can sort the data however you
want and you would not have the limitations of an array. 

 -----Original Message-----
From:   Douglas W. Palme [mailto:dpalme@xxxxxxxxxxxxxxxxxxxxx] 
Sent:   Tuesday, March 29, 2005 9:37 AM
To:     RPG programming on the AS400 / iSeries
Subject:        Re: Arrays

With such a limitation I do not think an array would work in this instance.

So I am back to square one :) Oh well it was a nice thought.


On Tue, 29 Mar 2005 16:29:13 +0200, Igor.Beslic wrote
> It's true that this is good way way for saving necessary mem space 
> but still  this array is limited to 20000 elements!! For exapmple 
> replace line C     1             DO        50            index with this
>  C     1             DO        20001         index
> 
> and you'll get a array out of bounds error at line
> C                   MOVE      index         array(index)
> 
> Best regards,
> Igor Be¹liæ, dipl. ing. raè. 
> VOLKSBANK d.d.
> OJ Informatika
> Zelinska 2, 10000 Zagreb
> tel: +385 1 6326422
> 
> MWalter@xxxxxxxxxxxxxxx 
> Sent by: rpg400-l-bounces@xxxxxxxxxxxx
> 29.03.2005 16:15
> Please respond to
> RPG programming on the AS400 / iSeries <rpg400-l@xxxxxxxxxxxx>
> 
> To
> RPG programming on the AS400 / iSeries <rpg400-l@xxxxxxxxxxxx>
> cc
> 
> Subject
> Re: Arrays
> 
> Yes, you'll have to base you're array on a pointer. Then increase the
> allocation size. Take a look at the ALLOC, REALLOC, and DEALLOC op codes.
> Here's a quick example:
> 
>   * array definitions
>  Darray            S             10    DIM(20000) BASED(PTR)
>  Dindex            s              7  0
>   * memory allocation data items
>  Dptr              S               *
>  Dnbr_of_elems     S              5  0 INZ(10)
>  Dmem_size         S              7  0 INZ
>  Dx                S             10i 0
>   * allocate the initial memory heap (initial # of elements * the 
> size of the array) C                   EVAL      mem_size = 
> %size(array) * nbr_of_elems C                   ALLOC     mem_size   
>    ptr C                   EVAL      x = %elem(array)  * loop to 
> test C     1             DO        50            index  * does the 
> index exceed the current # of array elements? C                   IF 
>        index > nbr_of_elems  * recalculate the memory heap size by 
> adding 10 to the number of elements  * and multiplying the size of 
> the array by the new number of elements. C                   EVAL    
>   nbr_of_elems = nbr_of_elems + 10 C                   EVAL      
> mem_size = %size(array) * nbr_of_elems * reallocate the memory heap 
> and increase the size C                   REALLOC   mem_size     
>  ptr C                   ENDIF * move data for test C                
>    MOVE      index         array(index) * C                   ENDDO 
> * deallocate the memory utilized C                   DEALLOC         
>         ptr C                   EVAL      *inlr = *on 
> ****************** End of data *******************************************
> Thanks,
> 
> Mark
> 
> Mark D. Walter
> Senior Programmer/Analyst
> CCX, Inc.
> mwalter@xxxxxxxxxx
> http://www.ccxinc.com
> 
>              "Douglas W. 
>              Palme" 
>              <dpalme@blackcats                                       
>    To
> 
>              olutions.com>             "RPG Group" <rpg400-
> l@xxxxxxxxxxxx>
> 
>              Sent by:                                                
>    cc
> 
>              rpg400-l-bounces@ 
>              midrange.com                                          
> Subject
> 
>                                        Arrays
> 
>              03/29/2005 09:08 
>              AM
> 
>              Please respond to 
>               RPG programming 
>               on the AS400 / 
>                   iSeries 
>              <rpg400-l@midrang 
>                   e.com>
> 
> In using VB and C I have the ability to dynamically increase an array's
> size
> from say 50 to 100 without losing the existing data, is this 
> possible in RPG?
> 
> >From all that I have been able to read on arrays in RPG so far I don't 
> see
> 
> it as possible, but I'm hoping there is something available that the 
> books and PDF's don't cover.
> 
> --
> 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.
> 
> -- 
> 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.
> 
> -- 
> 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.


--
Open WebMail Project (http://openwebmail.org)

-- 
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.

The information in this e-mail and any attachments are intended only for use
by the addressee(s) and may contain proprietary, privileged and/or
confidential information.  Any unauthorized review, use, disclosure or
distribution is prohibited.  If you are not the intended recipient, please
notify the sender by return e-mail and delete the original e-mail and any
attachments.  Thank you.


As an Amazon Associate we earn from qualifying purchases.

This thread ...


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

This mailing list archive is Copyright 1997-2026 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.