Ver Mensaje Individual
  #2  
Antiguo 31-07-2014
Avatar de lmpadron
lmpadron lmpadron is offline
Miembro
 
Registrado: feb 2009
Ubicación: Habana, Cuba
Posts: 204
Reputación: 16
lmpadron Va por buen camino
Saludos Yugo y bienvenido al ClubDelphi

Cita:
Empezado por Yugo Ver Mensaje
Hola a todos/as, me gustaría pediros consejo sobre una tarea. Os explico un poco...
Amigo mio mientras mas clara sea la pregunta mas fácil podrá ser darte una respuesta, eso que pones no explica mucho, al contrario enreda bastante !!! Pero bueno vamos a ver si podemos ayudar.

En esencia tienes una Tabla1 y una tabla2. Necesitas recorrer los campos de la tabla2 y mientras se hace (usando el DBNavigator) ir comprobando ese valor de la tabla2 con todos los de la Tabla1 buscando posibles coincidencias en los campos ID y FREC.

Bueno vamos a ver si podemos ser de ayuda, BCB usa en el BDE como SG el SQL lo que facilita bastante la vida, en caso de que estés usando el BDE para conectarte a la tabla, si estas usando ADO pues también tienes SQL.

Por lo tanto lo que debes hacer es obtener el momento en que se ejecuta la acción, eso bien lo podrías hacer programando directo en el DBNavigator, detectando el botón que se presiona

Código:
AnsiString BtnName;
  switch (Button)
  {
    case nbFirst:
    {
        //aki va tu código 
        break;
    }
    case nbPrior:
    {
        //aki va tu código
        break;
    }
    case nbNext:
    {
        //aki va tu código
        break;
    }
    case nbLast:
    {
        //aki va tu código
        break;
    }
  }
o mas directo en el componente que uses para mostrar la tabla ya sea ADOQuery o Query en su evento AfterScroll que en esencia siempre se activará cuando el usuario se mueva del registro actual, ya sea al anterior, próximo, primero o ultimo.

Una ves detectada la acción solo nos queda programar la comparación que puede ser un sencillo SELECT de SQL (aquí te dejo la lógica de como debería ser)

Código SQL [-]
SELECT * FROM  tabla1 WHERE tabla1.Frec1 = tabla2.Frec2.2 AND  tabla1.Id1 = tabla2.Id2.2;

Una ves hecho esto solo debes mostrar el resultado de la comparación en un componente de tu elección para que tu usuario pueda determinar que hacer

Espero que esto te sea de ayuda, si quieres mas detalles entonces debes dar mas detalles tu también, hay uno de los miembros de la comunidad que tiene en su pie de firma una frase estupenda (a mi en lo personal me encanta) que dice "La calidad de la respuesta es directamente proporcional a la calidad de la pregunta". Saludos
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código.


Cuando miras fijamente al abismo, este te devuelve la mirada


oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_
oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_
oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_
oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_
oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_
ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_
________________________________________________________________________________

Última edición por lmpadron fecha: 31-07-2014 a las 18:21:43.
Responder Con Cita