Fórum SOS!!!! #194955

14/11/2003

0

preciso com urgência fazer exportação/importação. o programador da empresa sofreu acidente e sou apenas um auxiliar aprendendo.
Preciso de ajuda para comparar registros de uma tabela com outra e atualizar o que não está repetido.
Agradeço bastante a ajuda.
Abraços.


Leandrosarno

Leandrosarno

Responder

Posts

14/11/2003

Carlosk

cara, isso ai ta parecendo bem facil...
coloca ai a estrutura das tabelas e vamo ve o q da pra fazer...

abracos.


Responder

Gostei + 0

14/11/2003

Rafael_gamba

Primeiro vamos definir as tabelas como :

Tabela completa : [b:0702465b3d]Tabelacomp[/b:0702465b3d]
Tabela a completar : [b:0702465b3d]TabelaInc[/b:0702465b3d]
Chave primária de cada tabela : [b:0702465b3d]Codigo[/b:0702465b3d]
Campo a ser atualizado : [b:0702465b3d]valor[/b:0702465b3d]

vamos lá. Use o seguinte código (substituinda nomes de tabela e campo é claro) :

Tabelacomp.Refresh;
Tableacomp.First;

TabelaInc.Refresh;

[b:0702465b3d]while not [/b:0702465b3d]Tabelacomp.EOF [b:0702465b3d]do[/b:0702465b3d]
[b:0702465b3d]begin[/b:0702465b3d]
[b:0702465b3d]If [/b:0702465b3d]Tabelainc.Locate(´codigo´,TabelacompCodigo.value,[LoCaseInsensitive]) [b:0702465b3d]then[/b:0702465b3d]
[b:0702465b3d]begin[/b:0702465b3d]
[b:0702465b3d]if [/b:0702465b3d]tabelainccampo.value<tabelacompcampo.value [b:0702465b3d]then[/b:0702465b3d]
[b:0702465b3d]begin[/b:0702465b3d]
tabelainc.edit;
tabelainccampo.value:=tabelacompcampo.value;
tabelainc.post;
[b:0702465b3d]end;[/b:0702465b3d]
[b:0702465b3d]end[/b:0702465b3d]
[b:0702465b3d]else[/b:0702465b3d]
[b:0702465b3d]begin[/b:0702465b3d]
tabelainc.last;
tabela1nc.append;
tabelainccampo.value:=tabelacompcampo.value;
tabelainccampo2.value:=tabelacompcampo2.value;
tabelainc.post;
[b:0702465b3d]end;[/b:0702465b3d]
Tabelacomp.Next;
[b:0702465b3d]end;[/b:0702465b3d]


Pronto!!! Resolvido!!!
No final, a tabelainc estará atualizada com a tabelaomp.

Um abraço!!


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar