CODIGO SIMPLES COM ERRO

MARIOANDRADE 06/10/2014 17:50:16
#441735
Meus amigos, eu possuo um código simples onde exporto valores de uma listview para uma tabela, todavia quando tem mais de 300 itens u programa apresenta a mensagem acima:

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



Alguém pode ajudar:

FILMAN 06/10/2014 19:24:12
#441738
Resposta escolhida
select *from TBHIstorico

tem que ter um espaço entre o *(asterisco) e o FROM ficando assim

select * from TBHIstorico
MARIOANDRADE 06/10/2014 20:17:03
#441739
Jonathans amigão, o código está funcionando bem desde que tenha menos de 250 itens na listviiew, quanto a seu procedimento tentei e continua dando a mesma mensagem, olha a imagem o que a depuração do erro aponta:
FILMAN 06/10/2014 22:35:33
#441741
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 07/10/2014 10:22:08
#441754
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



Tentei isso também mas sem sucesso, quanto aos registros estão perfeitos, acho que pra copiar da listview deve ter algum limite.
OMAR2011 07/10/2014 12:32:46
#441760
Discordo de você
Testei seu código com pequena mudança.
Fiz o preenchimento do listview com 30 mil registros e gravou todos.
Problemas na variavél declarada, então tive que reduzir números de registro.
O problema deve está no campo da tabela.
MARIOANDRADE 07/10/2014 12:54:21
#441761
Citação:

:
Discordo de você
Testei seu código com pequena mudança.
Fiz o preenchimento do listview com 30 mil registros e gravou todos.
Problemas na variavél declarada, então tive que reduzir números de registro.
O problema deve está no campo da tabela.




pra quantos registros você reduziu??
OMAR2011 07/10/2014 15:04:01
#441767

30 e 37 mil registros.
MARCELO.TREZE 07/10/2014 15:14:45
#441769
ja tenou colocar um doevents no loop
FILMAN 07/10/2014 15:46:20
#441772
Mario, creio que o problema seja os dados! Por isso peço que tente cadastrar somente o registro em que esta parando com erro!

Caso passe faça o que o Marcelo esta dizendo, pois o DoEvents faz um reflesh na aplicação e não deixa aparentar que esta travado.
MARIOANDRADE 07/10/2014 15:51:43
#441774
Citação:

:
ja tenou colocar um doevents no loop




Já sim eu coloquei:
Do Until i = Cont
[ô]Aqui entrou o código
Cont = Cont + 1
Loop


Mas deu o mesmo erro.

O meu caso chega a ser desanimador pois eu exclui alguns registros, fiz o teste com apenas 235 itens e foi tudo ok
depois cadastrei + 7 e deu o bendito erro.
Página 1 de 2 [15 registro(s)]
Tópico encerrado , respostas não são mais permitidas