Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-08-2011
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
Agregar múltiples Campo de una tabla a múltiples TEdit y TdbEdit

Hola chicos como están?

Tal vez mi titulo no concuerde con lo que realmente me he trabado:

Lo que quiero es simple:

Tengo una Tabla llamada proveedores, lo que quiero es poder seleccionar proveedores en diferentes Tedit y dbEdit.

Quien lea se preguntara cual es el sentido de usar Edit y DBEdit bueno en el Edit muestro el nombre del proveedor y en dbEdit muestro y guardo el ID_PROVEEDOR(si alguien sabe como hacerlo mejor me lo dice porfa).

Este es mi codigo actual en el Evento DblClick del DBGrid:

Código Delphi [-]
Public
var
cod_idProveedor : Integer;
Nombre: String;

procedure TfrmBuscaProveedor.dbgBuscaProveedorDblClick(Sender: TObject);
begin
       cod_idProveedor := dmacceso.cdsProveedoresID.AsInteger;
       Nombre := dmacceso.cdsProveedoresNOMBRE.AsString;
       frmModificaArticulo.eProveedor1.Text := frmBuscaProveedor.Nombre;
       frmModificaArticulo.edbProveedor1.Text := IntToStr(frmBuscaProveedor.cod_idProveedor);
 Close;
end;

Bueno hasta ahí genial hace lo que quiero... Bueno ahora quiero es agregar un segundo y Tercer proveedor en los Otros TEdit y TDBEdit.

lo he intentado pero lo que hago es al darle el doble click me envía a los otros edit y dbedit el primer proveedor seleccionado.


Podrían orientarme como hacerlo?

Saludos;

novato_erick
Responder Con Cita
  #2  
Antiguo 20-08-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola novato_erick.

Bueno, en principio los campos identificadores (ID_PROVEEDOR) se utilizan internamente para identificar unívocamente un registro, lo normal es que sea un campo autoincremental. El como se lleva a cabo este incremento, depende de la base de datos con que estés trabajando.
Imaginate que un usuario tuviera que ingresar a mano los identificadores... tendría que tener en la cabeza cual sería el próximo sino: Key Violation.

En cuanto a lo que queres hacer, para que te muestre un segundo y tercer proveedor tendrías que desplazarte en los registros hasta sus posiciónes, lo que lógicamente haría que pierdas la visualización del anterior.

Quizá sea mas adecuado usar DBEdits para realizar los ingresos y para mostrar los registros aledaños un TDBGrid con su propiedad ReadOnly igual a True.

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 20-08-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
No entiendo, cuales otros edits y dbedits ?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #4  
Antiguo 21-08-2011
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
ecfisa

Veo que no me explique.

Ya tengo en la Tabla proveedores registros ingresados verdad?

en un formulario (frmArticulo) quiero agregar sus atributos, dentro de ellos ese producto tiene mas de un proveedor para ser exacto hasta 3 proveedores.

lo que quiero es guardar el el ID_PROVEEDOR en mi tabla de Artículos por eso uso de DBEdit en dicho formulario y el Edit solamente es para mostrar al usuario en nombre del Proveedor.

es por eso mi código anterior llamando al frmBuscaProveedor me muestra mis proveedores y al darle dobleclick en la celda me coloca los datos de ese proveedor.

Pero no he logrado escojer proveedores diferentes. usando los Edit y DBEdit restantes.

Espero haberme explicado.

Saludos;
Responder Con Cita
  #5  
Antiguo 21-08-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Creo que ese caso, lo indicado para agregar los proveedores es usar tres TDBlookupComboBox .
Donde en la propiedad ListSource iría el DataSource del proveedor, en ListField el nombre y en KeyField el ID.
En las propiedades DataSource y DataField, el DataSource y el campo receptor de la tabla artículo respectivamente.

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 21-08-2011
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
Gracias ecfisa por prestar atención a mi problema;

sucede que esa opción la ya he implementado lo extraño es que si llamo al formulario de articulo en modo de edición me aparece en blanco los TDBlookupComboBox y no puedo apreciar que proveedores que tenia.

eso ocurre nada mas al utilizar el componente PageControl y poner dentro ese componente TDBlookupComboBox.

Caral

poder agregar tres Edit para mostrar el nombre de los tres diferentes proveedores y los dbEdit (Ocultos) era para poder guardar ahi el el id del proveedor.

Saludos;
Responder Con Cita
  #7  
Antiguo 21-08-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Sigo sin entender.
Veo que se busca el proveedor y el nombre, me imagino que de una tabla, pero no veo que se recorra.
No creo que se pueda llenar mas de un dato si solo se pide uno.
No entiendo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #8  
Antiguo 21-08-2011
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
Unhappy

Caral

Cita:
Hola
Sigo sin entender.
Veo que se busca el proveedor y el nombre, me imagino que de una tabla, pero no veo que se recorra.
No creo que se pueda llenar mas de un dato si solo se pide uno.
No entiendo.
Esto fue lo que hice al hacer al evento dobleclick del DBGrid

Código Delphi [-]
 var
    cod_idProveedor,cod_idProveedor2,cod_idProveedor3: Integer;
    Nombre, Nombre2, Nombre3: String;

procedure TfrmBuscaProveedor.dbgBuscaProveedorDblClick(Sender: TObject);
begin
 cod_idProveedor := dmacceso.cdsProveedoresID.AsInteger;
 Nombre := dmacceso.cdsProveedoresNOMBRE.AsString;
 frmModificaArticulo.eProveedor1.Text := frmBuscaProveedor.Nombre;
 frmModificaArticulo.edbProveedor1.Text := IntToStr(frmBuscaProveedor.cod_idProveedor);
 cod_idProveedor2 := dmAcceso.cdsProveedoresID.AsInteger;
 Nombre2 := dmAcceso.cdsProveedoresNOMBRE.AsString;
 frmModificaArticulo.eProveedor2.Text := frmBuscaProveedor.Nombre2;
 frmModificaArticulo.edbProveedor2.Text := IntToStr(FrmBuscaProveedor.cod_idProveedor2);
 Close;
end;

Esta es la forma que yo estoy haciendo... y esta forma no me sirve porque me pone el mismo proveedor en los restantes edit y dbedit...


Saludos
Responder Con Cita
  #9  
Antiguo 21-08-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
sucede que esa opción la ya he implementado lo extraño es que si llamo al formulario de articulo en modo de edición me aparece en blanco los TDBlookupComboBox y no puedo apreciar que proveedores que tenia.
Hola.

Eso no ocurre si previamente haces algo como:
Código Delphi [-]
  DBLookupComboBox1.KeyValue:= tbArticulosProv1.AsInteger;
  DBLookupComboBox2.KeyValue:= tbArticulosProv2.AsInteger;
  DBLookupComboBox3.KeyValue:= tbArticulosProv3.AsInteger;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #10  
Antiguo 21-08-2011
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
ecfisa

Cita:
Hola.

Eso no ocurre si previamente haces algo como:
Código Delphi [-]
Código Delphi [-]
  DBLookupComboBox1.KeyValue:= tbArticulosProv1.AsInteger;
  DBLookupComboBox2.KeyValue:= tbArticulosProv2.AsInteger;
  DBLookupComboBox3.KeyValue:= tbArticulosProv3.AsInteger;
Disculpa mi ignorancia pero donde hago eso? en el evento OnShow de mi frmArticulo, en el el evento OnCreate del frmArticulo?

Saludos
Responder Con Cita
  #11  
Antiguo 21-08-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Puede ser, si mostrás un solo artículo en cada ingreso al form. No sé como lo tenés implementado.
Pero si queres que al ir desplazándote por los artículos, los DBLookupComboBox se vayan actualizando quizá debas ponerlo en el evento AfterScroll de la tabla artículos.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #12  
Antiguo 21-08-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Sigo pensado igual, no se recorre la tabla.
El codigo que muestras nunca mostrara mas que un dato.
Asi lo veo yo.
Hay que recorrer la tabla.
Me gustaria ver el programa, pero lastima que no pueda ver la BD.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #13  
Antiguo 21-08-2011
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
ecfisa

yo utilizo TSQLQuery, no tablas;

nunca he tenido la oportunidad de usar tablas...

Caral

Por mi no hay ningún problema que veas mi base de datos, mucho menos que veas mi programa pero la pregunta es como?

Saludos
Responder Con Cita
  #14  
Antiguo 21-08-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Creo que puedes colocar todo en un zip.
Quitale el exe para que no pese y lo subes aqui mismo.
Si no, enviame un mensaje privado y te doy mi correo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #15  
Antiguo 21-08-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
yo utilizo TSQLQuery, no tablas;
nunca he tenido la oportunidad de usar tablas...
Pues te tengo una sorpresa... estas usando tablas!!! , mediante el TSQLQuery te conectas con ellas.

No conozco el componente TSQLQuery, pero seguro que tiene el evento AfterScroll. Por lo tanto sería allí donde deberías ubicar la actualización de los TDBLookupComboBox.
Excepto que sólo muestres un artículo por pantalla y salgas. En este último caso el evento OnShow del form sería un lugar adecuado para la actualización.

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #16  
Antiguo 21-08-2011
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
Estoy Choleando jajajajaja...

Si se que estoy usando tablas sin embargo no he usado el Componente TTAble jajaja a eso me referia... y si solo muestro un proveedor por pantalla y salgo... lo intente haciendo esto pero mi formulario se comporta extraño porque aun así no los muestra...

Código Delphi [-]
 procedure TFrmArticulos.FormShow(Sender: TObject);
  begin
     lblPrecioFijo.Visible:= False;
     dbePfijos.Visible:= false;
     dbePfijos2.Visible:= false;
     dbePfijos3.Visible:= false;
     DBLookupComboBox6.KeyValue:= dataArticulos.cdsArticulosID_PROVEEDORES.AsInteger;
     DBLookupComboBox7.KeyValue:= dataArticulos.cdsArticulosID_PROVEEDORES2.AsInteger;
     DBLookupComboBox8.KeyValue:= dataArticulos.cdsArticulosID_PROVEEDORES3.AsInteger;
  end;

Saludos
Responder Con Cita
  #17  
Antiguo 21-08-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
No entiendo que componentes usas?.
Tampoco se que BD ?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #18  
Antiguo 21-08-2011
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
Caral

Utilizo Firebird 2.5 como BD

y componente DBExpress como TSQLQuery, TClientDataSet y TDataSetProvider en un modulo de datos

y TDataSource en los formularios.

Saludos
Responder Con Cita
  #19  
Antiguo 21-08-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Ah, lastima, yo no tengo esos componentes.
Yo uso los IBX de la paleta interbase.
No voy a poder ver el programa, no me va a dejar cargarlo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #20  
Antiguo 21-08-2011
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
Tengo el Embarcadero® Delphi® XE Version 15.0.3953.35171
Copyright © 2010 Embarcadero Technologies, Inc. All Rights Reserved
Enterprise

Bueno eso es lo que dice mi Equipo...

De todas manera gracias Caral...

Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Cronometros múltiples sintecsl OOP 2 27-01-2011 12:23:47
como generar ventas multiples (seleccionar multiples items) userdelphi Varios 4 30-12-2010 03:52:21
Multiples instancias Phacko Varios 1 07-09-2004 16:40:25
Proceso al 'soltar' el foco de un TEdit ó TDBEdit radiohead Varios 2 12-07-2004 16:56:27
multiples registros azaagh Conexión con bases de datos 8 10-06-2004 03:45:55


La franja horaria es GMT +2. Ahora son las 16:52:12.


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