Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Guilherme Strich

Produtos em Destaque

Recommended Posts

Eaí pessoal!

Eu realmente não nasci para ser programador! hehehehe

Cada uma que me aparece, que não sei resolver e tenho que recorrer aqui ao fórum.

 

O site de um cliente meu, tem alguns produtos em destaque (9) na página inicial de seu site, porem de tempo em tempo os produtos somem da página inicial e aparece lá um erro, o que isso pode ser?

 

Erro:

ADODB.Field error '800a0bcd'

 

Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.

 

/arquivos/centro.asp, line 68

 

Código do centro.asp:


<%
set conn = server.createobject("ADODB.Connection")
conn.open application("conexao"),"",""
%>


<%
set destaque = conn.execute("select * from extras where nome = 'destaque' order by indice desc")
if not destaque.eof and not destaque.bof then
if vartype(destaque("texto")) > 2 and  destaque("texto") <> "" then
%>
	<table width="415" height="25" cellpadding="0" cellspacing="0" align="center">
       	<tr><td height="10"></td></tr>
		<tr>
			<td height="29" background="/imagem/layout/bg_title.jpg" style="color:#FFF;"> <b>:: Destaque</b></td></td>
		</tr>
		<tr><td height="4"></td></tr>
	</table>
	<table width="415" cellpadding="0" cellspacing="0">
		<tr>
			<td bgcolor="#333333" align="center" valign="middle">
				<%server.execute "/sistemas/banners/banners.asp"%>
				<!--img src="/fotos/<%'=destaque("texto")%>" width="415"-->
			</td></td>
		</tr>
		<tr><td height="4"></td></tr>
	</table>
<%
end if
end if
%>
	<table width="415" height="29" cellpadding="0" cellspacing="0">
			<td background="/imagem/layout/bg_title.jpg" style="color:#FFF;"> <b>:: Promoções</b></td></td>
		</tr>
		<tr><td height="4"></td></tr>
	</table>
<%
conn.cursorlocation = 3
total = 0

'data 			= month(now) & "/" & day(now) & "/" & year(now)
data 			= date
set consulta3 	= conn.execute("select * from produtos where destaque = true order by hora")

if not consulta3.eof and not consulta3.bof then
	dia	= day(date)
	mes	= month(date)
	ano	= year(date)
	while not consulta3.eof
		if day(consulta3("data")) <> dia or month(consulta3("data")) <> mes or year(consulta3("data")) <> ano then
			deferenca_data	= "SIM"
			conn.execute("update produtos set data = '" & date() & "'")
		end if
		if consulta3("hora") > time then
			diferenca_hora	= "SIM"
			conn.execute("update produtos set hora = '" & time() & "'")
		end if
		consulta3.movenext
	wend

	set consulta = server.createObject("ADODB.Recordset")
	sql 	= "select * from produtos where data <= #" & data & "# and hora <= #" & time & "# and destaque = true order by hora"
	consulta.open sql, conn

	resultado =	consulta.recordcount

	indice		= consulta("indice")
	conn.execute("update produtos set data = '" & date & "', hora = '" & time & "' where indice = " & indice)

end if

if consulta3.eof and consulta3.bof then
	response.write "<table align='center' height='100'><tr><td align='center'><b><font color='#666666'>Não há nenhum Produto em destaque.</font></b></td></tr></table>"
else
%>
	<table width="415" border="0" cellpadding="0" cellspacing="0" align="center">
		<tr>
			<td align="center" valign="top">
				<table width="136" height="181" style="border:solid 1px #CCCCCC;">
					<tr>
						<td height="31" background="/imagem/layout/bg_produto.jpg" align="center" class="promocao"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>" style="color:#CCCCCC;"><%=consulta("nome")%></a></td>
					</tr>
					<tr>
						<td height="125" align="center"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>"><img src="/fotos/miniaturas/<%=consulta("imagem")%>" height="125"></a></td>
					</tr>
					<tr>
						<td height="20" align="center" background="/imagem/layout/bg_preco.jpg" class="promocao">
							<b>
							<%
								if vartype(consulta("valor")) > 2 then
									response.write "R$ " & formatnumber(consulta("valor"),2)
								else
									response.write "Consulte-nos"
								end if
							%>
							</b>
						</td>
					</tr>
				</table>
			</td>
<%
			if resultado >= 2 then
				consulta.movenext
%>
			<td align="center" valign="top">
				<table width="136" height="181" style="border:solid 1px #CCCCCC;">
					<tr>
						<td height="31" background="/imagem/layout/bg_produto.jpg" align="center" class="promocao"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>" style="color:#CCCCCC;"><%=consulta("nome")%></a></td>
					</tr>
					<tr>
						<td height="125" align="center"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>"><img src="/fotos/miniaturas/<%=consulta("imagem")%>" height="125"></a></td>
					</tr>
					<tr>
						<td height="20" align="center" background="/imagem/layout/bg_preco.jpg" class="promocao">
							<b>
							<%
								if vartype(consulta("valor")) > 2 then
									response.write "R$ " & formatnumber(consulta("valor"),2)
								else
									response.write "Consulte-nos"
								end if
							%>
							</b>
						</td>
					</tr>
				</table>
			</td>
<%
			end if
			if resultado >= 3 then
				consulta.movenext
%>
			<td align="center" valign="top">
				<table width="136" height="181" style="border:solid 1px #CCCCCC;">
					<tr>
						<td height="31" background="/imagem/layout/bg_produto.jpg" align="center" class="promocao"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>" style="color:#CCCCCC;"><%=consulta("nome")%></a></td>
					</tr>
					<tr>
						<td height="125" align="center"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>"><img src="/fotos/miniaturas/<%=consulta("imagem")%>" height="125"></a></td>
					</tr>
					<tr>
						<td height="20" align="center" background="/imagem/layout/bg_preco.jpg" class="promocao">
							<b>
							<%
								if vartype(consulta("valor")) > 2 then
									response.write "R$ " & formatnumber(consulta("valor"),2)
								else
									response.write "Consulte-nos"
								end if
							%>
							</b>
						</td>
					</tr>
				</table>
			</td>
<%
			end if
			if resultado >= 4 then
				consulta.movenext
%>
		</tr>
		<tr><td colspan="3"><hr></td></tr>
		<tr>
			<td align="center" valign="top">
				<table width="136" height="181" style="border:solid 1px #CCCCCC;">
					<tr>
						<td height="31" background="/imagem/layout/bg_produto.jpg" align="center" class="promocao"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>" style="color:#CCCCCC;"><%=consulta("nome")%></a></td>
					</tr>
					<tr>
						<td height="125" align="center"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>"><img src="/fotos/miniaturas/<%=consulta("imagem")%>" height="125"></a></td>
					</tr>
					<tr>
						<td height="20" align="center" background="/imagem/layout/bg_preco.jpg" class="promocao">
							<b>
							<%
								if vartype(consulta("valor")) > 2 then
									response.write "R$ " & formatnumber(consulta("valor"),2)
								else
									response.write "Consulte-nos"
								end if
							%>
							</b>
						</td>
					</tr>
				</table>
			</td>
<%
			end if
			if resultado >= 5 then
				consulta.movenext
%>
			<td align="center" valign="top">
				<table width="136" height="181" style="border:solid 1px #CCCCCC;">
					<tr>
						<td height="31" background="/imagem/layout/bg_produto.jpg" align="center" class="promocao"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>" style="color:#CCCCCC;"><%=consulta("nome")%></a></td>
					</tr>
					<tr>
						<td height="125" align="center"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>"><img src="/fotos/miniaturas/<%=consulta("imagem")%>" height="125"></a></td>
					</tr>
					<tr>
						<td height="20" align="center" background="/imagem/layout/bg_preco.jpg" class="promocao">
							<b>
							<%
								if vartype(consulta("valor")) > 2 then
									response.write "R$ " & formatnumber(consulta("valor"),2)
								else
									response.write "Consulte-nos"
								end if
							%>
							</b>
						</td>
					</tr>
				</table>
			</td>
<%
			end if
			if resultado >= 6 then
				consulta.movenext
%>
			<td align="center" valign="top">
				<table width="136" height="181" style="border:solid 1px #CCCCCC;">
					<tr>
						<td height="31" background="/imagem/layout/bg_produto.jpg" align="center" class="promocao"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>" style="color:#CCCCCC;"><%=consulta("nome")%></a></td>
					</tr>
					<tr>
						<td height="125" align="center"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>"><img src="/fotos/miniaturas/<%=consulta("imagem")%>" height="125"></a></td>
					</tr>
					<tr>
						<td height="20" align="center" background="/imagem/layout/bg_preco.jpg" class="promocao">
							<b>
							<%
								if vartype(consulta("valor")) > 2 then
									response.write "R$ " & formatnumber(consulta("valor"),2)
								else
									response.write "Consulte-nos"
								end if
							%>
							</b>
						</td>
					</tr>
				</table>
			</td>
<%
			end if
			if resultado >= 7 then
				consulta.movenext
%>
		</tr>
		<tr><td colspan="3"><hr></td></tr>
		<tr>
			<td align="center" valign="top">
		  <table width="136" height="181" style="border:solid 1px #CCCCCC;">
					<tr>
						<td height="31" background="/imagem/layout/bg_produto.jpg" align="center" class="promocao"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>" style="color:#CCCCCC;"><%=consulta("nome")%></a></td>
					</tr>
					<tr>
						<td height="125" align="center"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>"><img src="/fotos/miniaturas/<%=consulta("imagem")%>" height="125"></a></td>
					</tr>
					<tr>
						<td height="20" align="center" background="/imagem/layout/bg_preco.jpg" class="promocao">
							<b>
							<%
								if vartype(consulta("valor")) > 2 then
									response.write "R$ " & formatnumber(consulta("valor"),2)
								else
									response.write "Consulte-nos"
								end if
							%>
							</b>
						</td>
					</tr>
				</table>
			</td>
<%
			end if
			if resultado >= 8 then
				consulta.movenext
%>
			<td align="center" valign="top">
				<table width="136" height="181" style="border:solid 1px #CCCCCC;">
					<tr>
						<td height="31" background="/imagem/layout/bg_produto.jpg" align="center" class="promocao"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>" style="color:#CCCCCC;"><%=consulta("nome")%></a></td>
					</tr>
					<tr>
						<td height="125" align="center"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>"><img src="/fotos/miniaturas/<%=consulta("imagem")%>" height="125"></a></td>
					</tr>
					<tr>
						<td height="20" align="center" background="/imagem/layout/bg_preco.jpg" class="promocao">
							<b>
							<%
								if vartype(consulta("valor")) > 2 then
									response.write "R$ " & formatnumber(consulta("valor"),2)
								else
									response.write "Consulte-nos"
								end if
							%>
							</b>
						</td>
					</tr>
				</table>
			</td>
<%
			end if
			if resultado >= 9 then
				consulta.movenext
%>
			<td align="center" valign="top">
				<table width="136" height="181" style="border:solid 1px #CCCCCC;">
					<tr>
						<td height="31" background="/imagem/layout/bg_produto.jpg" align="center" class="promocao"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>" style="color:#CCCCCC;"><%=consulta("nome")%></a></td>
					</tr>
					<tr>
						<td height="125" align="center"><a href="/monta.asp?link=produto&qual=<%=consulta("indice")%>"><img src="/fotos/miniaturas/<%=consulta("imagem")%>" height="125"></a></td>
					</tr>
					<tr>
						<td height="20" align="center" background="/imagem/layout/bg_preco.jpg" class="promocao">
							<b>
							<%
								if vartype(consulta("valor")) > 2 then
									response.write "R$ " & formatnumber(consulta("valor"),2)
								else
									response.write "Consulte-nos"
								end if
							%>
							</b>
						</td>
					</tr>
				</table>
			</td>
			<%end if%>
		</tr>
	</table>
<%
end if

set conn	= nothing
set consulta3	= nothing
set consulta	= nothing
%>

 

Linha 68:

indice		= consulta("indice")

 

O que pode ser pessoal?

Pois está acontecendo isso seguidamente no site do cliente.

 

Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

o Erro ocorre quando nao tem registro ou foi deletado ..

voce manda filtra por destaque = true, depois tem um outro select <= data

ai quando nao acha o registro especifico da o erro.

um metodo facil é usar o EOF assim ..

 

IF not SeuRS.EOF Then


' vai exibir

Else

'aqui você pode deixar um mensagem, "Nenhum Produto encontrado"
End IF

 

é bem facil assim nunca da erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ta estranho isso ai. O crep do negócio ta na variável indice que ta recebendo esse consulta("indice"). Provavelmente esse consulta("indice") ta vazio. Até ai beleza, é só fazer o que o Anderson disse pra verificar se existe registro. Só que no select abaixo você ta usando esse indice no WHERE, então ele não pode ser vazio, senão vai continuar dando pau. Da uma verificada nisso ae ..

 

Mas resumindo o seu problema é que provavelmente não existe nenhum produto pra destacar e você não fez uma condição pra verificar se existe ou não registro, você mandou simplesmente exibir, por isso da erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ta estranho isso ai. O crep do negócio ta na variável indice que ta recebendo esse consulta("indice"). Provavelmente esse consulta("indice") ta vazio. Até ai beleza, é só fazer o que o Anderson disse pra verificar se existe registro. Só que no select abaixo você ta usando esse indice no WHERE, então ele não pode ser vazio, senão vai continuar dando pau. Da uma verificada nisso ae ..

 

Mas resumindo o seu problema é que provavelmente não existe nenhum produto pra destacar e você não fez uma condição pra verificar se existe ou não registro, você mandou simplesmente exibir, por isso da erro.

 

Na verdade, no gerenciador de conteudo, tem 9 produtos marcados para aparecer ali em destaque, porem nao estao aparecendo, porque sera?

Compartilhar este post


Link para o post
Compartilhar em outros sites

como está a parte do código que tratá para evitar este erro atualmente?

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique também se o MDAC esta correto

 

Se você está certo de que há resultados, e que existe o registro

e que o mesmo não foi deletado,você pode verificar se a versão do MDAC é a mais recente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique também se o MDAC esta correto

 

Se você está certo de que há resultados, e que existe o registro

e que o mesmo não foi deletado,você pode verificar se a versão do MDAC é a mais recente.

 

O que seria MDAC?

Conversando com o cliente, ele me disse, que isso sempre ocorre quando ele exclui algum produto do sistema dela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Conversando com o cliente, ele me disse, que isso sempre ocorre quando ele exclui algum produto do sistema dela.

 

Esse é o problema, o sistema deve ter algum tipo de relacionamento que ao se apagar um produto, não exclui seu relacionamento, e a pagina que exibe os destaques consulta primeiro o relacionamento e ao tentar pegar as informações do produto excluido, gera esse erro.

 

Para sanar isso, alguem que saiba programar na linguaguem que o sistema foi desenvolvido (ASP no caso) para ver os codigos do sistema e verificar o banco de dados, para poder tendo todas as informações na mão, resolver isso para que não gere novos erros cada vez que um produto for excluido.

 

Entrar em contato com quem desenvolveu o sistema é o mais facil, mas por vários motivos isso nem sempre é possivel.

 

Enfim, ao meu veu, isso precisa de uma analise mais detalhada e cuidadosa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.