Jump to content


Photo

Bof Ou Eof São Verdadeiros, Ou O Registro Atual Foi Excluído


  • Faça o login para participar
7 replies to this topic

#1 William M. Rodrigues

William M. Rodrigues

    Novato no fórum

  • Usuários
  • 3 posts
  • Sexo:Não informado

Posted 15/01/2008, 15:10

Ja visitei varios foruns, encontrei um registro aqui tratando deste assunto porem, nao me ajudou.

possuo uma pagina que funciona assim:

pagina index, exibe meus registros que estao amarrados a um determinado setor. cada registro possui um setor e um setor pode possuir varios registros. O erro esta acontecendo quando clico num determinado setor que nao possui nenhum registro, ja tentei varios ifs e loops. o ultimo que tentei ficou assim:

na pagina Setor.asp tem um comando SQL assim:

SetorAtual = (Request.QueryString("Setor1"))

strDic = "SELECT * "
strDic = strDic & "FROM TbDicionario "
strDic = strDic & "INNER JOIN TbSetor "
strDic = strDic & "On TbDicionario.IdSetor = TbSetor.IdSetor "
strDic = strDic & "WHERE tbDicionario.IdSetor=" & SetorAtual & " "
strDic = strDic & "Order By TbDicionario.Titulo asc "
SET rsDic = conexaodb.Execute(strDic)

e no corpo da pagina tem:

<%if rsDic.eof then%>
<td bgcolor="#ffffff" width="10%" align="left">Não possui nenhum registro!</td>
<%
else
Do until rsDic.eof
TpResp = rsDic.Fields("Solucao")
%>
<td bgcolor="#ffffff" width="70%" align="left"><p class="menu"><b><a href="detalhes.asp?detalhe1=<% = rsDic.Fields("IdDic") %>" class="menu"><% = rsDic.Fields("Titulo") %></a></b></p></td>
<td bgcolor="#ffffff" width="15%" align="left"><p class="menu"><b><a href="detalhes.asp?detalhe1=<% = rsDic.Fields("IdDic") %>" class="menu"><% = rsDic.Fields("Setor") %></a></b></p></td>

<% IF (TpResp ="") then %>
<td bgcolor="#ffffff" width="10%" align="left"><p class="ft8"><b><font color="#0033FF">Resp</font></b></p></td>
<% else %>
<td bgcolor="#ffffff" width="10%" align="left"><p class="ft8"><b><font color="#FF0000">ok</font></b></p></td>
<% End IF %>
<td width="5%" height="20"><a href="inserir.asp?id=<%=RsDic("IDDic")%>"><img src="Altera.gif" border="0" alt="Alterar Registro"></a></font></td>
</tr>
<%
rsDic.movenext
loop
end if
%>

Erro que da e o famoso:

Tipo de erro:
ADODB.Field (0x80020009)
BOF ou EOF são verdadeiros, ou o registro atual foi excluído. A operação solicitada pelo aplicativo requer um registro atual.
/rosa/Setor.a

#2 Prog

Prog

    ...

  • Ex-Admins
  • 3761 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro/RJ
  • Interesses:TI, Software Livre, Design Digital e Rock'n'Roll.

Posted 15/01/2008, 15:18

Já tentou com DO WHILE invez de DO UNTIL.

O comportamento dos 2 loops são distintos.
------
Mero mortal!

#3 William M. Rodrigues

William M. Rodrigues

    Novato no fórum

  • Usuários
  • 3 posts
  • Sexo:Não informado

Posted 15/01/2008, 15:32

Já tentou com DO WHILE invez de DO UNTIL.

O comportamento dos 2 loops são distintos.




Ja tentei cara assim:
<%if rsDic.eof then%>
<td bgcolor="#ffffff" width="10%" align="left"><p class="ft8"><b><font color="#FF0000">Não possui nenhum registro!</font></b></p></td>
<%else%>
<%
Do WHILE Not rsDic.eof
TpResp = rsDic.Fields("Solucao")
%>
<td bgcolor="#ffffff" width="70%" align="left"><p class="menu"><b><a href="detalhes.asp?detalhe1=<% = rsDic.Fields("IdDic") %>" class="menu"><% = rsDic.Fields("Titulo") %></a></b></p></td>
<td bgcolor="#ffffff" width="15%" align="left"><p class="menu"><b><a href="detalhes.asp?detalhe1=<% = rsDic.Fields("IdDic") %>" class="menu"><% = rsDic.Fields("Setor") %></a></b></p></td>
<% IF (TpResp ="") then %>
<td bgcolor="#ffffff" width="10%" align="left"><p class="ft8"><b><font color="#0033FF">Resp</font></b></p></td>
<% else %>
<td bgcolor="#ffffff" width="10%" align="left"><p class="ft8"><b><font color="#FF0000">ok</font></b></p></td>
<% End IF %>
<td width="5%" height="20"><a href="inserir.asp?id=<%=RsDic("IDDic")%>"><img src="Altera.gif" border="0" alt="Alterar Registro"></a></font></td>
</tr>
<%
rsDic.movenext
loop
end if
%>

e nada veio a mesma mensagem

#4 Prog

Prog

    ...

  • Ex-Admins
  • 3761 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro/RJ
  • Interesses:TI, Software Livre, Design Digital e Rock'n'Roll.

Posted 15/01/2008, 15:39

Muito estranho esse comportamento. :(

O comando SQL esta sendo montado corretamente? Já deu um response.write para ver se esta tudo ok?
------
Mero mortal!

#5 William M. Rodrigues

William M. Rodrigues

    Novato no fórum

  • Usuários
  • 3 posts
  • Sexo:Não informado

Posted 15/01/2008, 15:50

Muito estranho esse comportamento. :(

O comando SQL esta sendo montado corretamente? Já deu um response.write para ver se esta tudo ok?


Ja utilizei este mesmo comando sql para outras paginas funciona sem problemas

#6 Prog

Prog

    ...

  • Ex-Admins
  • 3761 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro/RJ
  • Interesses:TI, Software Livre, Design Digital e Rock'n'Roll.

Posted 15/01/2008, 16:22

Muito estranho esse comportamento. :(

O comando SQL esta sendo montado corretamente? Já deu um response.write para ver se esta tudo ok?
------
Mero mortal!

#7 Patrique

Patrique

    Super Veterano

  • Usuários
  • 1859 posts
  • Sexo:Não informado

Posted 16/01/2008, 01:12

Esse erro ocorre geralmente quando uma variavel não é verdadeira ou se ela não existe, ou seja o asp tenta fazer uma requisição no bd só que não é retornado um valor válido para montar a página e com isso ocorre este erro, dá uma analizada e veja se os comandos sql do asp estão apontando corretamente para as tabelas no bd, acredito que o erro esteja na extruturação no momento da montagem e não erro no código.

[]'s
Patrique

#8 Worm

Worm

    Veterano

  • Ex-Admins
  • 1343 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP
  • Interesses:Obter o maximo conhecimento.

Posted 17/01/2008, 09:59

Cara, testa um campo só e veja se ocorre o erro. e se possivel tenta recuprar o valor do campo assim

<%

TpResp = rsDic("Solucao")

%>

sem o Fields




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq