Lentitud de consulta con vb6

capvcapvcapv

Bovino adolescente
#1
Buenas, abro este tema por que tengo un problema hice un sistema en vb6 el cual busca de una tabla de clientes sus datos para mostrarlos en un datagrid; hice pruebas en mi pc local y no hay ningún problema sin embargo cuando lo hago en red se alenta la aplicación al buscar y volcar todos los clientes en el datagrid.

No tengo control alguno de la bd ya que es una bd de un programa privativo de contpaq asi que no puedo meterme con la esctructura de la misma. Y para el colmo esta en archivos .dbf , no se si alguien ya las ha trabajado con vb6 e igual a tenido estos problemas que me pueda ayudar....:histerica:
 

jlrmdevil

Bovino maduro
#2
No se exactamente como lleves el proyecto, pero no es lo mismo tener la informacion en la computadora local, que traertela de otro servidor, ya que los datos tienen que viajar por la red.

Si mal no recuerdo hay una opcion en el DBGrid en el cual le indicas cuantos datos traerse en un viaje. asi si son 100 registros, que nada mas traiga 10. Intenta eso y a ver que pasa.
 

jmvd70

Bovino adicto
#5
o.o

Saludos partner

Creo que falta información, como comentan los compañeros

1. Que método de conexión estás usando ?
2. Estas utilizando datacontrol o no ?
3. Son consultas dinámicas o fijas ?
4. Que tan remota está tu información ?
5. De que tamaño es la tabla que estás leyendo ?

Las consultas a DBFs por lo general son rápidas, depende de la cantidad de información y la forma de conexión.

Suerte.
 

mendigos1

Bovino adolescente
#6
El problema se compone de 2 partes.

Primero deberas diseñar una forma de navegacion de tus registros si la consulta regresa mas de 1000 registros, de tal manera que peudas ir desplegando en tu pantalla digamos de 50 en 50.

Lo segundo y mas importante.

el datagrid del visual tiene un error de programacion "visual", el cual consiste en lo siguiente, si tu pantalla esta desplegada (tu forma), y mandas informacion al data grid, cada renglon que se inserta en el hace un Refresh o refrezcado completo de la pantalla del monitor lo cual alenta Muchisimo las busquedas .... para evitar esto
deberas hacer un truco que consiste en cargar primero la pantalla o forma sin mostrarla (form.load), luego hacer la busqueda y carga de datos al data grid, y por ultimo presentar la forma (form.show) .......

Un cambio tan simple, te acelerara el proceso de visualizacion del data grid, tanto que capaz que nor equeriras lo de la navegacion

Espero te sirva
Saludos
 

kimahri

Bovino adolescente
#7
En efecto, lo del data grid es muy cierto, en mi caso uso una herramienta llamada True DBGrid es mucho mas facil y rapido de manejar en cuanto a consultas asi por ejemplo, realizas tu consulta, lo vacias al data grid ( el cual tiene varios metodos se llenado, uno de ellos es directamente con un recordset y otro es llenar un arreglo tipo XArray y despues decirle al True DBGrid que tome de ahi los datos, son los que mas uso yo )

Te aconsejaria que buscaras este componente ya que es buenisimo en el manejo de base de datos, te permite modificar directamente en las celdas, hacer updates a tablas, recorrer el grid como cualquier arreglo bidimiensional, exportar a exel ( que la verdad no se por que, pero en las empresas siempre quieren todo en exel, aunque un sistema te de reportes ¬¬ ) y darle formato al grid de tal manera que se ve muy cool hehehe

Bueno, espero te sirva un poco la info

Saludos.
 
Arriba