![]() |
Operation not aplicable en tabla Paradox
Wop!
Me ha tocado volver a bajar a los abismos de Paradox y es bastante fustrante... en fin, habrá que aguantarse :( Al trapo, el tema es que tengo que conectar con una tabla paradox y, atención a la tontería, hacer un locate o, en su defecto, un filtro. Bien, el problema es que al hacer el Locate o al tocar la propiedad Filter (no filtered) da la majestuosa excepción que da título al hilo. Hasta aquí no me sorprendería demasiado, ya me curé de espantos con las excetricidades del BDE hace tiempo. El cachondeo viene cuando compruebo que la tabla no solo se abre bien si no que no da problemas para hacer insert's, edit's... No estoy hablando de que el fichero .db esté bien, si no que el propio componente TTable permite hacer todo esto sin problemas. Os explico las "peculiaridades" del modo de conexión. Por una historia que no viene a cuento, el módulo de datos se crea, una pantalla cliente hace una serie de acciones y después todo se destruye. Para conectar se crea un alias al vuelo ya que después no se volverá a usar, y se asignan las propiedades correspondientes. Todo esto se hace en un método público del DataModule Código:
procedure TDMCreaEmpre.Conecta(PNet, PLocal, PDir: String); NOTA: Provad a poner ' "operation not aplicable" Paradox' en google... es fustrante :rolleyes: |
Tiene algún índice esa tabla?
Todo parace indicar que lo que falta es crear al menos un índice. Un Saludo. |
Sí, tiene la primary key :confused: :confused:
|
Por si te da alguna referencia esta es la localización del error:
Cita:
Un Saludo. |
Y a todo esto, ¿cuál es el filtro que causa problemas?
// Saludos |
Cita:
|
Wop!
Tema solucionado.... casi :) Está souucionado porque he conseguido hacer lo que quería de otra manera... pero no me gusta hacer las cosas así, y menos si no entiendo porqué. Investigando en el tema de los índices que comentaba marcos, he comprobado que si el locate o el filtro lo hacía por los campos que formaban un índice el error no se producía :eek: . Esto me ha dejado flipado, ya que estoy cansado de hacer locate's por campos no indexados, va más lento, pero no peta :o . Cuál ha sido mi sorpresa cuando creando un proyecto nuevo y usando un alias "estático", podía buscar por campos que no formaban parte de ningún índice sin problemas. No he averiguado más. He optado por obtener el valor de la clave primaria mediante una quary y luego hacer el locate por la clave.... es una guarrada pour si muove ;) |
El problema me suena más a algún conflicto de instalación del bde, quizá alguna versión incorrecta. Si bien en Google como dices hay pocas referencias encontrarás más en los grupos de noticias de Borland.
// Saludos |
La franja horaria es GMT +2. Ahora son las 18:25:48. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi