Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   PDOXUSRS.LCK y PDOXUSRS.NET (https://www.clubdelphi.com/foros/showthread.php?t=49369)

OscarRd 19-10-2007 17:13:00

PDOXUSRS.LCK y PDOXUSRS.NET
 
Saludos al foro

Mi Problema :

Trabajo con Delphi5 y como DBMS Ms Sql Server 8.0, tengo el ejecutable de la aplicacion en una carpeta compartida en la Red.

Cuando un usuario esta modificando un registro se crean los mencianados archivos, si otro usuario intenta ver ese mismo registro, es mas esa misma tabla, el sistema arroja el error de que: " Directory is Controlled by other .NET file" File : PDOXUSRS.LCK.

La verdad es que estoy desesperado, me he leido casi todos los temas relacionados de aqui del foro, pero no he podido evitar el mencionado error.

Que debo hacer ?
En el BDE poner el NET DIR a una carpeta compartida en la Red ?
Poner Local Share igual a True ?
Llamar el ejecutable usando un .bat con la direccion de la red tipo UNC ?

En el OnCreate del DataModule poner

En el evento OnCreate del Datamodule poner:

Session.NetFileDir:='\\servidor1\sistema\net';
Session.PrivateDir := 'c:\Temp';
Session.Active:=true;

nada de esto me ha funcionado.....

Cualquier ayuda o aporte sera bienvenido.

Gracias anticipadas.

Oscar Portorreal
Santo Domingo Rep. Dominicana.

poliburro 19-10-2007 17:36:30

Mi hermano, si estás trabajando con MsSql, lo mejor es ADO, olvidate del BDE.

OscarRd 19-10-2007 19:06:07

PDOXUSRS.LCK y PDOXUSRS.NET
 
Gracias por tu respuesta

pero la verdad es que mover toda una aplicacion a ADO, no es algo que se pueda hacer de un dia para otro.

Pero ya encontre la solucion para mi caso, buscando en la Web, y consiste en olividarerse de los Seteos del BDE es decir dejar los que vienen por defecto, nada de LOCAL SHARE=TRUE, dejarlo en FALSE etc.

Crear en la Red local una carpeta compartida, donde los usuarios del sistema tenga acceso de lectura y escritura, en mi caso yo la llame NetDirFiles, luego en el sistema, en el Evento OnCreate del DataModule le asigno a la propiedad Session.NetFileDir la ruta de la carpeta, la ruta debe de ser una ruta de Red tipo UNC, es decir estilo \\MiRutaDeRed\NetDirFiles, esto se lo asigno a una variable global que bien podria ser actualizada desde un archivo .INI (asi lo hice yo)

finalmente le asigno este valor como ya dije en el Evento OnCreate del DataModule, de la siguiente manera :

Session.NetFileDir :=gs_NETDIR;

donde gs_NETDIR contiene la ruta de :\\MiRutaDeRed\NetDirFiles


Espero que le sirva a alguien mas, porque a mi me ha salvado el dia o la vida para exagerar un poquito.

Gracias :D

marcoszorrilla 19-10-2007 22:08:46

Por lo que veo te falta el camino a la base de Datos:

\\MiRutaDeRed\Datos

Inicialmente elimina todos los lck a mano.

Un Saludo.


La franja horaria es GMT +2. Ahora son las 09:05:57.

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