Problem with TClientDataSet & GetNextPacket

2005-11-15 09:14:32 AM
I've just started playing with PacketRecords and GetNextPacket in
TClientDataSet. I've encountered a problem and can't find a solution.
I've already Googled the web and groups, and I searched this newsgroup.
I've already looked at QC 3515 & 8873, as well as CC 12466. None of
these solve anything for me. I'm going to look at midess too.
I'm using Delphi 6. I've tried MIDAS 6, 7, 9, and 10, with no luck.
I'm going to try a new application in Delphi 2006 as soon as I can.
Meanwhile, I thought I'd post this issue here:
Basic TDataSetProvider and TClientDataSet. On the server side,
TDataSetProvider is connected to a TADODataSet.
My dataset has 31,815 records in it. I set PacketRecords to 100. I'm
using GetNextPacket to manually fetch packets as needed.
Sometimes, everything works without error.
However, many times, GetNextPacket will start returning zero *BEFORE*
I've retrieved all of the records. TClientDataSet.RecordCount is
always less then 31,815, in increments of 100 (the size of
PacketRecords). In other words, sometimes GetNextPacket will return
zero when CDS.RecordCount is only 31,515, 31615, or 31715. These are
the values that I see most often.
I'm hoping this is an old, known issue and someone knows the solution.
Jon Robertson
Borland Certified Advanced Delphi 7 Developer
MedEvolve, Inc