Visual Basic - Proceso en Lote

Life is soft - evento anual de software empresarial
 
Vista:

Proceso en Lote

Publicado por El Ferna (33 intervenciones) el 04/06/2005 00:56:00
Actualmente tengo una aplicacion que lee un archivo plano delimitado por comas e importa los registros a una tabla en Oracle, el formulario tiene varios labels que me dicen por que numero de archivo va, etc y un progressbar que me muestra el avance del proceso, hasta ahi no hay problema todo lo hace bien, el problema es que el archivo plano contiene aproximadamente 800.000 registros y cuando esta en el proceso de importacion la aplicacion despues de cierto tiempo de estar trabajando en el proceso da la apariencia de que está bloqueada pero no es asi ya que si le doy pausa y luego F5 sigue exactamente con el registro que deberia seguir, lo mismo sucede si minimizo y luego maximizo la aplicacion o si se activa el protector de pantalla y regreso, la aplicacion aparece en blanco (pero continua trabajando), en fin quisiera saber como hago para que el formulario este constantemente refrescado, he utilizado el metodo refresh y sigue igual, por favor ayuda! 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:Proceso en Lote

Publicado por SetFocus (183 intervenciones) el 04/06/2005 04:39:44
Hola! Aveces en proceso largos sucede eso, lo que podes probar es agregar en alguna parte de tu codigo la instruccion DoEvents. Lo que permite es que los demas eventos que ocurren mientras hace una determinada tarea, sigan ejecutandose, en tu caso por ejemplo que los labels se sigan actuaizando, que la progressbar muestre el pregreso, etc. Podes ubicar la instruccion despues de que actualizas los labels y el progressbar.... bueno probalo en donde te da mejor resultado ubicarla. Seria algo asi:

Private Sub ProcesoLargo
For i = 1 to 1000000
label1.caption = dato1
label2.caption = dato2
........demas instrucciones
DoEvents
next
End Sub

Espero te sirva. 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