When running through an array with a for next loop the last item processed isn't remembered so the program needs to traverse the entire array for each record and will slow down as you get to records later in the process.
Instead of this: A11 = DCOUNT(IN.TAB,@AM) FOR A1 = 1 TO A11 IN.LINE = IN.TAB<A1> SWAP @VM WITH @AM IN IN.LINE CUST.NUM = IN.LINE<1> CUST.DESC = IN.LINE<2> NEXT A1 Try something like this instead: LOOP REMOVE IN.LINE FROM IN.TAB SETTING MARK SWAP @VM WITH @AM IN IN.LINE CUST.NUM = IN.LINE<1> CUST.DESC = IN.LINE<2> WHILE MARK DO REPEAT That will keep track of where you were in the array and pick up where you left off. Let me know how that works out for you. Thanks, Josh -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of David Laansma Sent: Monday, November 17, 2008 1:10 PM To: u2-users@listserver.u2ug.org Subject: [U2] Speeding up processing through large dynamic table Is there a way to speed up spinning through a very large dynamic table? Here is a sample of my program: A11 = DCOUNT(IN.TAB,@AM) FOR A1 = 1 TO A11 IN.LINE = IN.TAB<A1> SWAP @VM WITH @AM IN IN.LINE CUST.NUM = IN.LINE<1> CUST.DESC = IN.LINE<2> NEXT A1 A11 is 85,000+ and as this loop goes on, this thing get really slow. Any tips on speeding this up? ------- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ ------- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/