Ir para conteúdo

POWERED BY:

Arquivado

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

FabianoSouza

Tratar erro no bloco inteiro do código

Recommended Posts

O On Error Resume Next faz saltar para o próximo trecho do código caso ocorra algum erro, certo?

 

Preciso que o tratamento seja aplicado somente depois que todo o código (para deletar, no meu caso) for executado.

 

Atualmente está assim

 

<%
On Error Resume Next
Aqui vai meu código, são quatro instruções sql para deletar...
 
'Abaixo segue o tratamento de erro.
 
If Err.Number <>0 Then
caminho = Request.ServerVariables("SCRIPT_NAME")
For i = 1 to len(caminho)
if inStr(1,right(caminho,i),"../") = 0 then
nomepagina = (right(caminho,i))
else
exit for
end if
next
caminhofisico= Server.MapPath("/")
Response.Cookies("erro").item("pagina") = nomepagina
Response.Cookies("erro").item("numero") = err.number 
Response.Cookies("erro").item("data") = Time()
Response.Cookies("erro").item("usuario") = Request.Cookies("conta").item("login")
Response.Cookies("erro").item("descricao") = err.description  
Response.Cookies("erro").item("caminhofisico") = caminhofisico   
Response.Cookies("erro").item("origem") = err.nativeerror 
Response.Cookies("erro").item("fonte") = err.source
Response.Clear()
Response.Write ("Erro ") &Err.Number&"." &Err.Description&"."
On error goto 0
'Else
End if
%>

 

Da forma como está se ocorrer erro no SELECT quatro, por exemplo, os outros três serão executados. Isso vai gerar inconsistência no meu banco de dados.

Preciso que, se houver um erro nenhuma instrução SQL seja executada.

 

Como faço?

Compartilhar este post


Link para o post
Compartilhar em outros sites

na verdade ele vai executando seu código para ver se gera o erro. e para no erro gerado, porém os outros que passaram no teste é porque já foi executado com êxito, o que você pode fazer é testar antes em background e não exibir os resultados dos aprovados.

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.