Page 1 of 2

ADOBASE, ultima version muy mejorada.

PostPosted: Mon Jun 09, 2008 2:38 pm
by Adolfo
Hola a todos.

Bueno, esta es la ultima version de ADOBASE, tiene tantos cambios y optimizaciones que deberan revisar la clase y sus comentarios o el documento de ayuda. Los comentarios estan en Ingles.

Para poder obtener una buena velocidad, invente una rutina de paginacion para emular el uso de PAGINAS con la ADOBASE, como los cambios fueron muy profundos tuve que repensar la forma de trabajar la clase. Primero habran 4 versiones de ella, una para cada una de las siguientes DB. MYSQL, MS SQL SERVER, Postgres y ORACLE.

Vean las difrencias de velocidad entre las siguientes opciones del menu del ejemplo.
1.- Mantenciones
Server Side
Client Side
Paginado

2.- Browses
Simples
Paginado

Comparen los tiempos mostrados en el ALERT y comprueben las diferencias, la paginacion mejora los tiempos enormemente.

Esta version es para MYSQL, las proximas estarn listas en pocas semanas mas.

Esta version es la RELEASE CANDIDATE 1, despues de revisar algunas incomodidades como el refresco del xBrowse, el cual pueden ver en el Ejemplo ADOBASE.EXE, y otras optimizaciones menores, liberare la version final, dentro de una semana mas o menos (tiempo de programador, o sea puede ser hasta un mes.. ja ja )

Cualquier comentario, ayuda o idea sera muy bienvenida.

La paginacion en la ADOBASE fue pensada para optimizar los tiempos a travez de la INTERNET, no la recomiendo mucho para el uso dentro de la LAN, ya que los tiempos son suficientemente rapidos sin paginas. 1 a 2 segundos para 1 millon de filas en una consulta.

Esiste una nueva funcon llamada tAdoReg, que llama al registro actual con todos su campos, puedes tener un recordset con solo 2 campos de ,por ejemplo, 40 para optimizar la consulta, pero si necesitas editar ese registro, fila ahora puedes hacer esto oRegCli:=tAdReg(oDbCLi), ahora
oRegCli es un recordset de solo una fila, que corresponde a la fila original del recordset padre, pueden ver menu.prg la funcion clientes para verlo en accion.

El ejemplo es basico y lo suficientemente claro para entender el uso y objetivo de la clase.

ADOBASE todavia esta en desarrollo y puede ser optimizada, si encuentran algo que puede ayudar, por favor envienme un mail y pondre esos cambios en la clase.

Desde Chile
Adolfo

descargar desde aqui

http:\\200.72.140.34\privado archivo adobase.rar
Les repito, el servidor no es muy potente, pero sirve para el test.

PostPosted: Mon Jun 09, 2008 7:24 pm
by Adolfo
Solucionado un pequeño problema en el server de pruebas...

Asi que la DB de test esta arriba de nuevo.


Eso.
Gracias por los mail recibidos.

PostPosted: Tue Jun 10, 2008 1:35 am
by Ruben D. Fernandez
Adolfo:

No me puedo conectar para bajar AdoBase, me dice:
Error 404, file not found

Muchas gracias y disculpa.


Ruben Fernandez.

PostPosted: Tue Jun 10, 2008 12:58 pm
by Adolfo
Ruben....

Tienes que escribir esto en la barra de direcciones de tu navegador

http:\\200.72.140.34\privado

y elije bajar el adobase.rar

Si no puedes por algun problema, confirmamelo y te lo envio por mail, pesa solo 570 KB

Desde Chile
Adolfo

PostPosted: Wed Jun 11, 2008 2:07 am
by Ruben D. Fernandez
Adolfo:

Muchas gracias, ahora si lo baje.

A hacer pruebas.!!!

Cordiales saludos.

Ruben Fernandez

PostPosted: Thu Jun 12, 2008 4:37 pm
by Adolfo
Holas de nuevo...

Necesito pedirles un favor...

.. a todos los que ya han bajado la clase, podrian postear sus tiempos en 3 de las opciones del exe ejemplo.

Necesito los tiempos de Client Side, Server Side y de Paginado del menu mantenciones. Por favor poner de que lugar han hecho la prueba, velocidad de conexion y ojala hora del test, para poder revisar los logs de mi server y ver otro tipo de optimizaciones que tengo en mente.

