FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Eterno problemas de indices
Hola gente... tengo delphi 5 y paradox... 15 pc una con NT (servidor) y otras W95/98/Me el problema es que se rompen los indices...
Tengo un Tsession, todas las tablas y querys apuntan al tsession, este componente tiene el netfiledir como \\servidor\c\sistema\datos y el private (dicen lugar visible) en C:\. El archivo *.NET siempre se aloja en el C: en cada máquina (el cual elimino al ejecutar el prg) y los *.LCK se alojan en Datos. La ruta del servidor lo leo al arrancar cada prg de un .Ini, el Tsession se activa despues de leer el .ini... Funcionó bien unos días (1 semana) y ahora se rompen los indices todos los días . Tengo un prg que los arregla pero para hacerlo necesito apagar todas las pc (o salir del prg) y bueno no es solución... He leido todos los artículos que encontré en la internet más los del club... aparentemente esta todo correcto pero no es asi. ¿Tendrán alguna sugerencia? Gracias bye
__________________
Por qué todas las personas saben exactamente cómo debemos vivir nuestra vida, y nunca tienen idea de cómo deben vivir sus propias vidas.
|
#2
|
||||
|
||||
Cita:
Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#3
|
||||
|
||||
Gracias por responder tan rápido...
Cita:
Cita:
Gracias
__________________
Por qué todas las personas saben exactamente cómo debemos vivir nuestra vida, y nunca tienen idea de cómo deben vivir sus propias vidas.
|
#4
|
||||
|
||||
Cita:
Cita:
Los indices pueden corromperse, sugiero que uses el programa caerques (en la seccion "ejemplos" del Club) para mantener los indices y empaquetar la base de datos. Necesitarás saber que no hay más usuarios activos antes de rehacer los índices, esta función sirve de ayuda Espero que no haga falta más "uses". Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#5
|
||||
|
||||
Gracias Lepe...
Mira, tengo este código... Como ven le indico mediante un ini la ruta para el NetFileDir que segun el ini es \\server\sistema\datos y en el PrivateDir mmmm (cric cric cric pensando...) Aparentemente tengo mal el PrivateDir ya que de acuerdo a lo que Marcos dice -se debe crear en cada máquina. Gracias
__________________
Por qué todas las personas saben exactamente cómo debemos vivir nuestra vida, y nunca tienen idea de cómo deben vivir sus propias vidas.
Última edición por Pablo Carlos fecha: 03-04-2005 a las 01:28:33. Razón: Pensando |
#6
|
||||
|
||||
Parece ser que el NetFileDir lo tienes bien asignado, sin duda se trató de un fallo al postear el primer mensaje.
Advertencia: Cuando abres el Database Desktop, se crea el fichero .NET en C:\, puede que lo hayas visto por ese motivo, pero no afecta al programa. El PrivateDir, se puede poner apuntando a C:\WINDOWS\TEMP de cada máquina, la carpeta debe existir. Por cierto, LOCAL SHARE del bde lo has modificado?, es algo que no se ha mencionado. Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#7
|
||||
|
||||
Cita:
Cita:
No entiendo
__________________
Por qué todas las personas saben exactamente cómo debemos vivir nuestra vida, y nunca tienen idea de cómo deben vivir sus propias vidas.
Última edición por Pablo Carlos fecha: 04-04-2005 a las 00:31:18. |
#8
|
||||
|
||||
Yo siempre he visto los LCK en la carpeta de las tablas. Ahora mismo no puedo hacer la prueba.
Si alguien puede aportar más datos, será bienvenido, él y los datos Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#9
|
||||
|
||||
Si todo está bien configurado se crean en el PrivateDir de cada equipo cuando éste se conecta y se eliminan si no existe ningún fallo al desconectarse.
Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#10
|
||||
|
||||
Buenas... les comento para que quede registro en el club...
Todas las tablas y querys conectados al Tsession Todas las tablas tienen en el AfterPost FlushBuffers (no se si será bueno esto) Cuando se ejecuta el programa en cada máquina, (evento on create del datamodule) se abren las tablas y en el evento ondestroy se cierran las tablas. Cada máquina tiene instalado la aplicación y el bde. Tsession -> el PrivateDir le indico una carpeta visible de la pc local, en mi caso C:\Sistema. El NetFileDir se lo indico con un archivo ini que en este caso es \\Servidor\C\Sistema\Tablas (este archivo es leido al comenzar) En la form de ingreso verifico, con un if, que si están las tablas en c:\Sistema\Tablas modifico el registro a la clave local share poniendo ésta a TRUE de lo contrario (si no se encuentran las tablas) la clave local share pasa a FALSE con esto logro que automáticamente si es servidor es local y si la pc está en red local share es false... además de eliminar los LCK si es que aún están (por si no se borraron al salir de la aplicación, esto si es la maquina que está en red) dentro de 3 hs vere el funcionamiento... trataré de ubicar los NET y los LCK para saber exactamente donde se localizan en esta red y confirmaré la destrucción de los índices o la no destrucción ... Según la Cara oculta de delphi (por que tambien he estado leyendo ) cuando usas paradox en red no es aconsejable que el servidor trabaje en el prg, aconseja que sea sólo eso, servidor, que en mi caso no es posible . El siguiente paso, luego de ver ese tema, es seguir estudiando y/o preguntando al respecto o confirmar que todo va sobre rieles... Gracias a todos
__________________
Por qué todas las personas saben exactamente cómo debemos vivir nuestra vida, y nunca tienen idea de cómo deben vivir sus propias vidas.
Última edición por Pablo Carlos fecha: 04-04-2005 a las 18:20:24. Razón: Ampliando |
|
|
|