Copiar campo de uma tabela para outra (Paradox)
Amigos preciso copiar os dados do campo de uma tabela para o campo de outra tabela, mas desejo que seja verificado
se o campo da tabela destino esteja vazio, no caso copiar os dados somente se o campo for vazio.
isto de toda atabela.
fiz o codigo assim:
só faz a copia se todos os campos se for vazio?
e outra não para o processo o aplicativo fica travado.
gostaria que quando terminase desse um aviso, showmessage 'Arquivos gravados com sucessso?. e me mostrasse também
a quantidade de registros que foi gravado para que eu possa conferir.
os campos das duas tabelas sâo iguais , nome tipo e tamanho.
conto com a ajuda de vcs.
se o campo da tabela destino esteja vazio, no caso copiar os dados somente se o campo for vazio.
isto de toda atabela.
fiz o codigo assim:
begin
TbClientes.Open; (Origem)
TbDestino.Open; (Destino)
while (not TbClientes.Eof) do
begin
TBDestino.edit;
if TbDestino.fieldbyname('Placas').AsString= '' then
begin
TbDestinoPlacas.Value:=TbClientesPlacas.Value;
TbDestino.Post;
TbDestino.Refresh;
TbDestino.Next;
TbClientes.Next;só faz a copia se todos os campos se for vazio?
e outra não para o processo o aplicativo fica travado.
gostaria que quando terminase desse um aviso, showmessage 'Arquivos gravados com sucessso?. e me mostrasse também
a quantidade de registros que foi gravado para que eu possa conferir.
os campos das duas tabelas sâo iguais , nome tipo e tamanho.
conto com a ajuda de vcs.
Gilvanio Gonçalves
Curtidas 0
Respostas
Gilvanio Gonçalves
14/06/2013
Bém depois de analizar o meu proprio codigo, vi onde estava o erro.
eu verificava se o campo esta vazio, se estava vazio gravava. mas se o campo não esta
vazio eu não estava indicando para verificar o proximo registro até que seja final da tabela(Registros).
sendo assim o codigo ficou assim:
o meu tico e teco(neuronios resolveu funcionar,postei o codigo, pois outros usuario possam precisar.
eu verificava se o campo esta vazio, se estava vazio gravava. mas se o campo não esta
vazio eu não estava indicando para verificar o proximo registro até que seja final da tabela(Registros).
sendo assim o codigo ficou assim:
var
contador : integer;
begin
TbClientes.Open;
TbDestino.Open;
contador :=0;
while (not TbClientes.Eof) do
begin
TBDestino.edit;
if TbDestino.fieldbyname('Placas').AsString= '' then
begin
TbDestinoPlacas.Value:=TbClientesplacas.Value;
TbDestino.Post;
TbDestino.Refresh;
TbDestino.Next;
TbClientes.Next;
Inc( Contador );
end
else
TbDestino.Next;
TbClientes.Next;
end;
ShowMessage( IntToStr(Contador) + ' registros atualizados!' );
end;o meu tico e teco(neuronios resolveu funcionar,postei o codigo, pois outros usuario possam precisar.
GOSTEI 0
José
14/06/2013
Tópico concluído.
GOSTEI 0