Club Delphi  
    FTP   CCD     Enlaces   Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Desplegado
  #1  
Antiguo 06-04-2012
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 164
jhonalone Va por buen camino
Locate me tiene LOCO

Hola a todos y gracias a los que me leeis con intención de ayudarme.

Explico el título:

Tengo dos tablas Master/Detail abiertas.

Intento hacer un Locate en la tabla Detail.

No localiza el registro, a no ser que sea el primero por orden alfabético de la tabla Master. (Tengo un índice alfabético, evidentemente, His es el nexo común entre las dos tablas, asignado a la popiedad MasterField de la tabla Detail)

Adjunto código:
Código Delphi [-]
 
if not (FClien.ActosDB.Locate('His; FechCitaActo; HoraCitaActo',VarArrayOf([Historia,Fecha,Hora]),[LoCaseInsensitive]))
  then begin
         // Mensaje de Error
         end;

Gracias a todos por vuestro esfuerzo.
Si alguien, más experto que yo en tablas, me lo explica y me aporta una solución se lo agradeceré.

Saludos.
Responder Con Cita
  #2  
Antiguo 06-04-2012
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 164
jhonalone Va por buen camino
Parece ser que he dado con el error.

Primero tengo que hacer un Locate por el campo común en la tabla Master, después ya actúa el Locate de la tabla Detail.

Curioso, verdad (¿?)

Espero que a alguien, en mi situación o parecida, le pueda servir.

Saludos a todos.
Responder Con Cita
  #3  
Antiguo 06-04-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: Planeta Agua
Posts: 22.693
Casimiro Notevi Va camino a la fama
Hola, independientemente del problema o la solución, por favor, recuerda poner títulos descriptivos a tus preguntas, gracias
__________________
/* Saludos
*/
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código

$ sudo mv system > /dev/null

Responder Con Cita
  #4  
Antiguo 06-04-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 7.900
ecfisa Es un diamante en brutoecfisa Es un diamante en brutoecfisa Es un diamante en bruto
Cita:
Empezado por jhonalone Ver Mensaje
Parece ser que he dado con el error.

Primero tengo que hacer un Locate por el campo común en la tabla Master, después ya actúa el Locate de la tabla Detail.

Curioso, verdad (¿?)
Hola jhonalone.

En realidad no. Es el funcionamiento intrínseco de una relación master/detail, la tabla maestra restringe el resultado del conjunto de registros de la tabla detail.

Cuando se cambia el registro activo de la tabla maestra, se restringe el conjunto de registros de la tabla detail a los registros relacionados, si realizaramos un Locate sobre la tabla detalle, solo será efectivo sobre el conjunto restringido por la relación.

Por ejemplo:
Código:
MASTER       DETAIL
---------+----------------
ID  DATO | DATO MASTER_ID
---------+---------------- 
1   A    | X1   2 
2   B    | X2   1
3   B    | X3   2
Estando posicionados en el registro 2 (B) de la tabla MASTER, el conjunto de registros relacionados (y por lo tanto accesible) en la tabla DETAIL será: {X1, X3} por lo que un Locate con un KeyValue igual a X2 no será concretado.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 08-04-2012
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 164
jhonalone Va por buen camino
Hola.
Mis disculpas por el título, Casimiro. Mis emociones nublaron mi sensatez.
Gracias por tu explicación, Ecfisa. Como siempre, tus explicaciones son más que claras, CRISTALINAS.
Saludos a ambos.
Responder Con Cita
  #6  
Antiguo 08-04-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: Planeta Agua
Posts: 22.693
Casimiro Notevi Va camino a la fama
Cita:
Empezado por jhonalone Ver Mensaje
Mis emociones nublaron mi sensatez.
Las emociones nos pueden
__________________
/* Saludos
*/
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código

$ sudo mv system > /dev/null

Responder Con Cita
Respuesta


Herramientas
Desplegado

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
query que me tiene loco oscarac SQL 2 03-12-2009 16:45:19
este bde me trae loco Rabata Conexión con bases de datos 2 06-09-2005 21:37:48
loco loco.... no actualiza INTERBASE DELPHI5 fixarg Conexión con bases de datos 1 04-11-2004 06:44:27
OnKeyPress y fsMDIForm = LOCO!!! nicolasdom Varios 11 09-10-2004 16:32:55
Mi navigator esta loco nefy Varios 7 19-05-2004 16:58:44


La franja horaria es GMT +2. Ahora son las 16:46:17.


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