:: STORED PROCEDURE - MOVEFIRST / MOVELAST ::

USUARIO.EXCLUIDOS 08/12/2006 07:34:25
#188741
Pessoal,

Preciso de uma ajuda no seguinte.... tenho uma SUB que executa uma stored procedure e retorna um recordset... porém naum estou conseguindo executar o MoveFirst / MoveLast para eu poder buscar a informação de RecordCount...

Caso alguém já passou por isso e puder me ajudar... estou aguardando...

Obrigado...
LIONHEART 08/12/2006 07:49:13
#188742
vc precisa dizer o erro
USUARIO.EXCLUIDOS 09/12/2006 00:41:47
#188940
Nesse momento naum estou com o codigo aki... mas a mensagem que aparece... naum saberei dizer exatamente.... mas a impressao que tenho é que a stored procedure esta retornando um recordset READONLY... entaum naum posso mover para nenhum registro....

eu tenho que começar no primeiro e apenas executar o MOVENEXT....

naum sei se fui claro mas... na segunda pegarei a mensagem exata e envio...

mas desde ja obrigado pela ajuda...

falow
USUARIO.EXCLUIDOS 09/12/2006 05:22:23
#188949
Resposta escolhida
A questão está na abertura do RecordSet.

'Tenta algo assim:

'Crie uma string com o nome da procedure seguida dos seus parametros na order correta
strSQL = "StoredProcedureName Param1, Param2, ... , ParamN"

'Abra um recordset e preste atenção nas opções possíveis no parametro onde 'escolhi "adOpenForwardOnly" .. aqui dizemos como o RS resultante será navegado 'e também nas opções disponiveis onde coloquei "adLockReadOnly" que define 'sobre permissões para alterações nos registros. (As opções abaixo são as mais rapidas)
RS.Open strSQL, Cnn, adOpenForwardOnly, adLockReadOnly

'Tendo um Recordset (vazio ou com registros) o percorreremos ate o final
while not rs.EOF
'faça algo como preencher uma ComboBox com o RS.
cmbCliente.AddItem Rs!nm_cliente & ""


'A cada loop vamos ao proximo registro
rs.MoveNext

wend

'Fechamos o Recordset
Rs.Close

'Destruimos a variavel to tipo objeto explicitamente uma vez que o VB não 'executa a tarefa a contento
Set Rs= Nothing

Axo que resolve seu caso.
USUARIO.EXCLUIDOS 09/12/2006 05:27:09
#188951
O post acima leva em considersação que NÃO esteja utilizando data control e qua a tecnologia de acesso a dados seja ADO.
Tópico encerrado , respostas não são mais permitidas