Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-01-2015
Catublipas Catublipas is offline
Miembro
NULL
 
Registrado: ene 2015
Posts: 55
Poder: 12
Catublipas Va por buen camino
Rectifico esa sería la interseccion te muestro las dos tablas:

TABLA PROYECTMANAGER

Código SQL [-]
    ProyectM  Proyectos        
     6            1                                                             
     6            2                                         
     6            3

TABLA FACTURAS

Código SQL [-]
Proyectos       Factura        Importe  
  1               001           200€
  1               002           300€
  1               003           5400€
  2               004           100€
  2               005           700€
  3               006           1200€
Responder Con Cita
  #2  
Antiguo 20-01-2015
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.679
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Pero si lo tienes hecho. De la BD1 extraes los proyectos:
Código SQL [-]
select proyectos from froyectmanager where proyectm= : parametro
Luego puedes crear un string con el resultado, mediante un bucle, algo similar a:
Código Delphi [-]
cProyectos:=''
while not query1.eof do
  cProyectos = cProyectos + query.fields[0].asstring + ','
  query1.next
end;
Ahora tienes en cProyectos algo así: 1,2,3,
Quitas la última coma, que sobra.
Ahora montas una sql para la BD2
ibquery2.selectsql.text='select proyecto,factura,importe where proyecto in (' + cProyectos + ')'
Y la ejecutas.
Ya tienes los resultados en el ibquery2, que si lo enlazas mediantes un datasource a un dbgrid... ya está.
Responder Con Cita
  #3  
Antiguo 21-01-2015
Catublipas Catublipas is offline
Miembro
NULL
 
Registrado: ene 2015
Posts: 55
Poder: 12
Catublipas Va por buen camino
Eyyy que buena idea .
Lo pruebo este mediodía y te digo algo .
Muchas gracias!!
Responder Con Cita
  #4  
Antiguo 27-01-2015
Catublipas Catublipas is offline
Miembro
NULL
 
Registrado: ene 2015
Posts: 55
Poder: 12
Catublipas Va por buen camino
Buenas Casimiro,
estoy retomando el tema y tiene muy buena pinta, porque me quitaría un bucle anidado.
Una pregunta ¿Como recorro el String para que se tome como parámetro la variable cProyectos en la segunda consulta?

Muchas gracias!
Responder Con Cita
  #5  
Antiguo 27-01-2015
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.679
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por Catublipas Ver Mensaje
¿Como recorro el String para que se tome como parámetro la variable cProyectos en la segunda consulta?
No tienes que recorrer el string, solamente quitarle la última coma, que no sirve.
Por ejemplo, si en cProyectos tenemos '1,2,5,14,22,' quitamos la última coma y la sentencia quedará como he puesto antes:
Código Delphi [-]
unavariable = 'select proyecto, factura, importe where proyecto in (' +cProyectos+ ')'
Por lo que la variable unavariable tendría:
Código SQL [-]
select proyecto, factura, importe where proyecto in ( 1,2,5,14,22 )
Lo asignas al query y lo ejecutas, nada más.
Responder Con Cita
  #6  
Antiguo 27-01-2015
Catublipas Catublipas is offline
Miembro
NULL
 
Registrado: ene 2015
Posts: 55
Poder: 12
Catublipas Va por buen camino
He eliminado la coma última, y he hecho lo que me has puesto, pero me salen los campos vacíos, sin embargo si en cProyectos lo igualo a un solo numero de proyecto, si que me coge los datos. Pero el string lleno de proyectos no. Es decir, solo con un numero de proyecto si que va, con varios separados por comas no.

¿Por qué puede ser esto?
Responder Con Cita
  #7  
Antiguo 27-01-2015
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.679
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por Catublipas Ver Mensaje
¿Por qué puede ser esto?
Haz un copia->pega de tu código para que pueda verlo
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
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
Escuchar BBDD Guti13 Conexión con bases de datos 2 03-11-2014 17:49:23
Acceso a BBDD hybrid Conexión con bases de datos 1 14-11-2009 17:55:03
Consulta a tabla de bbdd Firebird externa Gonbamon Firebird e Interbase 4 05-07-2008 05:32:26
copia de bbdd majosf Conexión con bases de datos 3 18-11-2005 20:49:19
BBDD database.wrk ??? Mulero Conexión con bases de datos 8 03-11-2005 11:24:31


La franja horaria es GMT +2. Ahora son las 20:26:03.


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