Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-02-2012
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Paradox en Red

Hola a todos.

Antes de nada, os pido disculpas por volver sobre un tema tan tratado en estos foros.

He estado leyendo muchas y buenas soluciones en los foros. Pero cada caso es particular, y no me dan luz sobre mi problema. Aparte de exigirme importantes cambios en la aplicación ya definida.

Intentaré ser breve:
Disculpad si digo alguna obviedad o barbaridad, pero soy muy novato en esto de las bases de datos.

Tengo un programa con dos bases de datos Maestro/Detalle, originalmente pensado para correr en monopuesto.
La implementación de las bases es manual, con lo que quiero decir que no he utilizado el DataModule.
Tengo dos TTable, dos TDataSource y un TDataBase, no utilizo alias, sino el propio directorio dondo están ubicadas.
Utilizo el siguiente código para abrirlas:

Código Delphi [-]
try
Fclien.database1.Session.NetFileDir:=DirActual;
FClien.ClienDB.DatabaseName:=DirActual;
FClien.ActosDB.DatabaseName:=DirActual;
FClien.ClienDB.Open;
FClien.ActosDB.Open;
except
begin
Application.MessageBox('Error en alguna Base de Datos. Utilice la opción "Reindexar Bases de Datos" del Menú Contextual, '+
                            '( Pulse el botón derecho del ratón en la pantalla principal del programa. )'+#13+
                            'Si ésto no resuelve el problema, póngase en contaco con el Servicio Técnico del programa.',
                            'Mensaje de Error',mb_OK + mb_IconError);
Exit;
end;
end; //try


Ahora necesito correrlo en Red.
No desearía tener que implantar una copia del programa en cada PC, dado que, aparte de las tablas, el programa usa distintos archivos que deben ser comunes a todos los usuarios y que deben estar accesibles en un mismo PC.

Lo he probado en una red local, llamando al programa desde otro PC de la misma red.
Aparentemente se abren los dos programas y funcionan independientemente, pero hay un problema de actualización de datos. Este problema consiste en que las modificaciones que realizo en un PC no aparecen en el otro, a pesar de que tengo puesto en el evento AfterPost:

Código Delphi [-]
ClienDB.FlushBuffers;
ActosDB.FlushBuffers;


He observado que cuando salgo del programa y vuelvo a entrar, los cambios sí están ahí. Llegando a la conclusión de que cuando cierro y abro las bases tengo acceso a las modificaciones realizadas.

Por lo tanto, he incluído en el formulario una bótón para realizar esta labor: cierrra las bases y las vuelve a abrir y así actualizo los datos.

Como entiendo que esto es una auténtica "chapuza", apelo a vuestra buena fe, y vuestros conocimientos, para que me iluminéis con una solución más elegante y práctica. Con los mínimos cambios posibles en el código, pues lo tengo muy repartido en varios formularios.

Anticipadamente os agradezco vuestro tiempo y vuestro esfuerzo.

Última edición por Casimiro Notevi fecha: 12-02-2012 a las 20:54:34.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Paradox En Red Y Bde NEOALEX00016 Conexión con bases de datos 15 28-03-2007 02:42:01
paradox en red Fabricio Conexión con bases de datos 4 17-03-2007 17:27:28
Paradox en Red Mariana Conexión con bases de datos 7 03-12-2004 20:03:45
SQL y Paradox Sick boy Tablas planas 4 22-10-2003 21:50:37
Paradox e Interbase, como hago para transportar todo lo de paradox a Interbase Fatima Gonzalez Firebird e Interbase 2 05-05-2003 18:02:30


La franja horaria es GMT +2. Ahora son las 00:38:22.


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