Sorry so late, it's been very busy here and I've turned off u2 list access
at work in order to cope...  Here's a snippet of code form the very project
that is currently taking up all my time.  The array logic was stolen right
out of the .net developers guide...

...............  This is just a section of code, this won't compile as
is...............

                        string [] lRecIDArray ;
                        ArrayList lRecIDList = new ArrayList(20000);
                        StringBuilder lStrValue = new StringBuilder();

                        UniDynArray uvTmp = uSession.CreateUniDynArray();

                        // select a file, here I'm just getting everything
                        uvsl.Select(uvfVENDOR);
                        // read the whole list into a unidynarray, I happen
to know this file is not very big so it's ok.
                        uvTmp = uvsl.ReadList();


                        // create array of Record IDs
                        for(int Index = 0; Index < uvTmp.Dcount(); Index++)
{
                                string s = uvTmp.Extract(Index).ToString(); 
                                if (s.Length > 0){
                                        lRecIDList.Add(s);
                                }
                        }                       


                        // this is the part obtained from the manual.
                        lRecIDArray = new string[lRecIDList.Count];
                        lRecIDList.CopyTo(0,lRecIDArray,0,lRecIDList.Count);
                                
                        // read records using array of record ids
                        // this part is fast, get all the stuff you want
right now
                        UniDataSet lSet =
uvfVENDOR.ReadRecords(lRecIDArray);

                        int iCnt = 0;
                        char uvVM = Convert.ToChar(253);
                        char SPACE = Convert.ToChar(32);

                        foreach (UniRecord uvVendor in lSet) {
                                uvTmp = uvVendor.Record;
                                // extract and process the data
                                string tmp = uvTmp.Extract(1).ToString();

                                // the rest is snipped...
endendend

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Victor St Clair
Sent: Monday, November 29, 2004 1:28 PM
To: [EMAIL PROTECTED]
Subject: RE: [U2] Uniobjects.NET speed/performance

I've had the same experience, using a select loop in a list runs very
slowly, and was planning to try this same approach.  I tried to use ReadList
method of the Slist object as documented in the UniObjects manual, but
haven't gotten it to work yet.  Did you use the ReadList or did you fill the
array by repeating listobject.Next()?  

I'm still on UniObject 6, working with UniData 6.  If I just do a
listobject.Select(fileobject) then it processes fast enough.  But if I
execute a command to create a select list and then loop through it, the
performance gets progressively worse as the record count increases.  

I'd appreciate any example you might be able share.

Thanks

Victor St. Clair


-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Donald Kibbey
Sent: Thursday, November 04, 2004 4:11 AM
To: [EMAIL PROTECTED]
Subject: Re: [U2] Uniobjects.NET speed/performance


I found that using a select list within a loop was cause for a long nap...
I fixed that by reading the entire list into an array and then looping
through the array.  I've read on this list that there is an updated
uniobjects.dll available, but my VAR was not able to locate it?!?

I really don't understand why IBM does not just post the developers tools as
a public download.  You really can't do much with them unless you already
have a licensed database so why the hassle?


Don Kibbey
Financial Systems Manager
Finnegan, Henderson, Farabow, Garrett & Dunner LLP
-------
u2-users mailing list
[EMAIL PROTECTED]
To unsubscribe please visit http://listserver.u2ug.org/
-------
u2-users mailing list
[EMAIL PROTECTED]
To unsubscribe please visit http://listserver.u2ug.org/
-------
u2-users mailing list
[EMAIL PROTECTED]
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to