Ver Mensaje Individual
  #8  
Antiguo 01-03-2012
Ramirogd Ramirogd is offline
Registrado
NULL
 
Registrado: mar 2012
Posts: 3
Reputación: 0
Ramirogd Va por buen camino
hola jhonalone,
Por lo que dices tienes 2 opciones, o logras que funcione tu aplicacion tal y como está en multiusuario o la haces de nuevo con una base de datos decente.
Si quieres hacer tu aplicacion de nuevo, lo mas simple de manejar es firebird, pero tienes que hacer TODA la aplicacion de nuevo, ya que te cambian todos los componentes de conexion a base de datos. Si tu aplicacion es grande y tienes muchas instalaciones dando vueltas, tal vez sea lo mejor para el futuro. (si estas por hacer una aplicacion nueva te recomiendo firebird)
Pero si tu aplicacion es una sola y de pronto tienes que hacer que funcione en multiusuario, y no tienes mucho tiempo para migrar la aplicacion, entonces lo mejor es hacer que ande en paradox en red.
Paradox en red tiene bastantes problemas, o por lo menos yo tardé mucho tiempo en hacer que funcione correctamente. Seguro tienes problemas de concurrencia. Lo mas tipico al intentar hacer funcionar un sistema paradox en red es que copias el exe en dos maquinas, con el alias y las tablas en una de ellas, y desde la segunda apuntas el alias a la primera. Hasta ahi todo bien, pero de seguro tienes problemas de concurrencia (insertas en la PC1 y te da el ID 1000 y luego insertas en la PC2 y tambien te da el ID 1000).
Eso es porque el archivo de locks es distinto (PDOXUSRS.NET).
En el BDE, tienes dos solapas, Databases (donde creas los alias) y otra que dice Configuration. Dentro de esta ultima, ingresa en Drivers->Native->Paradox. Ahi vas a ver el campo Net DIR que por default tiene c:\. Ahi esta todo el tema. Ese es el path donde se encuentra el archivo PDOXUSRS.NET que es el que controla la concurrencia. En ese campo debes poner el mismo path absoluto en las dos pc. Es decir, si en la PC1 tienes el default c:\, en la PC2 tienes que poner \\PC1\c . Para no compromerter tanto el disco c: de la PC1, te sugiero crear una carpeta carpeta compartida o pones el archivo PDOXUSRS.NET donde estan las tablas.

En conclusion deberias tener lo siguiente:

PC1:
aplicacion en c:\app\miapp.exe
tablas en c:\app\tablas
PDOXUSRS.NET en c:\app\tablas
BDE alias en c:\app\tablas
BDE->configuration->Drivers->Native->Paradox->Net DIR en c:\app\tablas\PDOXUSRS.NET
compartir c:\app\tablas con el nombre tablas

PC2:
aplicacion en c:\app\miapp.exe
BDE alias en \\PC1\tablas
BDE->configuration->Drivers->Native->Paradox->Net DIR en \\pc\tablas\PDOXUSRS.NET

Paradox es medio inestable con aplicaciones que utilizan mucho las tablas. Te va apasar que se te corrompen las tablas (a mi me pasaba seguido) pero hay aplicaciones que sirven para reparar las tablas y son bastante automaticas (te recomiendo que lo tengas a mano)

Firebird anda muy bien y es muy simpre. Tambien es solo un archivo para toda la base de datos (tablas, indices, etc), osea que el backup es copiar y pegar y el usuario mas basico puede hacerlo y el mantenimiento de la BD es nulo.
Soporta bases de datos muy grandes (de cientos de tablas y millones de registros) sin problemas.

Hace 10 años que programo en delphi y si tengo que hacer una aplicacion uso firebird. Si la aplicacion es muy grande o tiene que correr en alguna empresa importante, uso Oracle o Postgresql (pero en estos casos ya necesitas saber un poco mas de bases de datos y de mantenimiento de cada una)

Saludos!
Responder Con Cita