Ir para conteúdo

Arquivado

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

jrcardozo

Localizador encomendas correios

Recommended Posts

ASP
<%

'Desenvolvido por: Jonathan R. Cardozo (jonathandj)

'Data Criação: 04/2007

 

codigoEncomenda=Request("id")

set xmlhttp=server.createobject("microsoft.xmlhttp")

xmlhttp.open "POST","http://websro.correios.com.br/sro_bin/txect01$.QueryList?P_LINGUA=001&P_TIPO=001&P_COD_UNI="&codigoEncomenda&"", false

xmlhttp.send

conteudo=xmlhttp.responseText

set xmlhttp=nothing

arr=split(conteudo,"<tr>")

function tiralixo(str)

    var=replace(str,"rowspan=1>","")

    var=replace(var,"rowspan=2>","")

    var=replace(var,"colspan=2>","")

    var=replace(var,"/tr","")    

    var=replace(var,"/<","")

    var=replace(var,">","")

    tiralixo=var

end function

function tiralixo2(str)

    var=replace(str,"rowspan=1>","")

    var=replace(var,"rowspan=2>","")

    var=replace(var,"colspan=2>","")

    var=replace(var,"/tr","")

    var=replace(var,"font","")

    var=replace(var,"FONT COLOR=","")

    var=replace(var,"/","")    

    var=replace(var,"<","")

    var=replace(var,">","")

    tiralixo2=var

end function

 

Response.Write("<table width=""550"" align=""center"" border=""0"" cellspacing=""5"" cellpadding=""1"" style=""font-size:11px;font-family:Arial, Helvetica, sans-serif"" >")

Response.Write("<tr>")

Response.Write("<td colspan=""3"">")

Response.Write("<img src=""http://websro.correios.com.br/correios/Img/correios.gif""><br>O horário não indica quando a situação ocorreu, mas sim quando os dados foram recebidos pelo sistema, exceto no caso do SEDEX 10 e do SEDEX Hoje, em que ele representa o horário real da entrega.<br>")

Response.Write("</td>")

Response.Write("</tr>")

Response.Write("<tr align=""center"" bgcolor=""#fff666"">")

Response.Write("<td>")

Response.Write("<b>DATA - HORA</b>")

Response.Write("</td>")

Response.Write("<td>")

Response.Write("<b>LOCAL</b>")

Response.Write("</td>")

Response.Write("<td>")

Response.Write("<b>SITUAÇÃO</b>")

Response.Write("</td>")

Response.Write("</tr>")

cor="#f9f9f9"

FOR I = LBOUND(arr) TO UBOUND(arr)

    if i=0 then i=2

    linha=arr(i)

    coluna=split(linha,"td")

    on error resume next    

    response.write("<tr>")

    FOR j = LBOUND(coluna) TO UBOUND(coluna)

        if (coluna(j)=coluna(1)) or (coluna(j)=coluna(3)) or (coluna(j)=coluna(5)) then

            valor=coluna(j)

            response.write("<td bgcolor="&cor&">")

            if coluna(j)=coluna(5) then

                arr2=split(valor,"""")

                valor=arr2(2)

                Response.Write(tiralixo2(valor))

            else

                Response.Write(tiralixo(valor))

            end if    

            response.write("</td>")

        end if

    next

    response.write("</tr>")    

    if err.number=9 then

        Response.Write("<tr>")

    end if

    if cor="#f9f9f9" then

        cor="#f2f2f2"

    else

        cor="#f9f9f9"

    end if

next

Response.Write("</table>")

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando eu testar darei meu aval, mais parabéns pela contribuíção, quanto tempo hiem... (hehe)!!

 

Abraços colega!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

muito bom seu código Jonathan....

 

testei aqui e funcionou perfeitamente....

 

em um dos testes tive um pequeno erro...

apareceu no final da tabela escrito "target="

 

Então pra resolver isso só acresceintei dentro da função "tiralixo2" o seguinte:

var=replace(var,"target=","")

valeus aí :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu o reforço ai Filipe, realmente podem acontecer casos em que aparece isso pois fiz alguns testes...quem usar ele para a real finalidade vai vendo os outros replaces que precisa...boa sorte ai no seu code

 

ae tedk' fazia tempo que não deixava nada aqui pra galera heim.....vou ver se tenho mais algo guardado aqui na minha bagunça

 

abraço a todos

Compartilhar este post


Link para o post
Compartilhar em outros sites

é isso aí cara

 

eu também só dei uma conferida.. quando começar usar isso, acredito que um dia vou precisar, aí agente vai fazendo testes com vários números diferentes de "envio dos correios" e confere se precisa acrescentar algo...

 

mas tá de parabéns.. excelente código!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

vc esta usando a mesma URL dos correios no XMLHTTP ?

Dá uma olhada nisto.
Você até pode incluir nos seus favoritos, o link para a página de rastreamento da sua encomenda, como por exemplo, este link http://websro.correios.com.br/sro_bin/txect01$.QueryList?P_COD_UNI=ES575943228BR&P_LINGUA=001&P_TIPO=001. No entanto, precisará ainda atualizar a página constantemente para verificar atualizações na situação.

Para agilizar esse processo e evitar que os usuários percam tempo com tal tarefa, foi desenvolvido o Sistema Automatizado de Rastreamento de Encomendas nos Correios. O mesmo permite o rastreamento de encomendas individuais e grupos de encomendas. O usuário pode deixar a página do sistema aberta e será avisado, com um alerta sonoro e visual, sempre que a situação da sua encomenda mudar. Assim, sobra mais tempo para o usuário fazer o que realmente lhe interessa.

Bem, como estamos em uma comunidade de desenvolvedores de software, apesar de ser uma ferramenta útil para qualquer tipo de usuário, o mais interessante é que a mesma disponibiliza um WebService que permite implementar este recurso de rastreamento em qualquer aplicação.

Existem alguns WebServices que fornecem serviços disponibilizados pelos Correios, como é o caso da consulta de endereço por CEP, encontrados em sites como http://www.maniezo.com.br e http://www.bronzebusiness.com.br/webservices/wscep.asmx.

No entanto, não conheço nenhum outro WebService para rastreamento de encomendas e nenhum sistema automatizado de rastreamento (pelo menos não gratuito). Assim, este é o primeiro serviço livremente disponibilizado.

O sistema está disponível em http://rastreador.manoelcampos.com/ .

O WebService desenvolvido pode ser acessado aqui http://rastreador.manoelcampos.com/soap.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

vc esta usando a mesma URL dos correios no XMLHTTP ?

 

Dá uma olhada nisto.

Você até pode incluir nos seus favoritos, o link para a página de rastreamento da sua encomenda, como por exemplo, este link http://websro.correios.com.br/sro_bin/txect01$.QueryList?P_COD_UNI=ES575943228BR&P_LINGUA=001&P_TIPO=001. No entanto, precisará ainda atualizar a página constantemente para verificar atualizações na situação.

 

Para agilizar esse processo e evitar que os usuários percam tempo com tal tarefa, foi desenvolvido o Sistema Automatizado de Rastreamento de Encomendas nos Correios. ...

 

Obrigado meu caro, na verdade estou usando dentro de uma intranet que tenho aqui. fazemos pedidos pelo ML então eu usei isso no site juntamente com o pedido para verificar o produto. Está dando certo mas queria algo melhor, tipo esta extenção para o Chrome 'CORREIOS TRACK'. Esse ficou show. tudo em jquery Ainda não consegui entender como o cara fez. Mas tá blz.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pode usar esse em ASP.Net junto com seu code ASP Classic, ou implementar ele em ASP Classic

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.