Ir para conteúdo

POWERED BY:

Arquivado

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

JapaPhr

e-Sedex

Recommended Posts

Ninguem tem nada nao ?? eu tentei usar o link do correreios pro sedex e sedex10 mas o codigo do e-sedex é invalido .. nao da pra calcular direto no site do correios

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ninguem possue nenhum codigo do e-Sedex .. agradeceria muito , mesmo um peqeno exemplo .. grato

Aconselho você procurar a loja VirtuaStore Open, ela utiliza esse sistema dos correios e se não me engano tem um modulo que explica como alterar. Eles tem um grupo de discussões no yahoo, tente debater com o pessoal de lá.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem eu passei pelo mesmo problema com o virtuemart, uma cliente me encomendou tal módulo e não havia nada na web, então eu o desenvolvi em php, que você pode baixar no link http://www.elojas.com.pt/modulo-e-sedex-para-virtuemart para virtuastore teria que criar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%

'=======================================================

'CLASSE SEDEX

'=======================================================

Class Sedex

'-----------------------------------------------------

'Funcao: doCalculoSedex(ByVal ServicoCodigo, ByVal CepOrigem, ByVal CepDestino, ByVal Peso, ByVal MaoPropria, ByVal ValorDeclarado, ByVal AvisoRecebimento)

'Sinopse: Retorna Lista de Indicadores Financeiros

'Parâmetros:

' ServicoCodigo: Código do tipo de entrega que será calculada

' O valores possíveis são:

' - 40010 (SEDEX)

' - 40290 (SEDEX Hoje)

' - 40215 (SEDEX 10)

' - 40045 (SEDEX a Cobrar)

' Valor padrão é: 40010

' CepOrigem: Cep de Origem no formato XXXXX-XXX

' CepDestino: Cep de Destino no formato XXXXX-XXX

' Peso: Peso da remessa limite de 30

' MaoPropria: Serviço de Mão Própria(S/N)

' Valor padrão é: N

' ValorDeclarado: Serviço de seguro com valor declarado

' AvisoRecebimento: Serviço de Aviso de Recebimento(S/N)

' Valor padrão é: N

'Retorno: Objeto SedexInfo

'Autor: Gabriel Fróes - www.codigofonte.com.br

'-----------------------------------------------------

Function doCalculoSedex(ByVal ServicoCodigo, ByVal CepOrigem, ByVal CepDestino, ByVal Peso, ByVal MaoPropria, ByVal ValorDeclarado, ByVal AvisoRecebimento)

'Declaração das variáveis/objetos

Dim Retorno

Dim URL

Dim objXmlHttp

Dim objXmlDoc

'Inicialização dos objetos/variáveis

Set objXmlHttp = Server.CreateObject("MSXML2.XMLHTTP")

Set objXmlDoc = Server.CreateObject("MSXML2.DOMDocument")

Set doCalculoSedex = New SedexInfo

 

'Validando as variáveis

If ServicoCodigo = "" Then

ServicoCodigo = 40010

End If

Peso = Replace(Peso, ",", ".")

If MaoPropria = "" Then

MaoPropria = "N"

End If

ValorDeclarado = Replace(ValorDeclarado, ",", ".")

If AvisoRecebimento = "" Then

AvisoRecebimento = "N"

End If

 

'Montando a URL para busca no site

URL = "http://www.correios.com.br/encomendas/precos/calculo.cfm?resposta=Xml"

URL = URL & "&servico=" & ServicoCodigo

URL = URL & "&cepOrigem=" & CepOrigem

URL = URL & "&cepDestino=" & CepDestino

URL = URL & "&peso=" & Peso

URL = URL & "&MaoPropria=" & MaoPropria

URL = URL & "&valorDeclarado=" & ValorDeclarado

URL = URL & "&avisoRecebimento=" & AvisoRecebimento

objXMLHttp.Open "GET", URL, False

objXMLHttp.Send

'Verificando se a busca foi bem sucedida

If objXmlHttp.statusText = "OK" Then

objXmlDoc.loadXML(objXmlHttp.responseText)

'Verificando se o retorno foi bem sucediido

If TypeName(objXmlDoc) = "DOMDocument" Then

doCalculoSedex.Versao = objXmlDoc.selectSingleNode("//calculo_precos//versao_arquivo").text

doCalculoSedex.ServicoCodigo = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//servico").text

doCalculoSedex.ServicoNome = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//servico_nome").text

doCalculoSedex.UFOrigem = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//uf_origem").text

doCalculoSedex.LocalOrigem = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//local_origem").text

doCalculoSedex.CEPOrigem = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//cep_origem").text

doCalculoSedex.UFDestino = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//uf_destino").text

doCalculoSedex.LocalDestino = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//local_destino").text

doCalculoSedex.CEPDestino = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//cep_destino").text

doCalculoSedex.Peso = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//peso").text

doCalculoSedex.MaoPropria = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//mao_propria").text

doCalculoSedex.AvisoRecebimento = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//aviso_recebimento").text

doCalculoSedex.ValorDeclarado = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//valor_declarado").text

doCalculoSedex.TarifaValorDeclarado = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//tarifa_valor_declarado").text

doCalculoSedex.PrecoPostal = objXmlDoc.selectSingleNode("//calculo_precos//dados_postais//preco_postal").text

doCalculoSedex.ErroCodigo = objXmlDoc.selectSingleNode("//calculo_precos//erro//codigo").text

doCalculoSedex.ErroDescricao = objXmlDoc.selectSingleNode("//calculo_precos//erro//descricao").text

Else

doCalculoSedex.ErroCodigo = "1001"

doCalculoSedex.ErroDescricao = "Não foi possível consultar à base dos correios neste momento."

End If

Else

doCalculoSedex.ErroCodigo = objXmlHttp.status

doCalculoSedex.ErroDescricao = objXmlHttp.statusText

End If

 

'Destruindo os objetos

Set objXmlDoc = Nothing

Set objXmlHttp = Nothing

End Function

End Class

 

'-----------------------------------------------------

'Classe com os Atributos do Sedex

'-----------------------------------------------------

Class SedexInfo

Public Versao

Public ServicoCodigo

Public ServicoNome

Public UFOrigem

Public LocalOrigem

Public CEPOrigem

Public UFDestino

Public LocalDestino

Public CEPDestino

Public Peso

Public MaoPropria

Public AvisoRecebimento

Public ValorDeclarado

Public TarifaValorDeclarado

Public PrecoPostal

Public ErroCodigo

Public ErroDescricao

End Class

 

'-----------------------------------------------------

'EXEMPLO DE CHAMADA

'-----------------------------------------------------

Dim objSedex

Dim objInfo

Set objSedex = New Sedex

Set objInfo = New SedexInfo

Set objInfo = objSedex.doCalculoSedex("", "02401-200", "90110-170", 30, "N", "", "N")

If objInfo.ErroCodigo = "0" Then

Response.Write "Serviço: <b>" & objInfo.ServicoNome & "</b><br />"

Response.Write "UF Origem: <b>" & objInfo.UFOrigem & "</b><br />"

Response.Write "Local Origem: <b>" & objInfo.LocalOrigem & "</b><br />"

Response.Write "CEP Origem: <b>" & objInfo.CEPOrigem & "</b><hr />"

Response.Write "UF Destino: <b>" & objInfo.UFDestino & "</b><br />"

Response.Write "Local Destino: <b>" & objInfo.LocalDestino & "</b><br />"

Response.Write "CEP Destino: <b>" & objInfo.CEPDestino & "</b><hr />"

Response.Write "Peso: <b>" & objInfo.Peso & "</b><br />"

Response.Write "Mao Propria: <b>" & objInfo.MaoPropria & "</b><br />"

Response.Write "Valor Declarado: <b>" & objInfo.ValorDeclarado & "</b><br />"

Response.Write "Tarifa Valor Declarado: <b>" & objInfo.TarifaValorDeclarado & "</b><br />"

Response.Write "Preço Postal: <b>" & objInfo.PrecoPostal & "</b><br />"

Else

Response.Write objInfo.ErroDescricao

End If

Set objInfo = Nothing

Set objSedex = Nothing

%>

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.