FoxPro/Visual FoxPro - Noticia, Foxpro en Red

 
Vista:

Noticia, Foxpro en Red

Publicado por Many (332 intervenciones) el 07/04/2013 07:01:31
Saludo a todos

Acabo de encontrar exente velocidad en la red local.

A Carlos, primero estoy de acuerdo con lo que te dice Fidel.

Pero acabo de descubrir algo muy importante para nosotros, en el momento que leía tu nota me encontraba manipulando una tabla con tres millones de registros y estuve al punto de dejar foxpro y recomendarte que lo dejara, estas fueron mis conclusiones:

usando SELECT en la red me estaba tardando 4 y 5 minutos para darme respuesta haciéndolo asi:

SELECT descrip,codigo FROM facturas WHERE ALLTRIM(facturas.descrip) like "%"+ALLTRIM(thisform.descrip.value)+"%" into CURSOR micursor

SELECT DESCRIP,CODIGO FROM FACTURAS WHERE ALLTRIM(DESCRIP) = ALLTRIM(THISFORM.DESCRIP.VALUE) INTO CURSOR MICURSOR

ambos son lentos ya que se queda calculando con un indicador en pantalla aumentando de 1 a 100 que dice runnin query y esto me tarda 4 y 5 minutos.

El problema radica en que cuando en el select se usa con alltrim en el campo de la tablas o usa like como el primer ejemplo la búsqueda es lentísima y hasta frisa la pc.

Entonces probé así:

SELECT DESCRIP,CODIGO FROM FACTURAS WHERE DESCRIP = ALLTRIM(THISFORM.DESCRIP.VALUE) INTO CURSOR MICURSOR

Aquí solo uso alltrim en el text box y da respuesta hasta en menos de 1 segundo.

Aun así ojo con esto ya que lo probé con 3 terminales y una de ellas tardaba unos segundos, ahora debo cambiar cable de red o cambiar sistema operativo si es posible ya que tienen la misma cantidad de memoria y procesador.
Estoy seguro que se trata del equipo por que cuando entro al mi sitio de red esta se torna lenta para abrir a otro equipo.

Quisiera usar el primer ejemplo ya que busca la palabra en cualquier parte del campo pero es lento, si alguien puede ayudar con esto lo agradeceremos.

Feliz y hasta pronto.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Noticia, Foxpro en Red

Publicado por neo (1604 intervenciones) el 07/04/2013 13:42:52
Saludos!

Manejas muchos datos, mejor ir pensando en un motor como mysql o postgresql. Ahí las consultas SQL son como vfp y aun mucho mas. Solo seria cuestión de crear la base de datos y migrar tus datos dbf. Bueno. Por lo que leí trabajas con dbf.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Noticia, Foxpro en Red

Publicado por Many (332 intervenciones) el 07/04/2013 16:37:13
Estoy alegre ya que es lo único con que cuento, estoy claro de la potencia e estabilidad de Mysql y hace unos años estaba cambiando un programa a mysql pero no encontré mucho apoyo y me apague.

Juro que no lo defraudare si están dispuestos a darme seguimiento y hoy mismo estaré cambiando tablas a mysql, para iniciar díganme donde puede encontrar mysqls full para instalar de inmediato.

Para alguien que haya programado y quiera se que no debe ser difícil ya que solo tendría que saber como conectarse a la base de datos, la mecánica para guardar o actualizar en la base de datos, algunos truquitos en las consultas en caso de algunas diferencias.

Creo que es la razón por la que los programadores podemos aprender rápidamente otros lenguajes ya que entramos a lo especifico.

Este puede ser la oportunidad de muchos de nosotros ya que deseamos ligar vfp con mysql antes de perder las fuerzas de programar.

Sin mas por el momento, espero encontrar apoyo de otros.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Noticia, Foxpro en Red

Publicado por neo (1604 intervenciones) el 07/04/2013 23:50:26
si quieres yo te envío las cadenas de conexion y demas aplicaciones. yo todo lo manejo por el servidor wampserver. ya ahi dentro trabajo con phpmyadmin.

saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Noticia, Foxpro en Red

Publicado por many (332 intervenciones) el 08/04/2013 05:06:11
Neo, estoy tomando esto muy en serio antes que de me haga muy tarde.

Tengo un amigo que tomo un curso de php y sql en ITLAS y quiere enseñarme php, creo que debo aprovechar esta oferta y dejar estos lenguajes de escritorio solo para emergencias de cosas sencillas.

No se si conoces de ITLAS ya que no se de donde eres, soy Dominicano.

Necesito tu opinión, tal vez cuando aprenda podríamos discutir mas a menudo sobre este lenguaje.

Hasta pronto, amigo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Noticia, Foxpro en Red

Publicado por victor perez (137 intervenciones) el 08/04/2013 19:36:33
Hola Many,

Mira, yo estoy migrando mi sistema a MySQL.

Si vas a trabajar en estaciones de trabajo via LAN (RED LOCAL) no necesitas con urgencia pasar a PHP (WEB)...ya que la manera de trabajar de VFP en LAN se acopla perfectamente a MySQL.

Usas las mismas pantallas, que ya tienes elaborada, y la sintaxis basicamente son muy sencillas tanto en MySQL como en VFP.

El programa MySQL lo bajas del Sitio de Oracle (www.oracle.com) y alli bajas el conector ODBC, que te permite acceder a las bases de datos de mysql desde VFP.

La cadena de conexion ya te ofrecieron enviartela pero es muy sencillo.

La velocidad que alcanzas en MySQL es superior a lo que esperarias con VFP, eso es indudable. VFP para red no es muy potente, el trabaja perfectamente en ambiente de una sola computadora.

Por la cantidad de datos que manejas debes migrar a un Motor de Bases de datos, no necesariamente cambiar el ambiente de VFP puesto que te servira, como dije, siempre que trabajes en LAN.

Un saludo,


Victor
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Noticia, Foxpro en Red

Publicado por neo (1604 intervenciones) el 08/04/2013 21:36:45
Totalmente de acuerdo con usted victor..

No es necesario cambiar de lenguaje, dado el avance que tiene en vfp con solo crear la base de datos y tablas en mysql es un gran logro.


Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Noticia, Foxpro en Red

Publicado por Many (332 intervenciones) el 09/04/2013 14:45:16
Saludo Victor, Neo y de mas

Perdonen el tiempo de respuesta:
Agradezco infinitamente su recomendación ya que había pensado que después de tanto tiempo aprendiendo el lenguaje deba dejarlo solo por la dbf.

Tratare de descargar Mysql y luego le comento

Saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Noticia, Foxpro en Red

Publicado por Joshua (3 intervenciones) el 10/04/2013 07:01:39
Hola many,

lo que dicen es cierto, el punto débil de vfp es su bd, lo mejor es cambiar la bd y ejecutar stores trayendo el mínimo de datos a la interfaz, pero por mas que cambies de BD si ejecutas una consulta como esa, usando operadores en la columna de comparación, sera igual de lento en cualquier BD, para que una bd optimice una consulta busca como evaluar la menor cantidad de registros y generalmente lo hace mediante los indices de las columnas que están el WHERE.
si ejecutas esa consulta hará un barrido de los tres millones con el costo de tiempo que variara segun el fierro en que este la BD. Me parece que si estas haciendo una búsqueda con un like en la descripción de la factura, es por que ahi se dejo un dato que debió estar en una columna. Seria mejor optar por ese cambio o si es muy engorroso modificar las pantallas, agregar el campo a la tabla y manejar los inserts a la misma de modo que cada vez que se ingrese o modifique una factura se busque este dato en la descripción y actualizar la columna que seria la que usarías en tu consulta.

Un saludo

Joshua A.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Noticia, Foxpro en Red

Publicado por jdcamilo (805 intervenciones) el 20/04/2013 01:10:30
si necesitas un ejemplo tengo algo peque que te puedes ayuda

es para una casa de cambio, trabaja para acces pero solo cambia la cadena de coneccion y trabaja para sqlserver
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar