FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Trapicheando con tablas ;)
Hola a todos, me ha surgido el siguiente problema:
Tengo una tabla, con un campo con el numero de cliente y los campos de nombre y apellidos. Pues tengo que meter en otra tabla temporal un registro con el campo del numero de cliente y tantos campos como registros con ese mismo numero haya en la tabla original. No se si me he expicado bien, pondre un ejemplo. Tenemos en la tabla 5 clientes con el numero de cliente 20. Pues necesito meter en la tabla temporal en un registro el campo del numero y tantos como clientes, osea en este caso 5 campos con los nombres. Y esto puede variar claro, segun los clientes que tengan el mismo numero. El problema? que no tengo mu claro como hacerlo Alguna idea? LLevo un rato intentando montarme la pelicula y me he encontrado con un pequeño problema extra; ¿como puedo crear un campo en la tabla temporal en tiempo de ejecucion? La verdad es que ahora mismo siento una especie de impotencia extraña, se lo que tengo que hacer mas o menos, pero no se como llevarlo a cabo Un saludo y gracias anticipadas. Última edición por acrophet fecha: 07-05-2004 a las 11:37:42. |
#2
|
||||
|
||||
Hola.
Yo no te he entendido demasiado bien, no sé los compañeros. ¿ Puedes volver a explicarlo ? ¿ Quizá con un ejemplo ?. Seguramente deberías también decir con que base de datos trabajas, puesto que las tablas temporales se gestionan distinto en cada motor. NOTA: Para añadir un campo a una tabla (sea temporal o no), tienes la instrucción del ALTER TABLE ... ADD FIELD .... (consulta la documentación de tu base de datos). Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#3
|
|||
|
|||
vale, dare mas detalles.
Pues utilizo interbase,y la tabla temporal la creo con un rxmemorydata. Todo eso de alter table y tal ya lo conozco, pero¿como lo hago en una tabla temporal? |
#4
|
|||
|
|||
Yo tampoco entendí muy bien, sin embargo no sé porque no utilizás un query y luego se lo asignas al rxmemorydata, de esta manera todo se resume a un simple SELECT.
__________________
Suerte .: Gydba :. |
#5
|
|||
|
|||
A ver, os lo expondre "asciimente"
Tenemos esta tabla: numero nombre apellidos ----------------------------------- 30 pepe diaz 30 manolo sanchez 35 juan lopez 35 sandra perez pues la temporal debe quedar tal que asi: numero nombre1 nombre2 ..... ----------------------------------------------- 30 pepe diaz manolo sanchez 35 juan lopez sandra perez Osea que necesito crear tantos campos como clientes con ese mismo numero tenga. Supongo que ahora habra quedado un poco mas claro lo que quiero. Sorry por no saber explicarlo bien. PD. ahora que lo he visto posteado, no ha quedado como lo habia escrito(los espacios de separacion que habia puesto, se han reducido a uno solo), pero vamos se entiende lo que quiero hacer, no? Un saludo. |
#6
|
||||
|
||||
Hola.
Necesitas estos datos a nivel de base de datos, o solamente a nivel de aplicación?? Si haces un pequeño stored procedure que te vaya SubNumerando a los clientes, es fácil hacerlo con un DecisionCube... Hago la pregunta/sugerencia porque me parece que estas mezclando el concepto de "tabla temporal" (que es un objeto a nivel de base de datos en motores como SQL Server) con una vista especial de los datos a nivel de la aplicación cliente.. Hasta luego. pd. por cierto, para evitar el efecto (normal) de perdida de espacios, podes valerte de la etiqueta [ code ] (vínculo al manual en mi firma)
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#7
|
|||
|
|||
Ante todo, gracias por la rapida respuesta
Yo creo que necesito eso a nivel de base de datos (creo). Lo que intento es imprimir unas etiquetas, pero en cada etiqueta debe ir lo que en mi "tabla temporal" expongo. Si listara las etiquetas tal cual tengo la tabla ahora, pues me saldria una para cada registro, y no es lo que yo pretendo. Yo quiero que los que coincidan en el numero, pues salgan en la misma. Si me aclaras a que nivel tengo que referirme, mejor Y nuevamente gracias por perder el tiempo con un pobre desvalido |
#8
|
||||
|
||||
No quisiera criticar tu diseño... pero creo que tenes un serio problema en la base de datos. No me imagino porque varios clientes podrian tener el mismo código... y mucho menos para que imprimirlos en una misma etiqueta??
Además... si es para imprimir etiquetas, tampoco veo porque el "invento" este tenga que estar a nivel de base de datos?? mas todavia!!!
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#9
|
|||
|
|||
Vale, igual no he expresado bien mi situacion.
El numero no es es un numero relacionado con el cliente realmente, sino con una tarjeta. Todos los que tienen el mismo numero deben ir en la misma tarjeta(Titular-beneficiario). No tengo problemas de diseño, quiza no explique bien el caso |
#10
|
||||
|
||||
Cita:
Saludos. |
#11
|
||||
|
||||
Olvida mi mensaje anterior.
He vuelto a leer todo el hilo y yo estaba equivocado, ahora sí he conseguido entenderlo. Disculpas y saludos. |
#12
|
|||
|
|||
Bueno, al fin alguien ha entendido lo que quiero!!! jajaja
En fin, espero que alguien me pueda dar unas indicaciones de como hacer lo que me propongo. Un saludo y gracias a todos por la colaboracion. |
#13
|
||||
|
||||
habia publicado una respuesta en este espacio, pero envista de tu mensaje anterior, prefiero eliminarla. Si te llegó por correo, pos tenes suerte de verla. Que lamentable expresión de exigencia!
Mejor lee la guia de estilo. hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#14
|
|||
|
|||
Si que te..
Si que te metiste en un lio je je je
En realidad no es tan dificil.. por que no piensas que el mundo tiene 3 dimensiones y que la computadora la vemos de dos... weno pues usemos la segunda dimension de la compu.. osease a lo ancho.. je je je (ya se recibire criticas por el comentario, pero ahi va la idea..) Primero no debes de crear tantos campos como nombres alla...por que puede tronar, puede tronar.. creo que su limite es de 255 campos..(si estoy mal ahi me avizan) Por que no mejor creas un campo Blob... Ordenas primero tu tabla x Numero de tarjeta y nombre para que salgan ordenaditos despues con un simple While... hagamoslo.. pones un TListBox Código:
Procedure.... Var Tar : Integer; Begin Tar := 0; ListBox1.Items.Clear; While Not Tabla.EoF Do Begin //aqui supongo que tu nombre del campo es NumTar ahi lo cambias If Tabla.FieldByname('NumTar').AsInteger <> Tar Then Begin //Primero metemos If Tar <> 0 Then //por que luego luego va a querer meter y no podemos //dejar eso por que esta vacio Begin //metemos a tu base TablaTemp.Insert; TablaTemp.fieldByName('NumTar').AsInteger := Tar; TablaTem.FieldByName('Nombres').Assign(ListBox1.Items); TablaTem.Post; ListBox1.Items.Clear; Tar := Tabla.FieldByname('NumTar').AsInteger; End Else Tar := Tabla.FieldByname('NumTar').AsInteger; ListBox1.Items.Add(Tabla.FieldByname('Nombre_Cliente').AsString); End; Tabla.Next; End; //Ahora aqui volvemos a meter por los sobrantes... TablaTemp.Insert; TablaTemp.fieldByName('NumTar').AsInteger := Tar; TablaTem.FieldByName('Nombres').Assign(ListBox1.Items); TablaTem.Post; End; Tus datos ahora los veras asi... Código:
Campo Nombres 30 Juan Charrasqueado Chuchita la Bolsearon Juana Perengana Sultana (Como iba a faltar la famosisima) 35 Petra Chana El Peyote Asesino . . . Nada mas faltaria que les quieras hacer esos campos....pero ya puedes hacerles los que quieras
__________________
saludos desde Puebla Mexico.. asanxt@hotmail.com "como siempre a sus ordenes y siempre con buena cara" 'lolita me excitas, perversa piel de melocotón' Última edición por sanxpue fecha: 07-05-2004 a las 19:31:42. |
#15
|
|||
|
|||
Cita:
No creo que me haya comportado mal con nadie, asi como nadie se ha comportado mal conmigo. De todas formas si te has sentido molestado, pido discultas. Un saludo, y de nuevo gracias por la ayuda prestada. |
#16
|
|||
|
|||
pero weno..
compañero acrophet... te sirvio la idea o que pasion je
__________________
saludos desde Puebla Mexico.. asanxt@hotmail.com "como siempre a sus ordenes y siempre con buena cara" 'lolita me excitas, perversa piel de melocotón' |
#17
|
|||
|
|||
Perdona tio, olvide responder a tu post
Pues la verdad es que con ese codigo que me pusiste, no sale lo que yo queria, pero vamos, tampoco esperaba eso. Te puedo decir que me ha ayudado muchisimo ya que gracias a tu explicacion y codigo, estoy afinando cada vez mas y estoy cerca de conseguir lo que busco. Mil gracias compañero!!!! Un saludo. |
#18
|
|||
|
|||
Y que es ¡¡
Y que es lo que te falta...
si ya tienes las cadenas que quieres..weno si quieres cuentame que es lo que te falta...
__________________
saludos desde Puebla Mexico.. asanxt@hotmail.com "como siempre a sus ordenes y siempre con buena cara" 'lolita me excitas, perversa piel de melocotón' |
|
|
|