Hola:
tengo un dbBrowse abierto ::oDBrowse1:SetDbf(xPlacon) que es el listado
del plan contable que esta indexado por codigo y nombre, como puedo
hacer que me localize una determinada cuenta bien por codigo o nombre,
he probado en el evento onclick de un editbotton con
sele xPlacon
dbseek(oSender:Value, .t.)
::oDBrowse1:Refresh()
pero no debe ser lo más adecuado.
Gracias.
Emilio Gil.
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Localizar un elemento en un dBBrowse
-
- Mensajes: 16
- Registrado: Jue Abr 06, 2006 6:22 pm
Localizar un elemento en un dBBrowse
Emilio,
Un DbBrowse tiene asociado una Dbf/Alias... en tu caso xPlacon.
Bien, pues sólo tienes que navegar por la Dbf como en Clipper...
(xPlacon)->( OrdSetFocus( "indiceautilizar" )
(xPlacon)->( DbSeek( "loquequierasbuscar" ) )
....
Y cuando necesites actualizar el Browse...
::oBrowse1:Refresh()
Un Saludo,
Xevi.
"emilio gil" <emiliogil@ya.com> escribió en el mensaje
news:4446133d$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Hola:
>
> tengo un dbBrowse abierto ::oDBrowse1:SetDbf(xPlacon) que es el listado
> del plan contable que esta indexado por codigo y nombre, como puedo hacer
> que me localize una determinada cuenta bien por codigo o nombre, he
> probado en el evento onclick de un editbotton con
>
> sele xPlacon
> dbseek(oSender:Value, .t.)
> ::oDBrowse1:Refresh()
>
> pero no debe ser lo más adecuado.
>
> Gracias.
> Emilio Gil.
>
Un DbBrowse tiene asociado una Dbf/Alias... en tu caso xPlacon.
Bien, pues sólo tienes que navegar por la Dbf como en Clipper...
(xPlacon)->( OrdSetFocus( "indiceautilizar" )
(xPlacon)->( DbSeek( "loquequierasbuscar" ) )
....
Y cuando necesites actualizar el Browse...
::oBrowse1:Refresh()
Un Saludo,
Xevi.
"emilio gil" <emiliogil@ya.com> escribió en el mensaje
news:4446133d$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Hola:
>
> tengo un dbBrowse abierto ::oDBrowse1:SetDbf(xPlacon) que es el listado
> del plan contable que esta indexado por codigo y nombre, como puedo hacer
> que me localize una determinada cuenta bien por codigo o nombre, he
> probado en el evento onclick de un editbotton con
>
> sele xPlacon
> dbseek(oSender:Value, .t.)
> ::oDBrowse1:Refresh()
>
> pero no debe ser lo más adecuado.
>
> Gracias.
> Emilio Gil.
>
-
- Mensajes: 620
- Registrado: Jue Mar 23, 2006 2:39 am
Localizar un elemento en un dBBrowse
1000lio:
Yo implemente busquedas incrementales en el DBBrowse y lo hice así:
1) defini una DATA llamada cBusca inicializada a ""
2) puse un panel en la barra de estado para poner lo que voy tecleando
3) en el evento ON CHAR del dbrowse, defini el evento ChkTecla y le
escribi esto:
METHOD chktecla( oSender, nKey, nFlags ) CLASS Catcue
IF nKey == 8
IF LEN(::cBusca) > 0
::cBusca := SUBSTR(::cBusca,1,LEN(::cBusca)-1)
ENDIF
ELSE
::cBusca += UPPER(CHR(nKey))
ENDIF
SET SOFTSEEK ON
(ALIAS_CATALOGO)->(DBSEEK(::cBusca))
oSender:Refresh()
SET SOFTSEEK OFF
WITH OBJECT ::oStatusBar1
:aItems[2]:cText := "Buscando: "+ IIF(::nIndexActual == 1,;
TRANSFORM(::cBusca,"@R
9999-9999-9999-9999"),;
TRANSFORM(::cBusca,"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"))
END
RETURN Nil
A ver si te hace un apaño....
Saludos
Rene Flores
http://www.ciber-tec.com
emilio gil escribió:
> Hola:
>
> tengo un dbBrowse abierto ::oDBrowse1:SetDbf(xPlacon) que es el
> listado del plan contable que esta indexado por codigo y nombre, como
> puedo hacer que me localize una determinada cuenta bien por codigo o
> nombre, he probado en el evento onclick de un editbotton con
>
> sele xPlacon
> dbseek(oSender:Value, .t.)
> ::oDBrowse1:Refresh()
>
> pero no debe ser lo más adecuado.
>
> Gracias.
> Emilio Gil.
>
Yo implemente busquedas incrementales en el DBBrowse y lo hice así:
1) defini una DATA llamada cBusca inicializada a ""
2) puse un panel en la barra de estado para poner lo que voy tecleando
3) en el evento ON CHAR del dbrowse, defini el evento ChkTecla y le
escribi esto:
METHOD chktecla( oSender, nKey, nFlags ) CLASS Catcue
IF nKey == 8
IF LEN(::cBusca) > 0
::cBusca := SUBSTR(::cBusca,1,LEN(::cBusca)-1)
ENDIF
ELSE
::cBusca += UPPER(CHR(nKey))
ENDIF
SET SOFTSEEK ON
(ALIAS_CATALOGO)->(DBSEEK(::cBusca))
oSender:Refresh()
SET SOFTSEEK OFF
WITH OBJECT ::oStatusBar1
:aItems[2]:cText := "Buscando: "+ IIF(::nIndexActual == 1,;
TRANSFORM(::cBusca,"@R
9999-9999-9999-9999"),;
TRANSFORM(::cBusca,"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"))
END
RETURN Nil
A ver si te hace un apaño....
Saludos
Rene Flores
http://www.ciber-tec.com
emilio gil escribió:
> Hola:
>
> tengo un dbBrowse abierto ::oDBrowse1:SetDbf(xPlacon) que es el
> listado del plan contable que esta indexado por codigo y nombre, como
> puedo hacer que me localize una determinada cuenta bien por codigo o
> nombre, he probado en el evento onclick de un editbotton con
>
> sele xPlacon
> dbseek(oSender:Value, .t.)
> ::oDBrowse1:Refresh()
>
> pero no debe ser lo más adecuado.
>
> Gracias.
> Emilio Gil.
>
- ignacio
- Site Admin
- Mensajes: 9448
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Localizar un elemento en un dBBrowse
Rene,
Todos los browses soportan busqueda incremental desde el primer día. Por
favor revisar las propiedad oSeek y el evento OnSeek de TBrowse. Incluso el
ejemplo DatacontrolsDbfData2 muestra como usarlo.
Saludos,
"Rene Flores" <rflores.removeforspam@ciber-tec.com> escribió en el mensaje
news:[email=4446e653@ozsrvnegro.ozlan.local...]4446e653@ozsrvnegro.ozlan.local...[/email]
> 1000lio:
>
> Yo implemente busquedas incrementales en el DBBrowse y lo hice así:
>
> 1) defini una DATA llamada cBusca inicializada a ""
> 2) puse un panel en la barra de estado para poner lo que voy tecleando
> 3) en el evento ON CHAR del dbrowse, defini el evento ChkTecla y le
> escribi esto:
>
> METHOD chktecla( oSender, nKey, nFlags ) CLASS Catcue
> IF nKey == 8
> IF LEN(::cBusca) > 0
> ::cBusca := SUBSTR(::cBusca,1,LEN(::cBusca)-1)
> ENDIF
> ELSE
> ::cBusca += UPPER(CHR(nKey))
> ENDIF
> SET SOFTSEEK ON
> (ALIAS_CATALOGO)->(DBSEEK(::cBusca))
> oSender:Refresh()
> SET SOFTSEEK OFF
>
> WITH OBJECT ::oStatusBar1
> :aItems[2]:cText := "Buscando: "+ IIF(::nIndexActual == 1,;
> TRANSFORM(::cBusca,"@R
> 9999-9999-9999-9999"),;
>
> TRANSFORM(::cBusca,"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"))
> END
> RETURN Nil
>
> A ver si te hace un apaño....
>
> Saludos
>
> Rene Flores
> http://www.ciber-tec.com
> emilio gil escribió:
>> Hola:
>>
>> tengo un dbBrowse abierto ::oDBrowse1:SetDbf(xPlacon) que es el
>> listado del plan contable que esta indexado por codigo y nombre, como
>> puedo hacer que me localize una determinada cuenta bien por codigo o
>> nombre, he probado en el evento onclick de un editbotton con
>>
>> sele xPlacon
>> dbseek(oSender:Value, .t.)
>> ::oDBrowse1:Refresh()
>>
>> pero no debe ser lo más adecuado.
>>
>> Gracias.
>> Emilio Gil.
>>
Todos los browses soportan busqueda incremental desde el primer día. Por
favor revisar las propiedad oSeek y el evento OnSeek de TBrowse. Incluso el
ejemplo DatacontrolsDbfData2 muestra como usarlo.
Saludos,
"Rene Flores" <rflores.removeforspam@ciber-tec.com> escribió en el mensaje
news:[email=4446e653@ozsrvnegro.ozlan.local...]4446e653@ozsrvnegro.ozlan.local...[/email]
> 1000lio:
>
> Yo implemente busquedas incrementales en el DBBrowse y lo hice así:
>
> 1) defini una DATA llamada cBusca inicializada a ""
> 2) puse un panel en la barra de estado para poner lo que voy tecleando
> 3) en el evento ON CHAR del dbrowse, defini el evento ChkTecla y le
> escribi esto:
>
> METHOD chktecla( oSender, nKey, nFlags ) CLASS Catcue
> IF nKey == 8
> IF LEN(::cBusca) > 0
> ::cBusca := SUBSTR(::cBusca,1,LEN(::cBusca)-1)
> ENDIF
> ELSE
> ::cBusca += UPPER(CHR(nKey))
> ENDIF
> SET SOFTSEEK ON
> (ALIAS_CATALOGO)->(DBSEEK(::cBusca))
> oSender:Refresh()
> SET SOFTSEEK OFF
>
> WITH OBJECT ::oStatusBar1
> :aItems[2]:cText := "Buscando: "+ IIF(::nIndexActual == 1,;
> TRANSFORM(::cBusca,"@R
> 9999-9999-9999-9999"),;
>
> TRANSFORM(::cBusca,"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"))
> END
> RETURN Nil
>
> A ver si te hace un apaño....
>
> Saludos
>
> Rene Flores
> http://www.ciber-tec.com
> emilio gil escribió:
>> Hola:
>>
>> tengo un dbBrowse abierto ::oDBrowse1:SetDbf(xPlacon) que es el
>> listado del plan contable que esta indexado por codigo y nombre, como
>> puedo hacer que me localize una determinada cuenta bien por codigo o
>> nombre, he probado en el evento onclick de un editbotton con
>>
>> sele xPlacon
>> dbseek(oSender:Value, .t.)
>> ::oDBrowse1:Refresh()
>>
>> pero no debe ser lo más adecuado.
>>
>> Gracias.
>> Emilio Gil.
>>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com