Foros del Web » Programación para mayores de 30 ;) » .NET »

Como vincular un ProgressBar1 con carga de bd

Estas en el tema de Como vincular un ProgressBar1 con carga de bd en el foro de .NET en Foros del Web. Esa duda siempre la eh tenido, al tener una base de datos super llena, que tarde tanto tiempo en cargar, el usuario no sabe cuanto ...
  #1 (permalink)  
Antiguo 30/06/2011, 20:33
 
Fecha de Ingreso: marzo-2010
Mensajes: 432
Antigüedad: 14 años, 8 meses
Puntos: 11
Como vincular un ProgressBar1 con carga de bd

Esa duda siempre la eh tenido, al tener una base de datos super llena, que tarde tanto tiempo en cargar, el usuario no sabe cuanto tiempo tardara para completarse, se podra mostrar a medida que se carga una barra de llenado con el ProgressBar1..

Puse el ejemplo de la bd, pero puede ser cualquier proceso que tome tiempo en realizar..


Código vb:
Ver original
  1. Dim x As Long  
  2. Label1 = x
  3. Label1 = CLng((ProgressBar1.Value * 100) / ProgressBar1.Max)
  4. ProgressBar1.Value = x
__________________
Libro de HTML 5 + codigo fuente bajar aqui.
  #2 (permalink)  
Antiguo 01/07/2011, 00:23
Usuario no validado
 
Fecha de Ingreso: junio-2010
Ubicación: Guatemala
Mensajes: 196
Antigüedad: 14 años, 5 meses
Puntos: 25
Mensaje Respuesta: Como vincular un ProgressBar1 con carga de bd

Saludos, se que no es la solución a tu problema pero te sugiero que utilices el estilo Marquee para operaciones donde quieras indicar que se esta realizando un proceso pero sin indicar el avance de este.

Código csharp:
Ver original
  1. // Para iniciar
  2. progressBar1.Style = ProgressBarStyle.Marquee;
  3. progressBar1.MarqueeAnimationSpeed = 50;
  4.  
  5. // Para finalizar
  6. progressBar1.MarqueeAnimationSpeed = 0;

Espero que te sea de utilidad.
  #3 (permalink)  
Antiguo 01/07/2011, 08:39
Avatar de giovani_loera  
Fecha de Ingreso: mayo-2011
Ubicación: Tijuana
Mensajes: 225
Antigüedad: 13 años, 6 meses
Puntos: 21
Respuesta: Como vincular un ProgressBar1 con carga de bd

una pregunta...
A que te refieres q es una base de datos super llena? entiendo q tiene muchos datos, pero lo q yo me refiero es si consultas todos los datos de todas las tablas.

Por si quieres traer todos los datos de todas las Tablas, puedes primeramente contar cuantas tabla tienes.

SELECT Count(*) FROM {NameDB}.INFORMATION_SCHEMA.TABLES

-Este query te dice cuantas tablas tienes en una DB.

Con esto puedes avanzar el ProgressBar, y aunmentas el ProgressBar cuando vas consultando los datos de una tabla en DB.
ProgressBar1.Minimum = 0;
ProgressBar1.Max=countTables;
tabla1= "Select * from tabla1";
ProgressBar1.PerformStep();
tabla2= "Select * from tabla2";
//.....Y asi te vas una por una de las tablas
tablan= "Select * from tablan";
ProgressBar1.PerformStep();


Nota: El codigo del ejemplo no esta bien, solo es un ejemplo rapido

Espero q te sirva.
  #4 (permalink)  
Antiguo 01/07/2011, 08:44
Avatar de jhonwilliams  
Fecha de Ingreso: marzo-2004
Ubicación: Copacabana - Colombia
Mensajes: 1.484
Antigüedad: 20 años, 8 meses
Puntos: 76
Respuesta: Como vincular un ProgressBar1 con carga de bd

En este ultimo caso podrias tener 2 progressbar

1. Que muestre el avance de las tablas, cuando pasas de una en una

2. Uno que muestra la carga de cada tabla, en esta caso pudes cargar el valor minimo en 0 y maximo en el count(*) de los registros de la tabla que estas cargando y por cada registro que cargues sumas uno.

Saludos
__________________
Si mi respuesta te ha ayudado, agradezco que me regales unos puntos de Karma XD.

"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)
  #5 (permalink)  
Antiguo 03/07/2011, 15:45
Avatar de edbc92  
Fecha de Ingreso: octubre-2010
Ubicación: Lima - Los Olivos
Mensajes: 93
Antigüedad: 14 años
Puntos: 5
Respuesta: Como vincular un ProgressBar1 con carga de bd

También he tenido la misma duda xD.

Etiquetas: bd, carga, vincular
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:57.