Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Copiar dados de uma table para outra table


Eder

Pergunta

Ola.

Minha dúvidas acredita que seja simples, mas não to conseguindo fazer funcionar corretamente..

seguinte....gostaria de copiar os dados de uma tabela para outra tabela...

fiz assim porem não deu certo

procedure TForm1.XiButton7Click(Sender: TObject);
begin
while not table2.Eof do
begin
table1.Insert;
while table2.Eof do
begin
    Table1.FieldByName('C').Value := Table2.FieldByName('C').Value;
    Table1.FieldByName('cliente').Value := Table2.FieldByName('cliente').Value;
    Table1.FieldByName('Cnpj_cpf').Value := Table2.FieldByName('Cnpj_cpf').Value;
    end;
    table1.Post;
    table2.next;
end; end;

Grato

Editado por Eder
Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
gostaria de copiar os dados de uma tabela para outra tabela...

Eder.. tente dessa maneira ... desde que o Table1 e Table2 estejam abertos

procedure TForm1.XiButton7Click(Sender: TObject);
begin
   while not table2.Eof do
      begin
         Table1.Last;
         Table1.Append;
         Table1.Edit;
         Table1.FieldByName('C').Value := Table2.FieldByName('C').Value;
         Table1.FieldByName('cliente').Value := Table2.FieldByName('cliente').Value;
         Table1.FieldByName('Cnpj_cpf').Value := Table2.FieldByName('Cnpj_cpf').Value;
         table1.Post;
       end;

    table2.next;
end;
ou ainda assim
procedure TForm1.XiButton7Click(Sender: TObject);
var i : integer;
begin
   for i := 1 to Table2.RecordCount do
      begin
         Table1.Last;
         Table1.Append;
         Table1.Edit;
         Table1.FieldByName('C').Value := Table2.FieldByName('C').Value;
         Table1.FieldByName('cliente').Value := Table2.FieldByName('cliente').Value;
         Table1.FieldByName('Cnpj_cpf').Value := Table2.FieldByName('Cnpj_cpf').Value;
         table1.Post;
       end;

    table2.next;
end;

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

ola..Jonas.

não deu certo...nenhum dos dois casos..

*o primeiro código, ele fica dando loop...e gravando sempre o primeiro registro da Table2

*já o segundo código...quando clicko no botão COPIAR ele somente grava o primeiro registro da Table2

se eu dou mais um click grava o segundo registro e assim sucessivamente.

:blush:

Grato

Boa Semana de Trabalho

falou

Link para o comentário
Compartilhar em outros sites

  • 0
não deu certo...nenhum dos dois casos..

*o primeiro código, ele fica dando loop...e gravando sempre o primeiro registro da Table2

*já o segundo código...quando clicko no botão COPIAR ele somente grava o primeiro registro da Table2

se eu dou mais um click grava o segundo registro e assim sucessivamente.

Distração minha e sua Eder ... o Next tem que ficar dentro do loop, por isso grava apenas o primeiro registro

procedure TForm1.XiButton7Click(Sender: TObject);
begin
   while not table2.Eof do
      begin
         Table1.Last;
         Table1.Append;
         Table1.Edit;
         Table1.FieldByName('C').Value := Table2.FieldByName('C').Value;
         Table1.FieldByName('cliente').Value := Table2.FieldByName('cliente').Value;
         Table1.FieldByName('Cnpj_cpf').Value := Table2.FieldByName('Cnpj_cpf').Value;
         table1.Post; 
         table2.next;//// tem que ficar dentro do loop
       end;
end;
ou ainda assim
procedure TForm1.XiButton7Click(Sender: TObject);
var i : integer;
begin
   for i := 1 to Table2.RecordCount do
      begin
         Table1.Last;
         Table1.Append;
         Table1.Edit;
         Table1.FieldByName('C').Value := Table2.FieldByName('C').Value;
         Table1.FieldByName('cliente').Value := Table2.FieldByName('cliente').Value;
         Table1.FieldByName('Cnpj_cpf').Value := Table2.FieldByName('Cnpj_cpf').Value;
         table1.Post;
         table2.next; ///  tem que ficar dentro do for
      end;

end;

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...