Eso gracias de antemano.

Desde Chile
Adolfo

FELICITACIONES ADOLFO

PostPosted: Thu Jun 12, 2008 5:49 pm
by Vladimir Zorrilla
Y como se manejan en esta clase los datafields


Es decir

obj:Nombre de campo


Saludos Cordiales

PostPosted: Fri Jun 13, 2008 12:25 pm
by Adolfo
Vladimir...

Esta clase pretendia ser un clon de la tDataBase, pero ha terminado siendo una clase nueva por la cantidad de nuevos aportes que entrega.

Entonces... si creas la clase asi...

Local cSelect:= "select Cli.RUT, Cli.RAZON, Cli.DIRECCION from CLIENTES as Cli"

oDbCli:=TAdoBase():New( oCn, "CLIENTES", cSelect )

Entonces tienes :

oDbCli:RUT
oDbCli:RAZON
oDbCli:DIRECCION

y los metodos correspondientes

oDbCli:Append()
oDbCli:Load()
oDbCli:Save()
oDbCli:Delete() etc etc etc etc etc

MAs las opciones de traer el registro completo con tAdoReg y la paginacion automatica de la clase que mejora ENORMEMENTE las velocidades a travez de la web.

Si tienes dudas o quieres comentar, revisar el ejmplo que adjunta la clase.. solo contactame por aqui.

Desde Chile
Adolfo

PostPosted: Fri Jun 13, 2008 12:28 pm
by Adolfo
Vladimir...

Perece que no te habia entendido y revisando los post creo saber hacia donde se dirige tu pregunta.

Pues, al igual que la tDataBase, utilizo el metodo OnError() para generar el manejo de los campos preguntandole directamente a ADO los contenidos y nombres.

Ve el codigo fuente de la clase para que lo entiendas.

Eso

Desde Chile
Adolfo

PostPosted: Fri Jun 13, 2008 3:48 pm
by Francisco Horta
Adolfo,

Acabo de hacer la prueba y me arroja lo siguiente:
Client Side 17.360000
Server Side 27.657000
Paginado 1.094000

Estoy en Torreon,Mexico y tengo una conexion de 2Mb yla prueba la hice aprox. como a las 10:36am tiempo de mexico
Salu2
Paco

PostPosted: Fri Jun 13, 2008 7:25 pm
by sysctrl2
Adolfo

Client Side 13.162000
Server Side 28.278
Paginado 1.373

desde huamantla tlaxcala, mexico

con un test de velocidad de 876.kbps. (velocidad de bajada)

y 94. kbps (velocidad de subida)

saludos..

PostPosted: Sat Jun 14, 2008 7:25 pm
by EASYSOFT
Buenas tardes a todos

Disculpen la consulta tengo fwh 2.6 de junio del 2005 y harbour 45.0
puedo utilizar adobase ?

Gracias.

PostPosted: Sat Jun 14, 2008 7:48 pm
by Armando
Adolfo:

Tiempos de respuesta:

ServerSide = 7.297
ClientSide = 6.860
Páginado: 1.093

Fecha y hora de la prueba: 14/Jun/2008 14:45hrs desde México.

Conexión de 1mb

Por cierto despues del browse anidado al salir de la aplicación me tiró este error, por si te sirve de algo

Destructors disabled! Destructor of class: 'TOLEAUTO' can't be executed.

Saludos y felicidades por la clase

PostPosted: Sat Jun 14, 2008 7:54 pm
by Antonio Linares
> Destructors disabled! Destructor of class: 'TOLEAUTO' can't be executed.

Al objeto TOleAuto usado hay que hacerlo valer nil para evitar ese error:

oOleAuto := nil

PostPosted: Sat Jun 14, 2008 7:55 pm
by Adolfo
Easy...

Desconozco si el soporte para ACTIVEX u OLE de la Version 2.5 te servira para trabajar con ADO, alguien que lo sepa que pueda confirmar...

Armando...

En ciertas ocasiones, esporadicamente me ha aparecido el mismo mensaje, no he podido reproducirlo para saber que lo causa. Es el destructor de la Clase tOle,mas bien parece algo de FWH que de la clase.

Tratare de ver si lo descubro.

PD. Ya he avanzado con lo de MS SQL SERVER y he mejorado el refresco con xBrowse, dentro de algunso dias liberare esa version.

Desde Chile
Adolfo