COPIAR DE UMA TABELA PARA OUTRA

MARIOANDRADE 06/10/2014 20:42:25
#441740
Meus amigos, como não obtive resultado com o tópico anterior abri esse aqui eu uso o código abaixo para copiar da listview para uma tabela, mas como comentei ao passar de 250 itens apresenta um erro, como o que eu preciso é apenas manter um histórico como faço para copiar da TBClientes para TBHistórico segue código que uso para copiar da listview:

Dim Cont As Integer
Dim i As Integer
Cont = UsrPrincipal.lstAlterar.ListItems.Count
UsrPrincipal.lstAlterar.ListItems.Item(1).Selected = True
Cod_Cli = lstAlterar.SelectedItem

ConexaoBD
rs.Open [Ô]select *from TBHIstorico[Ô], db, 3, 3
For i = 1 To Cont
rs.AddNew
rs(1) = UsrPrincipal.lstAlterar.ListItems(i)
rs(2) = UsrPrincipal.lstAlterar.ListItems(i).SubItems(1)
rs(3) = UsrPrincipal.lstAlterar.ListItems(i).SubItems(2)
If UsrPrincipal.lstAlterar.ListItems(i).SubItems(3) = [Ô]SIM[Ô] Then rs(4) = 1
rs(5) = UsrPrincipal.lstAlterar.ListItems(i).SubItems(4)
If UsrPrincipal.lstAlterar.ListItems(i).SubItems(5) = [Ô]SIM[Ô] Then rs(6) = 1
If UsrPrincipal.lstAlterar.ListItems(i).SubItems(6) = [Ô]SIM[Ô] Then rs(7) = 1
rs(8) = UsrPrincipal.lstAlterar.ListItems(i).SubItems(7)
rs(9) = UsrPrincipal.lstAlterar.ListItems(i).SubItems(8)
rs(10) = Month(dtpHistorico.Value)
rs(11) = Year(dtpHistorico.Value)
rs.Update
Next i
rs.Close: Set rs = Nothing
db.Close: Set db = Nothing
FILMAN 06/10/2014 22:37:22
#441742
Resposta escolhida
Todos os campos estão preenchidos corretamente?
Quais os dados da tela em que dá erro? Tentou cadastrar somente esse registro que dá erro?

Tente mudar o parametro doSelect para esse aqui

rs.Open [Ô]select * from TBHIstorico[Ô], db, 2, 3
MARIOANDRADE 06/10/2014 23:10:32
#441744
Citação:

:
Todos os campos estão preenchidos corretamente?
Quais os dados da tela em que dá erro? Tentou cadastrar somente esse registro que dá erro?

Tente mudar o parametro doSelect para esse aqui

rs.Open [Ô]select * from TBHIstorico[Ô], db, 2, 3




Não deu certo, e os registros não estão com erros, eu corrigi e substitui um a um só pra ver, mas o erro é só quando passa de 250 itens.
eu fiz o teste da seguinte maneira, exclui alguns e deixei com 241, daí ele executa normalmente, depois cadastrei mais 10 registros e deu erro.

eu tentei algo como

Dim Cont As Long
Dim Cont as Variant


mas sem sucesso.
LUIZCARLOS 06/10/2014 23:22:14
#441745
estou meio sem tempo, mas tenho um projeto de controle de estoque em dao que faz isso. copia dados de uma tabela access para uma outra tabela.

MARIOANDRADE 06/10/2014 23:37:02
#441746
Citação:

:
estou meio sem tempo, mas tenho um projeto de controle de estoque em dao que faz isso. copia dados de uma tabela access para uma outra tabela.



se possível envie para meu email m4r100@bol.com.br ou post o código pra fazer isso.
Desde já agradeço.
FILMAN 07/10/2014 15:48:16
#441773
Mario deve ser sua tabela então!

Pelo o que esta dizendo, veja se não esta tratando duplicidade na tabela, pois se estiver com restrição pode dar problema!
FILMAN 07/10/2014 22:19:56
#441794
Caro, Mario verifique os campos da tabela para ver se os dados não estão estourando os mesmo!


Tópico encerrado , respostas não são mais permitidas