FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Buscar Ñ con QSeek
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Buscar Ñ con QSeek
Posted: Thu Oct 23, 2014 09:14 PM
No funciona la búsqueda cuando la cadena a buscar tiene Ñ

Aquí la función
Code (fw): Select all Collapse
FUNCTION QSeek( c, oBrw, oSay )
   LOCAL oQry := oBrw:oMySql
   LOCAL cSortOrder, nStart
   LOCAL uData, nNum, lRet

   STATIC aLastRec := {}

   nNum := AScan( oBrw:aCols, {| o | !Empty( o:cOrder ) } )

   IF nNum < 1
        RETURN FALSE
   ENDIF

   cSortOrder := oBrw:aCols[ nNum ]:cSortOrder

   IF Len( c ) == 1
      aLastRec := {}
   ENDIF

   IF Len( aLastRec ) < Len( c )
      IF Len( aLastRec ) == 0
         nStart := 1
      ELSE
         nStart := oQry:RecNo()
      ENDIF
      AAdd( aLastRec, nStart )
   ELSE
      ASize( aLastRec, Len( c ) - 1 )
      IF Len( aLastRec ) == 0
         nStart := 1
      ELSE
         nStart := ATail( aLastRec )
      ENDIF
   ENDIF

   IF HB_IsObject( oSay )
      oSay:SetText( Upper( c ) )
   ENDIF

   lRet := ( oQry:Seek( c, cSortOrder, nStart - 1, oQry:LastRec(), !oQry:FieldType( cSortOrder  )=='N', .T. ) != 0 )

RETURN lRet


Gracias por la ayuda

Saldudos,

Adhemar
Saludos,



Adhemar C.
Posts: 8523
Joined: Tue Dec 20, 2005 07:36 PM
Re: Buscar Ñ con QSeek
Posted: Fri Oct 24, 2014 12:59 PM
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: Buscar Ñ con QSeek
Posted: Fri Oct 24, 2014 01:49 PM
Gracias JOA

La función de Carlos tampoco funciona buscando "Ñ"

Eso de que con QSeek entra a un loop cuando el orden es carácter y se pulsa un número lo solucioné asi:

Code (fw): Select all Collapse
  If !lRet
       Return .F.
   Endif
Return lRet



He intentado con HB_StrToUTF8(), OEMTOANSI, ANSITOOEM, c:=strTran(c,'Ñ',"Ð") y nada.

Se debe poder porque con Heidi le doy buscar texto y encuentra palabras con "Ñ"


Saludos,

Adhemar
Saludos,



Adhemar C.

Continue the discussion