|
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.
|
|
|
|
|
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 )
|
|
|
|
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.
|
|
|
|
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
|
|
|
|
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
|
|
|
|
|
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.
|
|
|