![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Actualizar en tiempo Real
Hola amigos, busque por todos lados una solucion a mi problema pero no la haye. Espero que ustede me brinden una mano.
Les comento mi problema: Quisiera que un DBChart se actualizara en tiempo real; este presenta datos de una base de datos Interbase. Los componentes utilizados son Interbase o bien IBX como le llaman algunos. La unica forma que he hayado para actualizarlo es cerrando y habriendo el IBDataBase cada cierto tiempo pero no es lo correcto. Gracias de antemano; |
#2
|
||||
|
||||
En lugar de eliminar y crear el IBDataBase, ¿has probado a desactivar y activar el DataSet?
|
#3
|
||||
|
||||
Probe con esto
Estimado Ñuño, por lo que comentaste realize esto:
Pero no funciona, presiono el boton y de cualquier modo el DBChart no actualiza. Seguire intentando con otras formas que se me ocurran y posteo, Gracias por contestar. |
#4
|
||||
|
||||
Es difícil ayudarte porque no has explicado lo que estás haciendo, de cómo obtienes los datos, cómo los presentas, etc. ni lo que quiere decir para tí "tiempo real".
Si lo que quieres es un gráfico se esté actualizando según los datos que se introducen en una base de datos, entonces NO lo hagas en tiempo real porque estarás saturando la red y el servidor con constantes "selects". Hay otras formas de hacerlo, pero antes debes explicar qué estás haciendo, qué quiéres hacer, etc. exactamente.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
|||
|
|||
Hola...
Prueba creando una transacción nueva (y la configuras para que sea de tipo SNAPSHOT) para esos Datasets y haces algo como:
Y a IBDataSet_ATR y SeriesDataSet_ATR le asignas la nueva transacción en su propiedad Transaction. Saludos... |
#6
|
||||
|
||||
Está claro que no se tiene claro lo que quiere Diego827, ha recibido 3 respuestas, cada una distinta de la otra.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#7
|
||||
|
||||
Con IBEvents =P
Edito: Ya van cuatro casimiro xD
__________________
mas confundido que Garavito el día del Niño. |
#8
|
||||
|
||||
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#9
|
||||
|
||||
Hola amigos.
Gracias por sus respuestas! sabia que me iban a ayudar (de hecho siempre recibo ayuda de este club!). Ok, estimado Casimirio; explico el problema con más detalle. Es que no lo he hecho... Quisiera hacerlo pero no me sale ![]() Como dije antes: "Quisiera que un DBChart se actualizara en tiempo real; este presenta datos de una base de datos Interbase. Los componentes utilizados son Interbase o bien IBX como le llaman algunos". Añadiría: lo que trato de hacer es una ventana con un DBChart; el cual muestra datos de un campo en una base de datos InterBase SMP 2009. Si se ingresaran datos inmediatamente que cambiara el DBCHart, algo asi como si este "pendiente de cambios" y actualizarce en cuanto sucedan. Esto, si fuera posible. Los obtengo por componentes IBX, como dije: "Los componentes utilizados son Interbase o bien IBX como le llaman algunos."; pero cabería añadir: Para conectarme a la base un TIBDataBase, un IBTransaction... lo que se utiliza normalmente y por supuesto el IBDataSet. Los presento en un DBChart, como dije: "Quisiera que un DBChart se actualizara en..."; no utilizo ningun DBGrid ni nada parecido, es una ventana simple con un DBChart. Lo que sucede es que no se como hacer que el Componente IBDataSet se de cuenta que la base de datos ha tenido una modificacion o algun cambio y por lo tanto volver a consultar y obtener los nuevos datos. Para mi tiempo real (y para Wikipedia y otras Web) es algo como: un sistema que esta pendiente de lo que suceda y que presenta datos del ahora; por ejemplo si se ve la memoria de acceso aleatorio consumida de tu PC en este momento el dato es de tiempo real (no de ayer ![]() Resumiendo ![]() Un grafico DBChart (digamos que de linea) que este mostrando los datos actuales que se presentan en la base de datos (por supuesto especificamente de un campo) y que al cambiar estos datos (ya sea una edicion o un insert) este grafico se actualics. No se si exista alguna funcion que detecte cambios en la base de datos y que al cambiar inmediatamente se actualice. Estoy de acuerdo con lo que mencionas estimado Casimiro; si hago sentencias SELECT cada cierto tiempo con un Timer estaria hasta cierto punto siendo desconsiderado con los recursos. Estimado maeyanes; lo pruebo y posteo, de igual forma voy a probar lo que me dices estimado mightydragonlor; voy a intenarlo. Saludos a todos y gracias por responder. |
#10
|
||||
|
||||
Entonces te viene mejor los eventos, que cuando se actualice ese campo (o la tabla) salta el evento oportuno y tú te encargarías de presentar la gráfica con los nuevos datos, así sólo tendrías que hacerlo cuando realmente se han modificado los datos.
Creo que en algún hilo había un ejemplo que te puede venir perfecto, voy a ver si lo encuentro, aunque tampoco es muy complejo. Edito: busca por post_event, también por el componente indicado por mightydragonlor, para manejarlo desde delphi. Aquí hay un hilo que te puede servir.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal Última edición por Casimiro Notevi fecha: 20-10-2011 a las 00:58:08. |
#11
|
||||
|
||||
Como te han comentado usa los eventos, es un componente IBX, se llama IBEvente...
Cita:
2. El código del trigger lucirá algo así:
3. Ya volviendo al código del programa y dejando a un lado la base de datos vamos al componete IBEvent, en él usamos la propiedad registrar evento y ahí colocamos el nombre del evento creado en el trigger (el que yo llame 'NUevoRegistro'). 4. Acá queda faltando programar el evento del componente IBEvent (suena redundante, y puede ser confuso, pero este no es una propiedad si no un evento, como el onMouseUp o el OnClick), no recuerdo como se llama este evento, pero en el solo necesita poner algo así como esto:
Nota: Acá todo lo digo de memoria, así que puede haber muchos errores, pero es la idea de como funciona.
__________________
"Como pasa el tiempo..... ayer se escribe sin H y hoy con H" |
#12
|
||||
|
||||
Excelente amigos
Gracias amigos en cuanto lo realice posteo muy agradecido por su tiempo!
Saludos a todos. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
cláusula Order by impide actualizar en tiempo real? | anghell77 | SQL | 4 | 30-10-2006 05:11:39 |
Video en tiempo real | Fitoperu | Internet | 1 | 25-08-2005 21:47:07 |
Videos en tiempo real | Albano | Internet | 4 | 07-06-2005 22:51:56 |
Buen Pc en Tiempo Real | Rabata | Varios | 0 | 19-11-2003 16:48:01 |
Actualizar En Tiempo Real | GIVO | SQL | 3 | 21-07-2003 19:10:31 |
![]() |
|