![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
#1
|
|||
|
|||
![]() Buenas a todos, soy nuevo en este foro. Alguien sabe como es la funcion que te dice el ID o el codigo de una fila registrada en una base de datos? Me explico, en un ComboBox tengo una lista de los nombres de distribuidores, y cuando lo seleccione quiero saber el ID o codigo de ese distribuidor.
Un saludo. |
#2
|
||||
|
||||
Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración
![]() Por favor, recuerda poner títulos descriptivos a tus preguntas, gracias.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
||||
|
||||
¿Exactamente qué componente estás utilizando? ¿TComboBox, TDBComboBox,..?
Aunque son parecidos no son iguales. Si es un TComboBox, como comentas ¿cómo has rellenado los valores? Si has rellenado los valores con una SQL, tendrás que recuperar el valor del ID con una SQL. Das poca información para saber cómo estás haciendo las cosas...
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#4
|
|||
|
|||
Si, ya lo leí hace tiempo, porque me metía de vez en cuando para consultar en vuestro foro
![]() No sabía qué poner en el título... Un saludo. |
#5
|
|||
|
|||
Cita:
Un saludo. |
#6
|
||||
|
||||
Cita:
Si ya has hecho una sentencia SQL para recuperar todos los nombres, debes hacer una similar para recuperar el ID o el código. Habrás hecho algo similar a esto:
o
Una vez que seleccionen un nombre en el ComboBox, para obtener el ID o el Código deberás hacer una similar a esta:
Eso en Delphi será algo así:
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#7
|
||||
|
||||
Hola.
Un DBLookupComboBox tampoco sería mala elección. Pero, si como mencionas en el mensaje #5, ya recorres la consulta para almacenar los datos obtenidos en el ComboBox, otra alternativa podría ser:
Obtener el ID, ejemplo:
Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#8
|
||||
|
||||
Hola de nuevo.
Recién me percato de que estamos en el foro C++ Builder... ![]() Entonces sería: Código:
void __fastcall TForm1::FormCreate(TObject *Sender) { tuQuery->Close(); tuQuery->SQL->Text = "SELECT CAMPO_A_MOSTRAR, ID FROM TU_TABLA"; tuQuery->Open(); while (!tuQuery->Eof){ ComboBox1->Items->AddObject(tuQuery->FieldByName("CAMPO_A_MOSTRAR")->AsString, (TObject*)tuQuery->FieldByName("ID")->AsInteger); tuQuery->Next(); } tuQuery->First(); } Código:
void __fastcall TForm1::ComboBox1Change(TObject *Sender) { int Id = Integer(ComboBox1->Items->Objects[ComboBox1->ItemIndex]); Caption = IntToStr(Id); }
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#9
|
|||
|
|||
Muchísimas gracias, ya sé como funciona. El problema que tengo ahora es que cuando obtengo el ID de la tabla principal, no me dejarlo insertarlo en otra tabla con la clave ajena. Lo detallo mejor:
Código:
DISTRIBUIDOR CATALOGOS TIENDAS distribuidor_id (autonumérico) catalogo_id(autonumérico) tienda_id Nombre Titulo Nombre Telefono Foto Logo Logo fecha_inicial distribuidor_id fecha_fin distribuidor_id(numero) tienda_id(numero) Código:
void __fastcall TXGestionTienda::ComboBox1Change(TObject *Sender) { XDatos->QDistribuidor->Close(); XDatos->QDistribuidor->SQL->Text = "select * from distribuidor where nombre = '"+ComboBox1->Text+"'"; XDatos->QDistribuidor->Open(); codigoD = XDatos->QDistribuidorDistribuidor_id->Value; //ShowMessage(codigoD); } Código:
void __fastcall TXGestionTienda::BitBtn1Click(TObject *Sender) { XDatos->QTienda->Append(); XDatos->QTienda->SQL->Text = "insert into tiendas(distribuidor_id) values ("+codigoD+")"; XDatos->QTienda->Post(); } Un saludo. Última edición por Casimiro Notevi fecha: 18-10-2012 a las 12:40:37. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
función POS | petete2008 | Varios | 4 | 05-09-2012 16:30:27 |
Función o q? | Veanny | Internet | 2 | 21-02-2008 21:43:40 |
funcion en php | KeyMan | PHP | 2 | 23-04-2007 21:11:52 |
Función Last | Triton | Firebird e Interbase | 2 | 25-05-2005 17:46:50 |
La función Ord() | soul6301 | Varios | 2 | 27-06-2004 01:43:17 |
![]() |
|