Hi there,
It looks like the logging of a dataset still influences the way the data is retrieved afterwards.
I found that after logging a dataset the record pointer IS pointing at the first record (a 'while not eof' loop iterates the expected numer of times). The data that is returned however, is not as expected.
The pattern I found is that the data returned alternates between the content of the last and the next-to-last record.
I'm using an IBQuery object to execute the SQL that returns the result set.
Any thoughts?
Gerben
Subscribe to forum
Forum
Dataset logger revisited
Page: 1
| Author | Post |
|---|---|
|
Gerben
|
#1 Wed Aug 16, 2006 10:21 am
|
| Guest | |
|
#2 Wed Aug 16, 2006 12:11 pm
|
|
|
Administrator
Registered: Sep 2007
Posts: 133
|
Hello Gerben,
thanks for reporting the problem. We are taking a look at it right now and I let you know when we have a solution. |
|
#3 Wed Aug 16, 2006 1:56 pm
|
|
|
Administrator
Registered: Sep 2007
Posts: 133
|
Hello again,
we built a test scenario with the Interbase components in combination with Firebird 1.5 and were unfortunately unable to reproduce the problem. It would be great if you could tell us the version numbers of the Interbase/Firebird server and client you are using. |
|
Gerben
|
#4 Thu Aug 17, 2006 7:49 am
|
| Guest |
Hello Tobias,
I'm using "Interbase SQL Server for Windows", version "WI-V7.5.1.80". I'm using the default Interbase components form the "Interbase" tab in the Delphi IDE. I hope this helps. Gerben |
|
#5 Thu Aug 17, 2006 2:16 pm
|
|
|
Administrator
Registered: Sep 2007
Posts: 133
|
Hello Gerben,
I'm still unable to reproduce the problem. I've tested it with different versions (Interbase WI-V7.5.0.129 and WI-V7.5.1.80, Firebird 1.5) and the results are fine. After logging a TIBQuery object with the LogDataSet method, the record pointer is restored correctly and the returned data while iterating over the dataset is fine as well. Among others, I've tested with the following code snippet:
The IBQuery1 object is set up to communicate via TCP with the database server and uses the Employee example database file which ships with the Interbase and Firebird installations. To investigate this further, maybe you could post a code snippet or send me an example project via email which demonstrates the error. |
|
Gerben
|
#6 Mon Aug 21, 2006 11:23 am
|
| Guest |
Hi,
I'v send you an email containing some snippets and an annotated SmartInspect logfile to help clarify the perceived problem. |
|
Gerben
|
#7 Tue Aug 29, 2006 7:51 am
|
| Guest |
Hi,
Just to give those who read this thread some kind of closure . The behaviour was the result of setting the 'Unidirectional' property of the dataset to 'True'. This behaviour had nothing to do with the SmartInspect code. |
Page: 1
. The behaviour was the result of setting the 'Unidirectional' property of the dataset to 'True'.