BorlandTalk.com Forum Index BorlandTalk.com
Borland discussion newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

FetchBlob issue

 
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> Delphi Databases (Multi-Tier)
View previous topic :: View next topic  
Author Message
Brandon Lilly
Guest





PostPosted: Fri Jul 11, 2003 11:55 pm    Post subject: FetchBlob issue Reply with quote



We have tried to implement the FetchBlobs method of the TClientDataSet
and have been running into an issue where Delphi displays an error
dialog indicating that the record has been changed by another user,
and we're pretty boggled as to why that would happen.

On the server-side we have a standard ADODataSet attached to a
provider. The ProviderFlags =
[poFetchBlobsOnDemand,poIncFieldProps,poPropogateChanges].

On the client-side we are simply creating a dataset, fetching
parameters, assigning the paramters, and opening the dataset. This
works fine as the non-blob columns contain data. We get access
violations accessing any of the blob columns at this point, which is
fine, as we haven't fetched them. When we call FetchBlobs we get the
afforementioned error message from the server app.

We profiled the sql and we saw where delphi was querying table with
the earlier supplied key value, after which the error is displayed.
After opening the clientdataset, we are not modifying any data and we
are the only ones in the database, so we know the record is not being
changed by anybody.

Are there known bugs or configuration "gotchas" regarding FetchBlobs?
I searched Google and could not find any answers (just people like me
asking questions).

Thanks,
Brandon
--
"In the beginning the universe was created. This has made a lot of
people very angry, and has been widely regarded as a bad move." -
Douglas Noel Adams (1952-2001)


Back to top
Dave Rowntree
Guest





PostPosted: Mon Jul 14, 2003 9:25 am    Post subject: Re: FetchBlob issue Reply with quote



You don't say what version of Delphi you are using?
--
Dave Rowntree
Back to top
Brandon Lilly
Guest





PostPosted: Mon Jul 14, 2003 5:38 pm    Post subject: Re: FetchBlob issue Reply with quote



"Dave Rowntree" <daver (AT) spam_offbrookswood (DOT) co.uk> wrote

Quote:
You don't say what version of Delphi you are using?

Sorry, Delphi 6.02
Windows XP SP1

Brandon
--
"In the beginning the universe was created. This has made a lot of
people very angry, and has been widely regarded as a bad move." -
Douglas Noel Adams (1952-2001)



Back to top
Dave Rowntree
Guest





PostPosted: Mon Jul 14, 2003 9:41 pm    Post subject: Re: FetchBlob issue Reply with quote

"Brandon Lilly" <brandon.lilly (AT) nospam_medevolve (DOT) com> wrote:
Quote:
Sorry, Delphi 6.02
Windows XP SP1

CDS.FetchBlobs is a stateful call. It does not pass the CDS.Params to
the DSP. If you are running a stateless appserver this is likely to be
your problem.

You can make the call behave statelessly by using the BeforeRowRequest
events on the CDS and DSP to pass the CDS.Params to the DSP, and set
them on the DSP.DataSet. Use the PackageParams and UnpackParams
utility functions to convert CDS.Params to an OleVariant and back
again.
--
Dave Rowntree

Back to top
Brandon Lilly
Guest





PostPosted: Mon Jul 14, 2003 10:34 pm    Post subject: Re: FetchBlob issue Reply with quote

"Dave Rowntree" <daver (AT) spam_offbrookswood (DOT) co.uk> wrote

Quote:
CDS.FetchBlobs is a stateful call. It does not pass the CDS.Params
to
the DSP. If you are running a stateless appserver this is likely to
be
your problem.

Our server is not stateless (yet - we plan to do this in the coming
year). When calling FetchBlobs, the query that I see in Profiler has
the correct parameters being passed to it, so I don't think this is
the issue, but I will try your suggestion regardless later this week.
If you can think of anything else in the meantime, that would be
great.

Thanks,

Brandon
--
"In the beginning the universe was created. This has made a lot of
people very angry, and has been widely regarded as a bad move." -
Douglas Noel Adams (1952-2001)



Back to top
Display posts from previous:   
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> Delphi Databases (Multi-Tier) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.