FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour tsbrowse
Posts: 151
Joined: Wed Oct 12, 2005 01:03 PM
tsbrowse
Posted: Fri Oct 06, 2006 09:04 PM

Alguien tiene una version de Tsbrowse de M.Mercado y
que funcione para consultas mysql

Gracias

Marco Augusto Rodriguez Manzo

FWH January 2020 Xharbour 1.2.3

MySQL 5.0.19 Fastreport



PERZO SOFT

Sistemas Personalizados
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: tsbrowse
Posted: Sat Oct 07, 2006 12:57 PM
Marco Augusto wrote:Alguien tiene una version de Tsbrowse de M.Mercado y
que funcione para consultas mysql

Gracias


Si es que vas a implementar la TS ( tsbrowse ) por primera vez, te recomiendo la xBrowse.

Gustavo.
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 731
Joined: Fri Oct 07, 2005 07:42 AM
Re: tsbrowse
Posted: Fri Oct 13, 2006 04:57 PM
goosfancito wrote:
Marco Augusto wrote:Alguien tiene una version de Tsbrowse de M.Mercado y
que funcione para consultas mysql

Gracias


Si es que vas a implementar la TS ( tsbrowse ) por primera vez, te recomiendo la xBrowse.

Gustavo.


Pregunta.. donde esta la xBrowse ? De quien es... ? Cuando vale... ?
Saludos

Rafa Carmona ( rafa.thefullARROBAgmail.com___quitalineas__)
Posts: 840
Joined: Thu Oct 13, 2005 07:05 PM
tsbrowse
Posted: Fri Oct 13, 2006 05:05 PM

Viene incluida en el FiveWin,

Saludos

R.F.
Posts: 840
Joined: Thu Oct 13, 2005 07:05 PM
Re: tsbrowse
Posted: Fri Oct 13, 2006 05:13 PM
Marco Augusto wrote:Alguien tiene una version de Tsbrowse de M.Mercado y
que funcione para consultas mysql

Gracias


Todos y a la vez ningun browse te sirve para manipular MySQL.

Me explico mejor:

A menos que trabajes con ADO es posible "browsear" directamente un RecordSet, cualquier otra froma de acceso a MySQL, llamese ODBC, Eagle, RDD SQL u otro, requiere forzosamente que pase el contenido del cursor al un arreglo y que de ahi al browse correspondiente.

Para browsear un RecordSet de ADO lo uedes hacer con cualqieur Browse, solo tienes que crear un cursor typo adOpenSetKey y modificar unas datas del browse, y escribir una funcion Skipper

Por ejemplo con Access (para my sql, solo cambia la cadena de conexion)

oMiConexion := TOleAuto():New(“adodb.connection”)
oMiConexion:Open(“MicroSoft.Jet.OLEDB.4.0; Data Source=.\taller.mdb”)

oRecordSet := TOleAuto():New(“adodb.recordset”)
oRecordSet:LockType := adLockOptimistic
oRecordSet:CursorType := adOpenKeySet
oRecordSet:ActiveConnection(oMiConexion)
oRecordSet:Source := “Select * from Clientes”
oRecordSet:Open()
oRecordSet:MoveFirst()

@ 0, 0 LISTBOX oBrw FIELDS oRecordSet:Fields(“nombre”):value,;
                           oRecordSet:Fields(“apellido”):value,;
                           oRecordSet:Fields(“id”):value,;
                           oRecordSet:Fields(“edad”):value,;
                           oRecordSet:Fields(“ciudad”):value,;
                           oRecordSet:Fields(“estado”):value;
           HEADERS "Nombre",”Apellido”,”Id”,”Edad”,”Ciudad”,”Estado”

/* esto es lo que cambia */

oBrw:bLogicLen = { || oRecordSet:RecordCount } 
oBrw:bGoTop    = { || oRecordSet:MoveFirst() } 
oBrw:bGoBottom = { || oRecordSet:MoveLast() } 
oBrw:bSkip     = { | nSkip | Skipper( oRecordSet, nSkip ) } 
oBrw:cAlias    = "ARRAY" 

STATIC FUNCTION SKIPPER( oRs, nSkip ) 

    LOCAL nRec := oRs:AbsolutePosition 

    oRs:Move( nSkip ) 

    IF oRs:EOF; oRs:MoveLast(); ENDIF 
    IF oRs:BOF; oRs:MoveFirst(); ENDIF 

RETURN oRs:AbsolutePosition – nRe


Con esto cualquier browse (Xbrowse, TWBrowse, Browse de Hernan, TSbrowse, etc,) te funciona para una tabla de MySQL
Saludos

R.F.

Continue the discussion