Cargar Hprogressbar en una Data Windows

Una vez más voy a necesitar de su ayuda...
Mi consulta es la siguiente... Tengo una data windows con muchos, pero muchos datos, y por consiguiente tarda bastante en mostrarlos, en este proceso hace parecer que el programa se colgo; para lo cual le quiero agregar una Hprogressbar con el estado de carga de los datos, pero no se como hacerlo y me gustaría que alguno de ustedes me prestara ayuda para poder concretar la cuestión...
Respuesta
1
Bueno he aquí el inconveniente imaginemos que tu DW recuper 100 mil registros ok, ahora el Hprogressbar para que funcione tiene que tener un valor inicial y un valor final.
De tal forma que el valor inicial seria 1 y el final seria la cantidad de registro que recupera que serian 100 mil, ¿te fijas? Primero tendrías que recuperar todos los registros para que luego de hacerlos le digas al progress que valla desde 1 hasta el rowcount() del DW.
De tal forma que nunca lo lograras, yo también lo intente muchas veces con otros controles y nada me di por vencido, logre entender que cuando un proceso o recuperación es muy grande que hace que parezca que se cuelgue, el usuario tan solo tienen que entenderlo como tal y esperar a que termine.
Ahora si te fijas en el ejemplo que trae el mismo power cuando lo instalas ahí hay un userobject que te puede ayudar llamado u_progress_bar (C:\Archivos de programa\Sybase\PowerBuilder 10.5\Code Examples\Example App) el cual no necesita el valor final tan solo te pide el valor del progreso
Ese lo pegas en tu pantalla, y el el evento open de la ventana le das la función del objeto
uo_1. uf_set_position(0)
Y en el evento retrieve de tu DW colocas
uo_1.uf_set_position(row)
No es tan perfecto porque no te muestra el progreso exacto pero si el porcentaje, bueno espero eso te sirva en algo y si quizás fui muy rapido al explicarte házmelo saber, para darte algo más detallado.
En lo ultimo me confundí no es el evento retrieve es en evento RETRIEVEROW
Antes que nada disculpa por la tardanza y muchas gracias por la respuesta.
El ejemplo del que me hablas no lo tengo, ¿no me podrías pasar el código así lo puedo probar?
Gracias y saludos!
Mejor dame tu correo de mando el objeto a tu correo lo que pasa es que tiene un par de funciones dentro y para dártelas por separadas te puedes hacer bolas, mejor te lo mando el objeto completo dejame tu msn
Ademas me es muy raro que no tengas el ejemplo en la ruta que te indique, ya que siempre que se instala el PB sea cual sea su version trae 3 ejemplos, a algo que olvide decir dentro ed la carpeta no existe el WORKSPACE, por lo que no lo puede abrir.
Primero tendrías que abrir un PB en blanco crear un WorkSpace dentro de esa carpeta y darle un NUEVO target Existente y lo ruteas
Buenísimo dale, acá te dejo mi msn: [email protected]
Nuevamente muchas gracias!
Ya te lo envíe, pero como dije no me escribas a ese correo del que te lo mande porque es la institución y cualquier correo externo que ingrese se dan cuenta.
Lo probé pero me pasa esto, se carga de una el progressbar y después me aparece solo en azul el numero de registros que se esta cargando (toda la otra parte de la barra es blanca) y después que se terminan de cargar los registros vuelve a aparecer la barra en 0% y toda blanca...
¿Por qué puede ser que suceda esto?
¿Recuerdas qué te dije que no era perfecto? Porque no lo es si con eso pasa ese error imaginate con el control que querías hacer con ese era imposible.
Sabes no se cuantos registros recupere tu DW epro en la consulta hazle un TOP 10000, tan solo para que recupere esa cantidad luego a la hora que le indicas uo_1. Uf_set_position(row) esto esta en el evento RetrieveRow de la DW, ya ahí coloca entre los parentecis row/100 hazle una división del row entre 100
Y se vera mejor el progress, pero como te darás cuenta ya va siendo tedioso que la presentación ise vea bien... es cuanto te puedo ayudar hasta donde se No existe ningún control en los 12 lenguajes de programación que conozco que tenga un control que te muestre un progreso de lo que esta procesando o de la ejecución de algún SP
La verdad que 10 puntos! Es un tema re complejo este del progressbar, pero tener gente como vos que explique tan dedicadamente a la gente la verdad que es un lujo!
Muchísimas gracias!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas