Jump to content
Fórum Script Brasil
  • 0
Sign in to follow this  
AlexMunhoz

Calculo de Frete direto dos correios.

Question

Ola pessoal, estou a algum tempo afastado do nosso fórum de ASP mas estou retornando novamente, e deixo uma contribuição que anda esquentando a cabeça de muita gente. RSS. Inclusive a minha.

Depois de muita pesquisa fui catando um pouco ali, um pouco aqui e montei esse script bem simples e funcional.

Agora chega de bla bla bla e vamos ao que interessa.

Tabela de Serviço dos correios.

41106 - PAC

40010 – SEDEX

40215 - SEDEX 10

40290 - SEDEX HOJE

81019 - e-SEDEX

44105 - MALOTE

Vamos La.

Crie uma pagina chamada Default.asp e nela coloque o seguinte código.

Default.asp

<%
If Request("busca")=1 Then
Dim UrlResposta


'URL De resposta, coloque o caminho onde está o seu arequivo de resposta.
UrlResposta = "http://luizcesarengenheiro.com.br/correios/respostacorreios.asp"
'------------------------------------------------------------------

ssql = empty
ssql = ssql & "http://www.correios.com.br/encomendas/precos/calculo.cfm"
ssql = ssql & "?cepOrigem=" & Request("cepOrigem") & ""
ssql = ssql & "&cepDestino=" & Request("cepDestino") & ""
ssql = ssql & "&peso=" & Request("peso") & ""
ssql = ssql & "&servico=" & Mid(Request("servico"),1,5) & ""
ssql = ssql & "&valorDeclarado=" & Request("valor") & ""
ssql = ssql & "&MaoPropria=n"
ssql = ssql & "&avisoRecebimento=n"
ssql = ssql & "&resposta=" & UrlResposta  & ""

Response.Redirect(ssql)

End if
%>

<html>
<head>
</head>
<body>
<form action="<%Request.ServerVariables("SCRIPT_NAME")%>" method="get" name="form1" ID="Form1">

Cep Origem:<br>
<input type="text" name="cepOrigem" value="" ID="Text1"><br>

Cep Destino:<br>
<input type="text" name="cepDestino" value="" ID="Text2"><br>

Peso:<br>
<input type="text" name="peso" value="" ID="Text3"><br>

Serviço:<br>
<select name="servico" class="frmtextcmb">
    <option Selected> -- ESCOLHA O SERVIÇO -- </option>
    <option> 41106 - PAC</option>
    <option> 40010 - SEDEX</option>
    <option> 40215 - SEDEX 10 </option>
    <option> 40290 - SEDEX HOJE </option>
    <option> 81019 - e-SEDEX </option>
    <option> 44105 - MALOTE </option>

</select><br />

Valor:<br>
<input type="text" name="valor" value="" ID="Text4"><br>

<input type="hidden" name="busca" value="1" ID="Hidden1"><br>

<input type="submit" name="Submit" value="Enviar" ID="Submit1">

</form>
</body>
</html>
Agora a sua pagina de resposta. Respostacorreios.asp
<html>
<head>
<title>Cálculo de Preços</title>

<% 
iF Request.QueryString("erro") = empty then

    Response.Write("Serviço: " & Request.QueryString("Servico") & "<br>")
    
    Response.Write("Cep de Origem: " &Request.QueryString("cepOrigem") & "<br>") 
    
    Response.Write(Request.QueryString("UFOrigem") & "-")
    
    Response.Write(Request.QueryString("LocalOrigem")& "<br>")
    
    Response.Write("Cep de Destino: " &Request.QueryString("cepDestino") & "<br>")
    
    Response.Write(Request.QueryString("UFDestino") & "-")
    
    Response.Write(Request.QueryString("LocalDestino")& "<br>")
    
    Response.Write("Peso: " &FormatNumber(Replace(Request.QueryString("peso"),".",",")) & " Kg<br>")
    
    Response.Write("Mão Propria: " &FormatCurrency(Replace(Request.QueryString("MaoPropria"),".",",")) & "<br>")
    
    Response.Write("Aviso de Recebimento: " &FormatCurrency(Replace(Request.QueryString("avisoRecebimento"),".",",")) & "<br>")
    
    Response.Write("Valor Total: " &FormatCurrency(Replace(Request.QueryString("tarifa"),".",","))& "<br>")

else

    response.Write(request.QueryString("erro"))

end if

%>
</head>
</html>

Observem que já estou trocando as, por pontos para que não retorne erro na sua consulta,

Bom Proveito.

Abraços... ;)

Share this post


Link to post
Share on other sites

5 answers to this question

Recommended Posts

  • 0

o PAC nunca funcionou corretamente nos correios... eu usei um tempo e tive que mudar o código do PAC... mas me parece que ultimnamente não vai mesmo

<option value="41106">PAC</option>
<option value="40010">SEDEX</option>
<option value="40215">SEDEX 10</option>
<option value="40045">SEDEX a Cobrar</option>                        
<option value="40290">SEDEX HOJE</option>
<option value="81019">e-SEDEX</option>
<option value="44105">MALOTE</option>
<option value="85480">AEROGRAMA</option>
<option value="10030">CARTA SIMPLES</option>
<option value="10014">CARTA REGISTRADA</option>
<option value="16012">CART&Atilde;O POSTAL</option>
<option value="20010">IMPRESSO</option>
<option value="14010">MALA DIRETA</option>

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

Cloud Computing


  • Forum Statistics

    • Total Topics
      148593
    • Total Posts
      644302
×
×
  • Create New...