Problem in AdoIncrSeek( ) of xHarbour

Post Reply
User avatar
Maurizio
Posts: 831
Joined: Mon Oct 10, 2005 1:29 pm
Contact:

Problem in AdoIncrSeek( ) of xHarbour

Post by Maurizio »

Hello

I have a xBrowse with a ADO table , if I press the key ' ( example I seek TEST' )

The problem is in ::oRs:Find( cExpr, 0, 1, 1 )
where cExpr --> DESCRI LIKE 'TEST'*'


Regards Maurizio
User avatar
nageswaragunupudi
Posts: 10733
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Been thanked: 10 times
Contact:

Re: Problem in AdoIncrSeek( ) of xHarbour

Post by nageswaragunupudi »

Please locate these lines:

Code: Select all | Expand

     do case
      case cType == 'C'

         if ::lSeekWild
 

Please insert one line above if ::lSeekWild

Code: Select all | Expand

     do case
      case cType == 'C'
         uSeek := StrTran( uSeek, "'", "''" ) // inserted
         if ::lSeekWild
 

Note: Replace single "single quote" with "two single quotes".
Let us see if this works.
Normally we avoid quotes. etc in seeks and filters.
Regards

G. N. Rao.
Hyderabad, India
User avatar
Maurizio
Posts: 831
Joined: Mon Oct 10, 2005 1:29 pm
Contact:

Re: Problem in AdoIncrSeek( ) of xHarbour

Post by Maurizio »

Thanks ,

it works perfectly :)

Maurizio
User avatar
nageswaragunupudi
Posts: 10733
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Been thanked: 10 times
Contact:

Re: Problem in AdoIncrSeek( ) of xHarbour

Post by nageswaragunupudi »

Maurizio wrote:Thanks ,

it works perfectly :)

Maurizio

Thanks for your testing.
We shall include that.
But again we can not seek double quotes :-)
Regards

G. N. Rao.
Hyderabad, India
User avatar
Maurizio
Posts: 831
Joined: Mon Oct 10, 2005 1:29 pm
Contact:

Re: Problem in AdoIncrSeek( ) of xHarbour

Post by Maurizio »

Hello Rao

another question .
I have a xBrowse with a ADO Table , I need to make a new SELECT in the same browse .
Is it possible without closing and reopening the browse ?

Ghirardini Maurizio
www.nipeservice.com
User avatar
nageswaragunupudi
Posts: 10733
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Been thanked: 10 times
Contact:

Re: Problem in AdoIncrSeek( ) of xHarbour

Post by nageswaragunupudi »

Yes, thats what we intended to provide. At the same time let me confess that I did not do much testing. You can help to test and see how it works.

First assuming that the columns (fields) are identical, replace oBrw:oRs with new recordset.

oNewRs := <open a new recordset with revised SELECT statement>

oSaveRs :- oBrw:oRs
oBrw:oRs := oNewRs
oBrw:GoTop()
oBrw:Refresh()
oSaveRs:Close()
oSaveRs := nil

Please see if this works without any problems.
Regards

G. N. Rao.
Hyderabad, India
User avatar
Maurizio
Posts: 831
Joined: Mon Oct 10, 2005 1:29 pm
Contact:

Re: Problem in AdoIncrSeek( ) of xHarbour

Post by Maurizio »

Thanks Rao

your example works .

This works to
oBrw:oRs := oRsNew
oBrw:GoTop()
oBrw:Refresh()

Regards MAurizio
www.nipeservice.com
User avatar
nageswaragunupudi
Posts: 10733
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Been thanked: 10 times
Contact:

Re: Problem in AdoIncrSeek( ) of xHarbour

Post by nageswaragunupudi »

This may be better

Code: Select all | Expand

  WITH OBJECT oBrw
      :lScreenUpdating := .f.
      :oRs:Close()
      :oRs:Source := <revised SQL statement>
      :oRs:Open()
      :GoTop()
      :lScreenUpdating := .t.
      :Refresh()
   END
 
Regards

G. N. Rao.
Hyderabad, India
User avatar
Maurizio
Posts: 831
Joined: Mon Oct 10, 2005 1:29 pm
Contact:

Re: Problem in AdoIncrSeek( ) of xHarbour

Post by Maurizio »

Thanks Rao
:D
Maurizio
www.nipeservice.com
Post Reply