COMO RODAR DO ZERO?

GUSTAVOSEVERO 19/10/2009 15:47:00
#325694
Oi pessoal
Criei um sistema e fiz todos os testes com dados no BD e tudo correu bem.
Agora, estou testando o sistema com um BD zerado, como se fosse a primeira vez que o usuário está entrando com os dados.
Fui fazer uma consulta e deu erro dizendo [Ô]BOF ou EOF são verdadeiros...[Ô] Ou que tem que haver um dado pelo menos, porém, no código da consulta eu fiz um [Ô]IF IsNull[Ô] que se for nulo, que o valor seja zero. Como pode isso?

Desde já agradeço a atenção.

Gustavo
MARCELO.TREZE 19/10/2009 16:02:15
#325703
posta o código em que ocorre o erro
LLAIA 19/10/2009 16:03:22
#325704
Um campo pode ser nulo se houver registros no recordset. Agora, se não há registros no seu recordset, não tem como checar campos.

Recordset
|
|
|__ registros
|
|
|__ campos
JEANCOELHO 19/10/2009 16:25:20
#325705
if rs.bof or rs.eof then

daria mais certo meu amigo
TECLA 19/10/2009 16:54:23
#325712
Experimente validar a quantidade de registros que o RECORDSET retornou (If rs.RecordCount > 0 Then), ou até mesmo seguir a dica do JEANCOELHO(If rs.Eof Then).
GUSTAVOSEVERO 20/10/2009 09:45:12
#325763
Oi pessoal
O código é esse:

Set RsSaldoAtual = New RecordSet
RsSaldoAtual.Open [Ô]SELECT * FROM SaldoAtual_LivroCaixa where DataSaldoAtualLivroCaixa = [Ô] & [Ô]#[Ô] & DataConsulta2 & [Ô]#[Ô], db adOpenStatic, adLockOptimistic

If IsNull(RsSaldoAtual([Ô]ValorSaldoAtualLivroCaixa[Ô]).Value) Then
SaldoAntual = 0
Else
SaldoAntual = RsSaldoAtual([Ô]ValorSaldoAtualLivroCaixa[Ô]).Value
End If

E o erro é aponta na linha [Ô]If IsNull...[Ô]
LLAIA 20/10/2009 09:53:01
#325764
de acordo com o que os amigos postaram, faça o seguinte:

Set RsSaldoAtual = New RecordSet
RsSaldoAtual.Open [Ô]SELECT * FROM SaldoAtual_LivroCaixa where DataSaldoAtualLivroCaixa = [Ô] & [Ô]#[Ô] & DataConsulta2 & [Ô]#[Ô], db adOpenStatic, adLockOptimistic

If RsSaldoAtual.RecordCount <> 0 Then

If IsNull(RsSaldoAtual([Ô]ValorSaldoAtualLivroCaixa[Ô]).Value) Then
SaldoAntual = 0
Else
SaldoAntual = RsSaldoAtual([Ô]ValorSaldoAtualLivroCaixa[Ô]).Value
End If

Else

MsgBox [Ô]Não existem registros para calcular o saldo.[Ô], VbExclamation

End If
GUSTAVOSEVERO 20/10/2009 11:12:20
#325777
Pessoal, fiz umas mudanças e consegui hehehe
Porém, apareceu outro erro de execução em outra form agora. O aviso é [Ô]OverFlow[Ô]. O que significa isso? Algum valor sobrecarregado?
O código é esse:

txtClientesDia.txt = Format ((ClientesEL / Dias), [Ô]##00[Ô])

Sendo que o valor de [Ô]ClientesEL[Ô] e [Ô]Dias[Ô] é [Ô]0[Ô] e txtClientesDia.txt aparece como [Ô]000[Ô]

Valeu.
LLAIA 20/10/2009 15:08:29
#325808
cara, não é possível dividir por zero nunca, por isso Overflow
GUSTAVOSEVERO 20/10/2009 15:27:32
#325809
Consegui novamente arrumar esse problema.

Agora to com outro bem mais complicado hehehehe
Essa expressão:

TxtPrazoMedioReceb.Text = Format((APrazoCheqPre + ConvenioCartaoCredito) * 30 / (((AVistaVCEL + APrazoCheqsPreCEL + ValeClienteRedeForteCL + ValeEmpregadoCL + ConvCartCredCL + TicketsAlimRefeicaoCL + VendasDiversasPFCL + VendaEventualCL + DiversosCL) - DevoluçoesCL)), [Ô]#0[Ô])

Todos os valores estão zerados e como o LLAIA falou, não é possível dividir por zero nunca, como posso fazer com que o sistema entenda que o resultado então é [Ô]0[Ô]?

Agradeço novamente a força.
MARCELO.TREZE 20/10/2009 15:40:38
#325813
ele está dano overlow
Página 1 de 2 [14 registro(s)]
Tópico encerrado , respostas não são mais permitidas