USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  RecordCount Retorna -1
RDM.TECNOLOGIA
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 22/10/2008 15:01 hs            
Pessoal eu tenho a consulta abaixo e quando eu dou um RecordCount ela me retorna -1, alguem sabe o que eu estou fazendo de errado?
 
Dim SqlNumNf As String
Set RsNumNf = New ADODB.Recordset

SqlNumNf = "select a.cod_empresa,a.num_nff,a.cod_item,a.qtd_item,b.cod_empresa,b.num_nff,b.ies_situacao from nf_item a, nf_mestre b where b.cod_empresa = a.cod_empresa and b.num_nff = a.num_nff and a.num_nff = '" & txt_num_nf.Text & "' and b.ies_situacao ='N' Order By a.cod_item"
 
RsNumNf.Open SqlNumNf, ConInformix, adOpenKeyset, adLockOptimistic
 
Dim TtRgNF As Integer

TtRgNF = RsNumNf.RecordCount
MsgBox (TtRgNF)
Se alguem souber como resolver, por faver me de um help.
   
Ash Katchup
CAXIAS DO SUL
RS - BRASIL
ENUNCIADA !
Postada em 22/10/2008 16:11 hs            
Vc já testou esta tua SQL em outro programa senão o VB? Talvez ela não esteja retornando nenhum registro.
Baixe um programa chamado "WinSql".

__________________

"It is the way of men to make monsters...and it is the nature of
monsters to destroy their makers."

-F.E.A.R. (First Encounter Assault Recon )
   
RDM.TECNOLOGIA
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 22/10/2008 16:20 hs            
Sim, eu ja testei Exatamente no WinSql e direto no servidor via SQL Browser também e esta retornando os registros exatamente como eu preciso, só no VB 6.0 que ele retorna -1 no RecordCount, eu preciso deste RecordCount para fazer um loop e listar estes dados no listbox.
   
Alexandre Patos
Pontos: 2843 Pontos: 2843
PATOS DE MINAS
MG - BRASIL
ENUNCIADA !
Postada em 22/10/2008 16:26 hs            
na abertura do recordset troque essa opcoes
 
de     RsNumNf.Open SqlNumNf, ConInformix, adOpenKeyset, adLockOptimistic
para  RsNumNf.Open SqlNumNf, ConInformix, adOpenStatic, adLockBatchOptimistic
   
Ash Katchup
CAXIAS DO SUL
RS - BRASIL
ENUNCIADA !
Postada em 22/10/2008 16:33 hs            
Antes de dar o RecordCount, coloque o seguinte código:

RsNumNf.MoveMax
  ( M O V E L A S T)
RsNumNf.MoveMin
( M O V E F I R S T)

ps: por algum motivo, ta trocando "move Max" por "move max"

__________________

"It is the way of men to make monsters...and it is the nature of
monsters to destroy their makers."

-F.E.A.R. (First Encounter Assault Recon )
TÓPICO EDITADO
 
RDM.TECNOLOGIA
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 23/10/2008 13:40 hs            
Pessoal, valeu todas as dicas que postaram aqui, mas não funcionou, então eu fui um pouco mais a fundo investigando na verdade o que o vb6.0 estava fazendo por traz de tudo isto e descobri que o VB6.0 não da suporte, ou melhor não tem alguns data type que são necessários para esta operação para o banco de dados que estou utilizando, pois eu estou trabalhando com 2 bancos diferentes, SQL Server 2000 e Informix, pois no SQL esta tudo ok, não tenho problemas, mas com Informix ele esta dando este problema por falta do data type, então descobri também que este mesmo problema ocorre com banco DBF.
 
Resolução:
Dei um Select Count (*) ai funcionou.
 
Valeu Pessoal.
   
Página(s): 1/1    

CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página