xBrowse - busqueda incremental (SOLUCIONADO)

xBrowse - busqueda incremental (SOLUCIONADO)

Postby MarioG » Wed Sep 02, 2015 12:20 pm

Buen dia Gente
trillado tema... :)

He definido un xBrowse así:
Code: Select all  Expand view
  REDEFINE XBROWSE ::oLstP ID BRW_XBRW OF oDlgP ;
            COLUMNS "ID", "TUTOR1"  ;
            HEADERS "ID", "Tutor"  ;
            Alias   cSQLAlias AUTOSORT
 

La DBF es administrada con ADS y lo particular es que creo una lista a traves de un Select, definido así:
Code: Select all  Expand view
  if !ADSExecuteSQLDirect( "SELECT ID,TUTOR1 FROM BDF2WS01 WHERE FEAFIP1 "+ ;
                            "UNION SELECT ID,TUTOR2 FROM BDF2WS01 WHERE FEAFIP2 ORDER BY TUTOR1" )
      MessageBox(, "Falla procesar código SQL en Tabla de Personas", "Reintentar...", MB_ICONSTOP )
      SQLTutor->( DbCloseArea() )
      return( nil )
   end
   cSQLAlias:= Alias()
 

Lo que ocurre es que cuando ingreso texto para realizar la búsqueda, esta no se realiza (tampoco muestra el icono indicando el orden).
Salvo, que haga clic sobre la cabecera "Tutor"
He forzado con :cOrder:= "A" para que muestre el ícono; pero la búsqueda no se ejecuta, salvo (insisto) que la active con clic sobre la cabecera.
Se puede indicar que esté activa sin hacer clic en la cabecera?

gracias

P.D.: La razon de crear el xbrowse mediante el Select esta relacionado con esto:
http://forums.fivetechsupport.com/viewtopic.php?f=6&t=31271#p181228
Last edited by MarioG on Thu Sep 03, 2015 11:35 am, edited 1 time in total.
Resistencia - "Ciudad de las Esculturas"
Chaco - Argentina
User avatar
MarioG
 
Posts: 1380
Joined: Fri Oct 14, 2005 1:28 pm
Location: Resistencia - Chaco - AR

Re: xBrowse - busqueda incremental

Postby carlos vargas » Thu Sep 03, 2015 2:02 am

SELECT ID,TUTOR1 FROM BDF2WS01 WHERE FEAFIP1
UNION
SELECT ID,TUTOR2 FROM BDF2WS01 WHERE FEAFIP2
ORDER BY TUTOR1

estimado, los WHERE estan bien?, no me parece una expresio valida. :-(

has probado esta consulta desde el front ARC de ADS?
me parece que esto seria mas adecuado:
SELECT ID,TUTOR1 AS TUTOR FROM BDF2WS01 WHERE FEAFIP1=true
UNION
SELECT ID,TUTOR2 AS TUTOR FROM BDF2WS01 WHERE FEAFIP2=true


no es necesario el "order by" ya que lo ordenaras en la tabla con un index

en tu caso, debes realizar un indexado luego de obtener el alias
para que te funcione.

Code: Select all  Expand view

SELECT &cSQLAlias
INDEX ON TUTOR TAG TUTOR TEMPORARY
...
xbrowse....
...
 


salu2
carlos vargas
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
carlos vargas
 
Posts: 1691
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Re: xBrowse - busqueda incremental

Postby MarioG » Thu Sep 03, 2015 11:32 am

Carlos;
muchas gracias por interesarte en el tema.
La sentencia es correcta, la descubrí por casualidad en algun momento que no escribi: CampoLogico=TRUE y no dió error (tal como la seguí escribiendo hasta ahora). Al parecer funciona a partir de ADS 10.x
Aunque si queremos estar seguro nada mejor que indicar la igualdad :wink:
Acá el resultado
Image

Tu aporte, del indice temporal, es lo que me estaba faltando

muchas gracias!
Resistencia - "Ciudad de las Esculturas"
Chaco - Argentina
User avatar
MarioG
 
Posts: 1380
Joined: Fri Oct 14, 2005 1:28 pm
Location: Resistencia - Chaco - AR

Re: xBrowse - busqueda incremental (SOLUCIONADO)

Postby carlos vargas » Thu Sep 03, 2015 5:04 pm

Sip, es que la instruccion sql es mas legible si indicas la igualdad,
siempre a la orden.
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
carlos vargas
 
Posts: 1691
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Boby6Muertos and 35 guests