![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Consulta de una tabla1 para agregar en otra tabla2
Caral observa paso por paso
El form1. Contiene : un Edit1.text para realizar la consulta Un boton para la consulta con el siguiente codigo un DBGRID conectodo correctamente, pues se ven todos los registros, luego de la primera consulta los registros no vuelven aparecer. Este el codigo para el boton de consulta. procedure TForm1.Button1Click(Sender: TObject); begin adoquery1.Close; adoquery1.SQL.Clear; adoquery1.SQL.Add('Select carnet,nombres,apellido1,apellido2'); adoquery1.SQL.Add('from semma' ); adoquery1.SQL.Add('Where carnet =' + edit1.Text ); adoquery1.Open; end; ( Funciona) Otro boton para agregar la consulta a un adotable1 que esta en el form2 con el siguiente codigo ( que es el que creo no esta correcto, pero me funciona a media, o sea envia la consulta, pero no la veo en el momento hasta que no salga de la aplicacion y vuelva a entrar) Tiene el siguiente codigo> procedure TForm1.Button2Click(Sender: TObject); begin adoquery1.Close; adoquery1.SQL.Clear; adoquery1.SQL.Add('insert into duplica(carnet,nombres,apellido1,apellido2)'); adoquery1.SQL.Add('select carnet, nombres,apellido1,apellido2 from semma'); adoquery1.SQL.Add('Where carnet =' + edit1.Text ); adoquery1.ExecSQL; end; El form2 tiene un dbgrid un un bonto para limpiar o borrar los registros de la tabla auxiliar *es una adotable1* Este es el codigo del boton que borra los registros de la tabla auxiliar. While not form1.Adotable1. Eof do Begin form1.adotable1.active := true; form1.adotable1.delete; end; Ahora le presento las dos unidades que he hecho: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs,ComObj, StdCtrls, DB, Grids, DBGrids, ADODB, Buttons, ExtCtrls, DBCtrls, OleServer, Word2000; type TForm1 = class(TForm) ADOConnection1: TADOConnection; ADOTable1: TADOTable; ADOQuery1: TADOQuery; DataSource1: TDataSource; DataSource2: TDataSource; DBGrid1: TDBGrid; ADOTable1CARNET: TIntegerField; ADOTable1NOMBRES: TWideStringField; ADOTable1APELLIDO1: TWideStringField; ADOTable1APELLIDO2: TWideStringField; Edit1: TEdit; Button1: TButton; ADOQuery1CARNET: TIntegerField; ADOQuery1NOMBRES: TWideStringField; ADOQuery1APELLIDO1: TWideStringField; ADOQuery1APELLIDO2: TWideStringField; BitBtn1: TBitBtn; Button3: TButton; BitBtn2: TBitBtn; Label1: TLabel; SpeedButton1: TSpeedButton; Label2: TLabel; Image1: TImage; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure SpeedButton1Click(Sender: TObject); private { procedure Button2Click(Sender: TObject);Private declarations } public { Public declarations } end; var Form1: TForm1; implementation uses Unit2; {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin adoquery1.Close; adoquery1.SQL.Clear; adoquery1.SQL.Add('Select carnet,nombres,apellido1,apellido2'); adoquery1.SQL.Add('from semma' ); adoquery1.SQL.Add('Where carnet =' + edit1.Text ); adoquery1.Open; end; procedure TForm1.Button2Click(Sender: TObject); begin adoquery1.Close; adoquery1.SQL.Clear; adoquery1.SQL.Add('insert into duplica(carnet,nombres,apellido1,apellido2)'); adoquery1.SQL.Add('select carnet, nombres,apellido1,apellido2 from semma'); adoquery1.SQL.Add('Where carnet =' + edit1.Text ); adoquery1.ExecSQL; end; procedure TForm1.BitBtn1Click(Sender: TObject); begin form2.showmodal; end; procedure TForm1.Button3Click(Sender: TObject); begin edit1.Clear; edit1.SetFocus; adoquery1.Sort; end; procedure TForm1.SpeedButton1Click(Sender: TObject); var Word:variant; Documento:Variant; Begin (*Creas un objeto Word*) Word:=CreateOleObject('word.application'); (*Abrir documento Word*) Documento := Word.Documents.OPEN('C:\SEMMA486\listado.dot'); Documento.fields.Update; documento.fields.toggleShowCodes; Word.visible := true; end; end. nit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComObj,StdCtrls, Buttons, ExtCtrls, DBCtrls, Grids, DBGrids; type TForm2 = class(TForm) DBGrid1: TDBGrid; DBNavigator1: TDBNavigator; BitBtn1: TBitBtn; Button1: TButton; SpeedButton1: TSpeedButton; procedure Button1Click(Sender: TObject); procedure SpeedButton1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form2: TForm2; implementation uses Unit1; {$R *.dfm} procedure TForm2.Button1Click(Sender: TObject); begin While not form1.ADOTable1.Eof do begin form1.ADOTable1.Active := true; form1.ADOTable1.Delete; end; end; procedure TForm2.SpeedButton1Click(Sender: TObject); var Word:variant; Documento:Variant; Begin (*Creas un objeto Word*) Word:=CreateOleObject('word.application'); (*Abrir documento Word*) Documento := Word.Documents.OPEN('C:\semma486\listado.doc'); Documento.fields.Update; documento.fields.toggleShowCodes; Word.visible := true; end; end. |
|
#2
|
||||
|
||||
|
Hola
No entiendo muy bien pero me parece: 1- haces una consulta adoquery1 (tabla semma) 2- haces una insersion a la tabla adoquery1. (tabla duplica) 3- Tienes un adoTable enlazado a la tabla (duplica) en el form1 // no me queda claro 4- haces una consulta a ese adotable1 del form1 ???. 5- presentas los datos de la tabla duplica. ??? Si es asi, yo pondria un adotable en el from 2 directamente y lo enlazaría a la tabla. y en el boton 1 del from 2 solamente lo activaria. A ver como nos va. Saludos |
|
#3
|
|||
|
|||
|
Consulta de una tabla1 para agregar en otra tabla2
Caral, si le es posible mandeme su direccion al a mi correo para mandarle todo adjunto no es muy grande solo pesa 1.5 mb, y asi lo corre y me comprendera que es lo que quiero.
Saludos |
|
#4
|
||||
|
||||
|
Hola
Ya te envie mi email, revisalo. Saludos |
|
#5
|
|||
|
|||
|
Consulta de una tabla1 para agregar a otra tabla2
Bueno Carlos le estoy agradecido, la aplicacion me funciona.
Bien, mi inquietud va por lo siguiente ( mi aplicacion tambien funciona, ya que copio los registros en la tabla aunque no lo vea en el DBgrid, tambien puedo hacer un Qreport, yo ee que estan ahi, la prueba esta cuando uno entra a la tabla se ven fisicamente), pues bien lo que pasa es que una vez hace algun tiempo creo que 2 o 3 años, en la universidad cuando me estaba introducciendo al OPP, yo hice una aplicacion mas o menos como la que estoy halciendo ahora y no recuerdo que pasaba, yo podia ver los registros copiados en la otra tabla mediante la DBGRid. No recuerdo si habia un boton que listaba los registos mediante el adotable, no se..., Tendre que desempolvar algunos folletos viejos. Si tienes alguna idea me la comunica. Gracias.. AAnil |
|
#6
|
||||
|
||||
|
Hola
No entiendo muy bien. Tienes dos tablas. En el form1 actualizas, tanto la primera como la segunda. El dbgrid del form1 solo ve la tabla1. En el form 2 se ven las dos tablas, presionando uno u otro boton. Si quieres ver las dos en el form1, solo tienes que seguir los pasos del from2. No se si esto es lo que preguntas. Saludos |
|
#7
|
|||
|
|||
|
Caral te voy a mandar una fotografia de la aplicacion en MSWORD a tu correo
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Agregar y eliminar usuarios desde otra Pc | trohan | API de Windows | 12 | 31-01-2008 16:20:06 |
| Realizar una consulta sobre los registros que devuelve otra consulta | Borjaserrano | Firebird e Interbase | 12 | 01-10-2007 23:19:44 |
| pasar de una tabla1 a una tabla2 la misma info | el_barto | Conexión con bases de datos | 7 | 31-08-2005 18:58:44 |
| Consulta SQL para datos ordenados en otra tabla | cotoprix | SQL | 8 | 26-01-2004 23:54:53 |
| Como agregar una banda en tiempo de ejecucion en otra pagina | edo | Impresión | 2 | 29-07-2003 01:07:12 |
|