Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Copiar datos de una tabla a una edit (https://www.clubdelphi.com/foros/showthread.php?t=60999)

frholguin 21-10-2008 20:33:01

Copiar datos de una tabla a una edit
 
Hola perdon por la pregunta he buscando y he encotrado cosas parecidas pero no lo que quiero.

estoy haciendo una peque aplicación en la que hay varias tablas todas tienen en el mismo campo llave

ID_Cliente

tengo mi tabla cliente y tengo mi tabla entradedocumento

TCliente Tentradoc
ID_Cliente ID_Cliente


estas son las tablas por ejemplo cuando tengo que crear la entrada de documento quiero poder halar el cliente desde la tabla cliente y que quede en el edit hasta que llene todos los campos y grabe la tabla. o sea que solo quiero copiar el ID_Cliente en un Edit cuando este llenando los campos esto es para no tener que llenar a mano este campo. ha pero ID_Cliente debe traer el nombre tambien y copiarlo en otro edit.

Caral 21-10-2008 20:42:21

Hola
No se donde esta el problema?.
1-Donde esta el id.cliente
2-Donde esta el nombre del cliente.
Son dos tablas, no?.
Lo que pretendes se puede hacer de varias formas y lo mas sencillo es con un dbedit.
No se si entiendo bien la pregunta.
Saludos

frholguin 21-10-2008 21:04:49

EL ID_Cliente esta en las 2 tablas pero quiero es como si fuera una factura que escribe por ejemplo el ID de articulo y automaticamente te trae el nombre del articulo, el precio etc, pero no se como hacerlo que cuando ponga el codigo me extraiga de la otra tabla esos datos

Caral 21-10-2008 21:25:47

Hola
Sinceramente das poca información, pero lo que pides, en esencia, se hace con una sentencia sql:
Código Delphi [-]
Query1.SQL.Text := 'Select * From TuTabla Where ID_Cliente = :ID';
Query1.Parameters[0].Value:= Edit1.Text;
Query1.Open;
Con enlazar el query1 a por ejemplo un dbgrid, saldra la informacion de ese ID.
Saludos

frholguin 21-10-2008 22:16:14

ok me explicare mejor por ejemplo si tengo un resultado en un Dbgrid quiero que cuando yo le de doble clic encima ese resultado se copien en el dbedit de otro fomulario.
esta es la imagen del DB grid
http://www.cuelgalo.com/viewer.php?i...252_imagen.JPG

Caral 21-10-2008 22:18:55

Hola
:eek::D
Saludos

Caral 21-10-2008 22:48:03

Hola
A ver si este ejemplo te sirve, por lo menos de guia, ya comentaras.
Saludos

Caro 22-10-2008 14:16:59

Hola frholguin, debes tomar el valor de tu DataSet (que puede ser un Table, Query...) que se enlaza a tu DBGrid.

Código Delphi [-]
procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
 FormSig.Edit.Text := DataSet.FieldByName('ID_Cliente').AsString;
 FormSig.ShowModal;
end;

Saluditos

frholguin 22-10-2008 15:15:52

Pues la verdad el unico ejemplo parecido pero no me sirve ya que esta copiando son los datos que estan por valor en un edit en un label cuando se crear el formulario, yo busco trabajo con base de datos. voy a ver si me explico mejor.

tengo esto

Tabla cliente esto es un DB_Grid en un formulario A
--------------------------------------------
ID_Cliente ! NombCliente ! RNCCliente !
--------------------------------------------
000-HDE ¡ Perez & CIA ! 00001212555!
--------------------------------------------

Tabla Entradocumento esto esta en un edit en un formulario B
--------------------------------------------
ID_Cliente ! NombCliente ! Tipo_doc !
--------------------------------------------
! ! !
--------------------------------------------

cuando yo haga clic en el grid del formulario A me pase Id_Cliente y NombCliente a los edit del formulario B.

Caro 22-10-2008 15:22:42

Hola de nuevo, has probado lo que te puse :confused:, si quieres del campo nombre también, entonces tomas el valor de ese campo mas.

Código Delphi [-]
//En el evento Doble Click del dbGrid
procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
 FormB.Edit1.Text := DataSet.FieldByName('ID_Cliente').AsString;
 FormB.Edit2.Text := DataSet.FieldByName('NombCliente').AsString;
 FormB.ShowModal;
end;

Saluditos

frholguin 22-10-2008 15:30:00

TKs si me funciona y excusenme mi lento aprendizaje y mi mala explicación gracias mil.

Caral 22-10-2008 16:04:39

Hola
Bueno ya que lo hice lo pongo, por lo menos veras algo mas de código, se que no le llego a Caro, pero por lo menos te servirá de ejemplo.
El programita hace exactamente lo que quieres.
En el primer form hay un dbgrid, dándole doble click o aceptar abre el segundo form con los datos de la segunda tabla.
Bueno, espero que de algo te sirva.
Saludos

frholguin 22-10-2008 20:20:48

tks brother

eliezermev 27-06-2011 17:55:22

caro yo tengo un problema parecido, no se como mostrar el resultado de una suma en un edit. esta es la suma select sum(dias)as diaslab from asistencia where cedula=:ced, como hago para mostrar ese resultado en un edit, por favor ayudeme

Caro 29-06-2011 17:13:23

Cita:

Empezado por eliezermev (Mensaje 404950)
caro yo tengo un problema parecido, no se como mostrar el resultado de una suma en un edit. esta es la suma select sum(dias)as diaslab from asistencia where cedula=:ced, como hago para mostrar ese resultado en un edit, por favor ayudeme

Hola eliezermev, tienes que utilizar el alias que le has dado (diaslab).

Código Delphi [-]
 Edit.Text := Query.FieldByName('diaslab').AsString;

Saluditos


La franja horaria es GMT +2. Ahora son las 19:23:08.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi