FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#21
|
||||
|
||||
Cita:
¿A qué lumbreras se le ocurrió esa chapuza inmensa, además dividido en 2 bases de datos? Creo que necesitas hacer una reestructuración del sistema. Eso es una chapuza tremenda. |
#22
|
|||
|
|||
Perdona las comas las he puesto yo, pero ya tengo la solución(aunque tengo un problema):
Mi problema ahora es que es extremadamente lento(10 segundos).¿Se te ocurre algo? Y estoy contigo, es una enorme chapuza, y porque no has visto la base de datos, si no te daría algo. De todas formas muchas gracias de nuevo! |
#23
|
||||
|
||||
Cita:
Entonces la estructura de las bases de datos y lo que se guarda en los campos esos, ¿cómo es?, ¿no es como estás informando?, ¿entonces de qué estamos hablando? El sistema que empleas es lento porque recorres todo ibquery2 por cada ibquery1. |
#24
|
|||
|
|||
Perdona Casimiro,
ha sido que he mostrado yo los datos mal los datos no están separados por comas, en lugar de separarlos por espacios para mostrarte los resultados. Lo he hecho con "," para separarlos pero en la base de datos no hay nada más que el dato. Por lo que he visto parece buena opción hacer un vínculo ODBC de las BBDD, unificarlas y hacer la consulta como si se tratara de una BBDD. ¿Te parece buena solución? ¿Sabes si hay información en el foro sobre esto? Ando un poco pegado con esto la verdad. Un saludo y muchas gracias de nuevo! Última edición por Catublipas fecha: 20-01-2015 a las 08:55:11. |
#25
|
||||
|
||||
Cita:
Veamos si he comprendido, en esos campos tienes valores separados por espacio, ejemplo: importe=100,25 325,68 489,21 ¿Eso es así? |
#26
|
|||
|
|||
Perdona, lo que yo quería mostrar con las comas, eran los datos que contienen esas tablas. No ha sido la mejor forma de mostrar los datos, perdón.
Ejemplo:
|
#27
|
||||
|
||||
Y la otra tabla, pon un ejemplo similar, por favor.
|
#28
|
|||
|
|||
#29
|
||||
|
||||
Pero si lo tienes hecho. De la BD1 extraes los proyectos:
Luego puedes crear un string con el resultado, mediante un bucle, algo similar a: 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á. |
#30
|
|||
|
|||
Eyyy que buena idea .
Lo pruebo este mediodía y te digo algo . Muchas gracias!! |
#31
|
|||
|
|||
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! |
#32
|
||||
|
||||
Cita:
Por ejemplo, si en cProyectos tenemos '1,2,5,14,22,' quitamos la última coma y la sentencia quedará como he puesto antes: Por lo que la variable unavariable tendría: Lo asignas al query y lo ejecutas, nada más. |
#33
|
|||
|
|||
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? |
#34
|
||||
|
||||
Haz un copia->pega de tu código para que pueda verlo
|
#35
|
|||
|
|||
Con este ejemplo si que funciona, ha sido una prueba que quería hacer ya que con la variable asignada a un solo proyecto si que funciona :P, ademas superrapido.
Y este sería el código que debería funcionar:
La segunda al dejar la variable con los proyectos separados por ',' no muestra resultado, sin embargo la primera va clavada, muestra los resultados de ese proyecto. |
#36
|
||||
|
||||
Esto va al revés:
De todas formas, pon un breakpoint en la línea IBQuery2.Open y cuando se detenga ahí, mira el valor de IBQuery2.SQL.Text |
#37
|
|||
|
|||
El valor de
Me pilla perfecto todos los proyectos, pero no los muestra . |
#38
|
||||
|
||||
Coge la sentencia (copy/pega) y ejecútala en el flamerobin, ibexpert o en el 'manager' que uses.
|
#39
|
||||
|
||||
Código:
171,18 1,196, |
|
|
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 |
|