PDA

Ver la Versión Completa : Manejo de aplicacion en red y paradox


salvanano
02-08-2007, 15:35:51
Hola! tengo gun gran problema y creo que la solución es un tanto dificil.
Tengo una aplicación hecha con delphi 6 y utilizo bbdd paradox. En principio la aplicación fue creada para trabajar en un solo ordenador.
La cuestión es que han puesto un nuevo equipo y quisiera que con la misma aplicación se trabaje sobre una única base de datos. En un equipo tengo la aplicación junto a la bbdd y en otro solo tengo la aplicacion.
Bueno pues mi problema es que a la hora de meter datos desde un equipo el otro no lo ve y viceversa, para que la otra aplicación registre el cambio hay que cerrar el programa y volver a abrirlo y liar un pitoste que no es nada profesional.
He mirado por el foro sobre triggers y demás pero no e visto nada claro y concreto.
Me gustaría que me dijesen si puedo hacer que los cambios en la bbdd se actualicen automaticamente y se vean en el otro equipo (aunque alla un tiempo de demora) y si se puede hacer con paradox, porque por lo que e leido paradox es muy malo para eso.
Muchas gracias de antemano

poliburro
02-08-2007, 16:02:15
Ok, de entrada te comento que un auto update no es para nada recomendable, sea la base de datos que sea, Te explico,

Imagina un escenario donde el Usuario A, Actualiza 10 registros por minuto, de una tabla que tiene relación con la pantalla del usuario B. Lo que sucedería es que el usuario B, no podría trabajar pues la sincronización provocaría que si estas en un grid, el scroll bloquearia la edición de registros y paralizaría momentaneamente la aplicación. Una tabla con hasta 5000 registros no paraliza mucho tiempo la actualización. Imagina una con 300 000.

Yo te propongo que en las pantallas que así lo requieran, agregues un botón de Refresh.

eduarcol
02-08-2007, 16:28:59
Te recomiendo leer este articulo alli se resolveran tus dudas

Paradox en Red (http://www.clubdelphi.com/trucos/index.php?id=105&scroll=0&scrollb=0)

salvanano
02-08-2007, 17:02:48
Gracias por vuestras respuestas.
La cuestión es que ya lo he hecho como se me dice en el enlace que pone eduarcol, es asi como he estado trabajando hasta ahora para mejorar la aplicaicón.
La cuestión es que funciona bien pero el problema es que como mu bien dice poliburro hay que refrescar las tablas para que se vean los cambios en el resto de equipos, o bien que es lo que he hecho es cerrar la ventana y volverla a abrir.
Mi duda ahora es ¿cómo puedo hacer que cada vez que se realize una modificación en cualquier ordenador se vea en el otro sin que el usuario no tenga que hacer nada? ya que eso es un poco '¿cutre?'.
En caso de no poder hacerse, y verme obligado a que el usuario refresque las tablas, con solo desactivar y activar las tablas es suficiente no?
Por cierto, todas las tablas tienen la propiedad autorefresh a True, pero al ser en red supongo que no funcionara.
Un saludo