Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

afonso.sandoval

erro de utilizacao do recordset.clone

Recommended Posts

Hugo, boa noite.

 

Aproveitando nosso contato hoje, gostaria de pedir uma ajuda na questão abaixo.

 

Estou executando uma procedure no vb, a mesma é executada sem erros mas na hora que vou gerar um clone da mesma para o retorno da função da o erro abaixo:

 

O conjunto de registros atual não oferece suporte para indicadores. Isso pode ser uma limitação do provedor ou do tipo de cursor selecionado.

 

Retorno corretamente o registro no recordset , existe apenas um registro na tabela.

 

10003 MICHELLE DE MELO SANTOS 2009-01-12 18:00:00.000 3884-6447 8145-7262 MICHELLE_MELO@UOL.COM.BR NULL NULL NULL 0 1 13351

 

Public Function ExecConsulta(ByVal PrString As String, ByRef PrNrErro As Long, ByRef PrDescErro As String) As ADODB.Recordset

	On Error GoTo sai
	Dim RstTabela As New ADOR.Recordset  

	  RstTabela.LockType = adLockReadOnly

	  RstTabela.CursorLocation = adUseClient

	  RstTabela.CursorType = adOpenDynamic

	  ' Conecta com a base de dados

	  Dim AbreConexao As New GCNBASE.Conexao

	  Set szConexao = New ADODB.Connection

	  Set szConexao = AbreConexao.IniciaConexao

	  Set RstTabela = szConexao.Execute(PrString)

	  If Not (RstTabela Is Nothing) Then

		 If RstTabela.State = adStateOpen Then

			Set ExecConsulta = RstTabela.Clone  ‘onde da o erro

		 End If

	  Else

		 Err.Number = 1

		 Err.Description = "Não foi possível efetuar a conexão no servidor de dados : "

	  End If

sai:

	  If Err.Number <> 0 Then

		  PrNrErro = Err.Number

		  PrDescErro = Err.Description

		  Call GeraLog(Err.Number & " - " & Err.Description & " : " & PrString, Now(), False)

	  End If

	  Set RstTabela = Nothing

	  RstTabela.Close

	  szConexao.Close

End Function

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Afonso.

 

Possivelmente, o erro esteja ocorrendo pela "trava" que você está usando (RstTabela.LockType = adLockReadOnly).

 

Tente trocar de adreadonly para adLockOptimistic e veja se consegue executar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.