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 18-01-2008
Saiyan Saiyan is offline
Miembro
 
Registrado: abr 2007
Posts: 47
Poder: 0
Saiyan Va por buen camino
Question Problema con LookUpListBox

Buenas:

Estoy haciendo un soft de ventas, stock, presupuestos, etc.

Mi problema es cuando quiero modificar un producto.

Al cargarlo, el usuario selecciona categoria y subcategoria de producto, proveedor, etc, mediante LookUpListBox.

Y como quiero que el formulario de modificación sea igual al de carga, quiero que al seleccionar el producto a modificar, se vean seleccionadas la categoría, proveedor, etc del producto, y no puedo hacer eso.

Los campos como nombre, precio, etc (los cargo en Edits), no tengo problemas, pero no puedo hacer que se vean seleccionados categ, subcateg, prov, etc.


No se como hacerlo con el componente visual, la sentencia SQL la tengo,

Código SQL [-]
SELECT * FROM Productos WHERE = ...

y ahi vienen las claves de categoria, subcategoria, prov, nombre, precio, stock,etc, etc


lo que no sé es como hacer q se "autoseleccionen" los LookUpListBoxs con lo del producto elegido. Supongo que extrayendo las claves de cada uno, y asociandolos con los keyfield y listfield.. pero no se como.

Espero respuesta y gracias.


Saiyan
Responder Con Cita
  #2  
Antiguo 18-01-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Imposible dar una respuesta concreta. Explica las tablas, campos que intervienen y las sqls completas, no supongas, explica lo que quieres hacer.

Como respuesta general, que es lo único que se puede decir: necesitas relaciones maestro-detalle.

Cita:
Empezado por Saiyan
Y como quiero que el formulario de modificación sea igual al de carga, quiero que al seleccionar el producto a modificar, se vean seleccionadas la categoría, proveedor, etc del producto, y no puedo hacer eso.
No lo entiendo. Para seleccionar un producto, antes deberá seleccionar la categoría y proveedor ¿no?

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #3  
Antiguo 18-01-2008
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 18
felipe88 Va por buen camino
Cita:
Empezado por Lepe Ver Mensaje
Imposible dar una respuesta concreta. Explica las tablas, campos que intervienen y las sqls completas, no supongas, explica lo que quieres hacer.

Como respuesta general, que es lo único que se puede decir: necesitas relaciones maestro-detalle.

No lo entiendo. Para seleccionar un producto, antes deberá seleccionar la categoría y proveedor ¿no?

Saludos
Concuerdo con lo que dices, segun tengo entendido si la realcion y la conexion estan correctas, al moverte por los registro tanto encabezados como detalles, no relaizan la misma accion automaticamente ? , amigo Saiyan deberias revisar la conexion, listsource, keyfield, listfield y datasource.

Saludos
__________________
Web
Responder Con Cita
  #4  
Antiguo 18-01-2008
Saiyan Saiyan is offline
Miembro
 
Registrado: abr 2007
Posts: 47
Poder: 0
Saiyan Va por buen camino
Amigos explico un poco más


Tabla PRODUCTOS
NumProd
NumCategoria
NumSubCategoria
NumProveedor
Nombre
Stock
Precio
etc...

Tabla Categorias
NumCategoria
Nombre

Tabla SubCategorias
NumSubCategoria
Nombre

Tabla Proveedores
NumProveedor
Nombre
mail
direccion
etc...



Cuando accedo a buscar un producto para su modificación elijo categoria, luego la subcategoria y hago click derecho sobre el producto que quiero.

en este ejemplo una memo ddr2

http://www.salasapucay.com.ar/images/KProdListar.JPG


cuando hago click en modificar
hago showmodal de un form que deberia traer de la db todos los datos de ese producto.
de hecho la sentencia SQL trae todo
Código SQL [-]
select * from productos


http://www.salasapucay.com.ar/images/KProdUpd.JPG

Fijense que los edits los puedo cargar, pero no se como hacer para que se vean seleccionados los lookups con la categoria con la q esta cargada en la dB.


Diganme si necesitan algo mas

Gracias

Saiyan
Responder Con Cita
  #5  
Antiguo 18-01-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
ListboxLookupCategoria.keyvalue := tablaproductos.Fieldbyname('NumCategoria').AsInteger;

De otra forma, podrías hacer un locate sobre el query del lookuplistbox.

Cuando se da a modificar, se debería pasar los datos:
- Categoria
- Subcategoria
- Producto
a la ventana modal (la de modificación, claro).

Puede que lo tengas implementado de otra forma y no necesites pasar los datos, ya que dices que puedes extraer el Edit del nombre, también podrás obtener el numCategoria, etc.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #6  
Antiguo 21-01-2008
Saiyan Saiyan is offline
Miembro
 
Registrado: abr 2007
Posts: 47
Poder: 0
Saiyan Va por buen camino
OK, probaré lo del Locate y cuento que pasó.

del Locate Delphi dice:

Cita:
Searches the dataset for a specified record and makes that record the current record.
y con eso en el list quedaría seleccionado el registro indicado.. no?

pruebo y aviso

Saludos
Responder Con Cita
  #7  
Antiguo 22-04-2008
Saiyan Saiyan is offline
Miembro
 
Registrado: abr 2007
Posts: 47
Poder: 0
Saiyan Va por buen camino
Ya probé con el Locate.

En el dbLookupCombobox no me selecciona el registro que quiero.
Por ejemplo.
Quiero que se seleccione la categoria actual del producto en ese combo.

con Locate

Código Delphi [-]
lu1.ListSource.DataSet.Locate('CodCategoria', 3, [loCaseInsensitive]);

( Esto deberia posicionarme el cursor del dataset en el registro con CodCategoria=1 )

Si pruebo asignar ese DataSet a una grilla, funciona, o sea efectivamente me queda el cursor de la grilla en el registro de CodCategoria = 3.

pero con el LookUp no..

como hago para que me quede seleccionado en el LookUp el registro de CodCategoria = 3 ???


Gracias
y Saludos
Responder Con Cita
  #8  
Antiguo 23-04-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
ListboxLookupCategoria.keyvalue := 3;

Suponiendo que el lookupCombo tiene como KeyField el codCategoria.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #9  
Antiguo 23-04-2008
Saiyan Saiyan is offline
Miembro
 
Registrado: abr 2007
Posts: 47
Poder: 0
Saiyan Va por buen camino
Cita:
ListboxLookupCategoria.keyvalue := 3;
Jajajajajajajajajaja

No podes que era tan facil... !

Gracias Lepe.

Yo siempre buscando el lado complicado...

Funciona Perfecto, gracias.

Saludos y Gracias a todos!
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
ayuda con lookuplistbox ercrizeporta Conexión con bases de datos 2 29-06-2007 16:17:02
LookupListbox, seleccionar campo no centrado lacovera OOP 0 08-01-2007 10:13:21


La franja horaria es GMT +2. Ahora son las 10:11:35.


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