Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-02-2011
jlrdz jlrdz is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 50
Poder: 14
jlrdz Va por buen camino
Recuperar valores de TSMBDFilterComboBox

Un saludo primero que nada, estoy utilizando el componente TSMBDFilterComboBox, este componente tiene la propiedad FieldDisplay (campo de la base de datos que se va a mostrar), FieldValue(campo de la base de datos que tomará como valor) y la propiedad DataSource(ya seleccionado) entre otras más pero estás me imagino son las principales.

Cuando se carga el formulario el TSMBDFilterComboBox se llena bien, no hay problema con eso, mi problema está en que no sé como obtener el valor del item seleccionado para que en el evento onChange pueda yo hacer una consulta a la base de datos con dicho valor, estaba intentando lo siguiente en un showmessage(); para saber que en realidad me estaba recuperando el valor:

Código Delphi [-]

//esto me muestra en el showmessage() el Field Name de la base de datos  
fcbGrupo.FieldValue;
//esto me muetra el valor de FieldDisplay
fcbGrupo.Items.ValueFromIndex[cmbfgrupo.ItemIndex];

En el componente el valor que debe tomar FieldValue es el campo "id" de la base de datos y en FielDisplay el campo "descripcion". Lo que quiero es recuperar el valor de FieldValue de cada item.

Quiero tenerlo como si fuera un Select en html que tiene un valor y un texto a mostrar.

Última edición por jlrdz fecha: 11-02-2011 a las 16:19:07.
Responder Con Cita
  #2  
Antiguo 11-02-2011
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 23
BlueSteel Va por buen camino
Hola

con que base estas trabajando,,, utilizas Querys?

yo uso Ado para conectarme al SQL Server y TDBLookupComboBox que si bien no es el mismo componente es uno similar

para lo que utilizo el siguiente codigo para realizar el filtro

Código Delphi [-]
     Datos.AQ_Ingreso.Close;
     Datos.AQ_Ingreso.SQL.Clear;
     Datos.AQ_Ingreso.SQL.Add('Select * From Vista_Ingreso');
     Datos.AQ_Ingreso.SQL.Add('Where Eve_Id=:v01');
     Datos.AQ_Ingreso.SQL.Add('And Ctl_Id=:v02');
     Datos.AQ_Ingreso.SQL.Add('Order By Ing_Fecha');
     Datos.AQ_Ingreso.Parameters[0].Value := vEve.KeyValue;
     Datos.AQ_Ingreso.Parameters[1].Value := vCtl.KeyValue;
     Datos.AQ_Ingreso.Open;

Donde vEve y cCtl son componentes de tipo TDBLookupComboBox, Datos el formulario tipo DataModule, AQ_Ingreso, el Query en donde realizo el Filtro...

Salu2
__________________
BlueSteel
Responder Con Cita
  #3  
Antiguo 11-02-2011
jlrdz jlrdz is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 50
Poder: 14
jlrdz Va por buen camino
Estoy utilizando MySql con MyDac y sus componentes para la conexion TMyconnection TMyquery, con eso no tengo problemas, si no utilizé el TDBLookupComboBox fue porque yo de la base de datos recupero el id y la descripcion y si uso TDBLookupComboBox puedo mostrar lo de campo descripcion pero el los del campo id son los que quiero recuperar como valor, con el componente TSMBDFilterComboBox en las opciones tiene FielDisplay y FieldValue y ahi es donde escojo para FieldDisplay el campo descripcion y para FieldValue el campo id lo que no sé es como recuperar el valor de id del item seleccionado.
Responder Con Cita
  #4  
Antiguo 11-02-2011
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 23
BlueSteel Va por buen camino
Cita:
Empezado por jlrdz Ver Mensaje
si no utilizé el TDBLookupComboBox fue porque yo de la base de datos recupero el id y la descripcion y si uso TDBLookupComboBox puedo mostrar lo de campo descripcion pero el los del campo id son los que quiero recuperar como valor
que raro, yo utilizo el TDBLookupComboBox y puedo mostrar 2 campos a la vez, solo tengo que hacer esto

Supongamos que tengo un TDBLookupComboBox que se llama vTip

en la propiedades :

ListField: Ubi_Detalle; Tem_Valor // Le asigno 2 campos, solo se deben separar por punto y coma
KeyField: Tem_Id // Este campo será el que se asigna al KeyValue
ListSource: Datos.DS_ValorUbicacion // DataSource al cual se conecta


Cita:
con el componente TSMBDFilterComboBox en las opciones tiene FielDisplay y FieldValue y ahi es donde escojo para FieldDisplay el campo descripcion y para FieldValue el campo id lo que no sé es como recuperar el valor de id del item seleccionado.

prueba con el KeyValue

Código Delphi [-]
Datos.AQ_Ingreso.Parameters[0].Value := vTip.KeyValue;
Salu2
__________________
BlueSteel
Responder Con Cita
  #5  
Antiguo 11-02-2011
jlrdz jlrdz is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 50
Poder: 14
jlrdz Va por buen camino
Ok ya me ha funcionado, muchas gracias por su ayuda.

Saludos!
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
Recuperar paquete DTS!!! drykea SQL 0 02-10-2007 15:55:52
Guardar y recuperar noipa Varios 3 07-02-2006 14:46:21
Recuperar Datos Ricardo Alfredo Oracle 1 22-12-2005 18:25:21
cómo recuperar valores de SP's dinámicas hector.roma SQL 1 01-08-2005 23:10:11
Recuperar Sql jzk OOP 2 24-11-2004 12:58:30


La franja horaria es GMT +2. Ahora son las 17:50:52.


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