Delphi - dblookupcombobox???

 
Vista:

dblookupcombobox???

Publicado por numalian (21 intervenciones) el 14/11/2007 16:36:41
Hola xicos,,,tengo otra dudilla....
Yo estoy trabajando con un dblookupcombobox,,,por ejemplo sacando de una base de datos de la tabla clientes,,,en este componente,,selecciono el listsource el cual apunta al dataset,,,y de hay selecciono el listfield,,por ejemplo nombres de clientes,,,y que seleccione por el keyfield que es el codigo de cada cliente...
asi consigo que me saque el listado de los nombres de los clientes...
bien pues mi duda es la siguiente,,ahora necesito que me saque en ese listado,,,el codigo + el nombre de los clientes,,,
sabeis como puedo conseguir que me salga eso???
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

RE:dblookupcombobox???

Publicado por E.T. (1244 intervenciones) el 14/11/2007 18:44:00
Tienes que crear un nuevo campo el cual contendrá el valor mezcaldo de los otros dos campos:

Primero selecciona tu tabla y dale doble click

en la ventana que se te muestra has lo siguiente
--click derecho "Add all Fields"
--luego de nuevo click derecho, pero ahora en "new field"
--se abre una nueva ventana donde hacemos lo siguiente
**en "name" va el nombre de nuevo campo
**component lo dejamos vacio
**en type elegimos string
** size tambien vacio
**en la sección "field type" seleccionamos "calculated"
** y por ultimo presionamos "ok"

ya tenemos el nuevo campo, ahora a llenarlos.

Seleccionas de nuevo tu tabla y te vas a sus eventos, seleccionamos "OnCalcFields" le damos doble click y nos llevará al código y pondremos la siguiente linea

//-----esto es una sola linea
DataSet.FieldValues['no_nombre']:=DataSet.Fields[0].AsString+
' - '+DataSet.Fields[1].AsString;

//no_nombre es el nombre que yo le di al campo nuevo
//--------------------------------------------------------------------

el numero dentro de DataSet.Fields[0] <<----- este numero
es el indice del campo como se te muestra cuando le diste "add all fields" empezando por el cero, Por ejemplo, si la lista de campos que se te muestra es

no_cliente
ciudad
telefono
nombre

pondiras primero el 0 luego el 3

NOTA: tambien puedes cambiar el orden de los campos simplemente arrastrandolos

Ahora en "listField" del combobox solo selecciona el nuevo campo y listo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar