Visual Basic - Barra de progreso

Life is soft - evento anual de software empresarial
 
Vista:

Barra de progreso

Publicado por carlos (17 intervenciones) el 24/05/2005 00:36:18
ten go un procedimiento almacenado en una tabla de mi base de datos de sql2000 que demora para realizar su proseso, por lo cual quiero que aparesca una barra de progrso mientras termina dicho proceso, alguien me puede decir como lo hago, tener en cuanta que es un procedimiento almacenado.

oCnn.execute "genera_imp '" & txtAño.text & "'"

ese el el procedimiento almacena tiene que procesar casi un millon de registros (por eso se demora), y quiero colocar una barra de progreso para que el usuario no piense que se colgo el sistema, me pueden ayudar, gracias
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

RE:Barra de progreso

Publicado por miguel (1042 intervenciones) el 24/05/2005 16:43:13
Como es un procedimiento almacenado y es dificil con exactitud cuantos registros son para llenar en la propiedad MAX del ProgressBar entonces lo que te recomiendo es que se este llenando y vaciando a la vez para que asi el usuario se entretenga...lo harias de esta forma:
En tu formulario agregas un control Timer y en la propiedad Interval capturas:20 y luego en la propiedad Tag del progressBar capturas: 5 y agregas este codigo:
Private Sub Form_Load()
Timer1.Enabled = False
End Sub
'-*-*-*-*-
DoEvents
Timer1.Enabled = True 'Habilitas el Timer
oCnn.execute "genera_imp '" & txtAño.text & "'"
'-*-*-*-*
Private Sub Timer1_Timer()
Dim ctl As Control
DoEvents
For Each ctl In Me.Controls
If TypeOf ctl Is ProgressBar Then
DoEvents
With ctl
.Value = .Value + .Tag
If .Value >= .Max Then
.Tag = -1 * Abs(.Tag)
ElseIf .Value < 1 Then
.Tag = Abs(.Tag)
End If
End With
End If
Next
DoEvents
End Sub
En caso de que no puedas hacerlo funcionar te envio el ejemplo a tu correo...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