Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Aplicaciones Concurrentes? (https://www.clubdelphi.com/foros/showthread.php?t=64757)

2-D@monic 17-04-2009 05:36:03

Aplicaciones Concurrentes?
 
Hola a todos en el foro....

Tengo una duda hace mucho pero ahora recién se me presentó otra vez este "problema" acerca de una forma de presentación de datos.... les comento:

Imaginemos que hay una ventana de una aplicación donde se muestra una grilla de datos, esta misma aplicación es utilizada al mismo tiempo por digamos 3 usuarios (en diferentes pc's), lo que deseo es que si alguién actualiza la grilla (que es una tabla en una BdD) estos datos los actualize en los demás usuarios automáticamente en sus grillas (sin que ellos hagan nada).... me explico?...... como puedo implementar esta característica?......... todo esto para un mejor control de concurrencia del sistema.

Saludos.

Kipow 17-04-2009 06:37:58

que motor de base de datos utilizas?

duilioisola 17-04-2009 09:29:44

Si tu base de datos maneja eventos. puedes crearlos para cada inserción o modificación de la tabla. Si tu aplicación recibe el evento, refrescas los datos.

Si no maneja eventos, puedes hacer polling a la tabla. Cada cierto tiempo, haces un select de la tabla para ver si algo ha cambiado. Por ejemplo, agregas una columna de "última modificación" y actualizas en el cliente solo lo que ha cambiado desde la última vez.

2-D@monic 17-04-2009 21:44:55

Casi siempre utilizo SQL Server, PostgreSQL o MySQL.....

como hacer polling a la tabla? refrezcar la tabla cada cierto tiempo con un timer o algo parecido?.......

rgstuamigo 17-04-2009 22:11:14

Quisas te pueda orientar algo este libro de trucos muy bueno por cierto,en la pagina 174 donde dice: La potencia del ClientDataSet I,II,III,IV,V;).
La verdad que es unos de los componentes mas completos que he visto y al parecer te controla todo.Quisas podria utilizarlo en ves de utilizar un dataset comun,que no es tan inteligente como este.;)
La verdad no sabia que ubiera en delphi un componente asi con esa potencia.:eek:;).
Hechale una leida te aseguro que te va orientar.;)
Saludos...:)

JXJ 18-04-2009 01:14:25

eso de base de datos que soporten eventos, no me lo sabia.

¿cuales son esas bases de datos.?

¿como se programa, para trabajar esos eventos.?

duilioisola 18-04-2009 16:35:33

Firebird es una de ellas (y la única que conozco).
En la paleta de componentes de Delphi 6 hay un componente llamado IBEvent.

Mira este pdf
http://www.firebirdsql.org/doc/white...ents_paper.pdf


La franja horaria es GMT +2. Ahora son las 05:28:58.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi