|
As an alternative, consider: -- Create an array with a 'typical' number of records (ie your 'normal max'). -- Load the array at the start of your program. If there are more records than the (hard-coded) length of the file, set an indicator. -- Set a variable with the number of records loaded into the array (in case you have to do a sequential search of the array; you'll need to know where to stop). -- Lookup using the array. If found, OK. If not found, chain to the file to make sure. If you load the file with the most-used records first, this will save file accesses. As far as saving time by using arrays instead of files--- I dunno. With the single-level store, and paging of unused stuff to disk anyway, when does a disk access become more 'expensive' than a table lookup? --Paul E Musselman PaulMmn@ix.netcom.com >I have a work file (about 50 records) that is accessed very often by a RPG4 >program. I was thinking about reading the file into an array to make lookups >faster. The problem is the file changes in size; sometimes it's 50 records, >sometimes 60, or 40, etc. I'd like to create a dynamically-sized array at >runtime. I briefly looked at the ALLOC/DEALLOC/REALLOC opcodes, but they >really didn't make much sense. > >Is there a relatively easy way of creating dynamic arrays in RPG, or am I >forced to create an arbitrary upper limit? > >Thanks, >Loyd +--- | This is the Midrange System Mailing List! | To submit a new message, send your mail to MIDRANGE-L@midrange.com. | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com. | To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
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.