Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-06-2008
Avatar de Espartaco
[Espartaco] Espartaco is offline
Miembro Premium
 
Registrado: oct 2005
Posts: 107
Poder: 19
Espartaco Va por buen camino
Relacion familias y articulos

Hola de nuevo, amigos del foro. Esta vez tengo un problema con SQL y se me esta resistiendo. Decir antes que nada que lo tengo resuelto con dos querys, pero tengo que abrir y cerrar uno de ellos dentro de un bucle, 12 veces por cada registro del otro, en consecuencia me esta dando un error de 'Invalid parameter', y por lo que he podido leer en el foro, este error se debe precisamente a eso, es decir a abrir tantas veces los querys, por tanto estoy intentando realizar el proceso en uno solo si es posible. Uso Delphi 5.0 y tablas Paradox.

Tengo dos Tablas. En la primera guardo los datos del local (numero, direccion, poblacion, etc.), el numero es unico por cada registro.
La otra tabla la podemos enlazar por el campo numero, y el resto de campos es articulo, familia y pulsadores.

Decir que los articulos estan agrupados por familias.

Lo que necesito obtener en una sola tabla, es numero, direccion, articulo, pulsadores. El problema es que en cada registro necesito tener todos los articulos que hay en la familia y el numero de pulsadores que utiliza.

Por ejemplo: Tenemos la familia Pepito a la que pertenecen los articulos A, B, C, D y E.

Bien pues el resultado seria:

Código:
Local  Domic.  Art 1  Puls. Art 2 Puls  Art 3  Puls etc ....
 1    lllll     A      5      B    2     C      1
 2    HHHHHH    A      1      B          C      2
 3    TTTTTT    A             B    1     C      3
No se si me he explicado bien, porque es un poco enrevesado, pero con mucho gusto lo vuelvo a explicar de otra forma.

Agradeceria enormemente vuestra ayuda, como siempre.

Un saludo

Última edición por Espartaco fecha: 17-06-2008 a las 19:42:30. Razón: solo para refrescar
Responder Con Cita
  #2  
Antiguo 17-06-2008
Avatar de Espartaco
[Espartaco] Espartaco is offline
Miembro Premium
 
Registrado: oct 2005
Posts: 107
Poder: 19
Espartaco Va por buen camino
soy yo mismo, es para que no se pierda el post.
Responder Con Cita
  #3  
Antiguo 17-06-2008
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Yo en estes casos lo que hago es crear archivos temporales y les voy pasando los datos.

En algunos casos realizo dos pasos, incluso tres.

Selecciono con una consulta, recorro y voy colocando los datos en un archivo temporal con una segunda pasada envío los datos a un segundo archivo y finalmente los muestro.

Con esto he observado que se mejora mucho el rendimiento, se evitan realizar consultas muy complicadas a veces imposibles...

Espero te sirva la idea.


Los archivos temporales por supuesto se crean en el ordenador local no en el servidor.
Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #4  
Antiguo 18-06-2008
Avatar de Espartaco
[Espartaco] Espartaco is offline
Miembro Premium
 
Registrado: oct 2005
Posts: 107
Poder: 19
Espartaco Va por buen camino
Gracias por responder Marcoszorrilla.

Efectivamente, asai es como lo tengo solucionado de momento, lo que pasa es que como explico en el post, la solucion que le di en su momente abria repetidamente un query, y antes iba bien porque habia pocos registros, pero ahora me lanza el error que indico arriba casi continuamente. De todas formas estoy trabajando en alguna forma para que no tenga que iterar tanto sobre el query, pero claro si con un solo query fuera posible seria fantastico.

Mi problema tambien es que la version que tengo de SQL es la que viene con Delphi 5, y muchas de las cosas que he visto para MySql no las admite. He estado bicheando para instalar MySql en mi ordenador pero todo lo que encuentro esta muy enrevesado y no me atrevo no vaya a ser que no rulen los proyectos en los que estoy trabajando.

De todas formas agradeceria cualquier informacion al respecto. Compre el libro "Curso de SQL" de Anaya, pero la verdad me ha ayudado poco por el motivo que indico en el parrafo anterior.

Muchas gracias.
Responder Con Cita
  #5  
Antiguo 18-06-2008
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Asi a bote pronto, quizás si agrupas por familia y articulo y totalizas te ahorrarías procesos?


Creo que lo que estás buscando es una instrucción del tipo "pivot", que Paradox no tiene.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #6  
Antiguo 19-06-2008
Avatar de Espartaco
[Espartaco] Espartaco is offline
Miembro Premium
 
Registrado: oct 2005
Posts: 107
Poder: 19
Espartaco Va por buen camino
muchas gracias marcoszorrilla por tu interes.

Seguiré intentándolo.

Un saludo
Responder Con Cita
  #7  
Antiguo 19-06-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Yo en delphi 6 y usando el BDE he visto en la paleta de componente el "Decision cube" y creía que servía para lo que dices. No los he usado, pero estar... están. Espero que tengas suerte y en Delphi 5 también los tengas.

En cuanto a lo de "bichear", si tienes una máquina potente, puedes usar virtualización , así tu ordenador no se ve afectado por las cosas que instalas.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 19-06-2008 a las 15:52:35.
Responder Con Cita
  #8  
Antiguo 20-06-2008
Avatar de Espartaco
[Espartaco] Espartaco is offline
Miembro Premium
 
Registrado: oct 2005
Posts: 107
Poder: 19
Espartaco Va por buen camino
Gracias Lepe por tu respuesta, he buscado en delphi 5 el Decision Cube y no le he encontrado por ningun sitio.

Creo que voy a tener que actualizar a Delphi 7, pero es que no se cuanto me va a costar y si los proyectos se pueden migrar sin problemas. Agradecería cualquier información.

Un saludo,
Responder Con Cita
Respuesta



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
tabla articulos josi Varios 28 02-04-2008 10:30:55
cantidad de articulos juanchopit Varios 3 20-09-2005 05:57:54
Artículos en cd nugame Conexión con bases de datos 0 01-12-2004 13:03:45
Los artículos que mas aparecen magm2000 SQL 4 23-02-2004 16:40:55
Familias de productos con TTreeView thunor Varios 0 10-08-2003 01:51:01


La franja horaria es GMT +2. Ahora son las 11:43:29.


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