CTe
Enviado: 16 Jul 2012 22:51
Caros, estou precisando desenvolver algo para conhecimento de transporte eletronico, procurei algo em acbr... mas nao encontrei. Alguem teria um exemplo em xhb para que eu estude?
Código: Selecionar todos
Procedure SefazConsultaCte(cChave,cCertificateCN)
Local cAmbiente, cUrlWs, cSOAPAction, cXmlResp, cXmlDados, cXmlSoap
cAmbiente := "1"
cXmlResp := "*ERRO*"
cUrlWs := GetUrlWs(UfCodigo(Substr(cChave,1,2)),"cteconsultaprotocolo")
cXmlDados := ""
cXmlDados += [<consSitCTe versao="1.04" xmlns="http://www.portalfiscal.inf.br/cte">]
cXmlDados += [<tpAmb>] + cAmbiente + [</tpAmb>]
cXmlDados += [<xServ>CONSULTAR</xServ>]
cXmlDados += [<chCTe>] + cChave + [</chCTe>]
cXmlDados += [</consSitCTe>]
cXmlSoap := ""
cXmlSoap += [<?xml version="1.0" encoding="UTF-8"?>]
cXmlSoap += [<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">]
cXmlSoap += [<soap12:Header>]
cXmlSoap += [<cteCabecMsg xmlns="http://www.portalfiscal.inf.br/cte/wsdl/CteConsulta">]
cXmlSoap += [<cUF>] + Substr(cChave,1,2) + [</cUF>]
cXmlSoap += [<versaoDados>1.04</versaoDados>]
cXmlSoap += [</cteCabecMsg>]
cXmlSoap += [</soap12:Header>]
cXmlSoap += [<soap12:Body>]
cXmlSoap += [<cteDadosMsg xmlns="http://www.portalfiscal.inf.br/cte/wsdl/CteConsulta">]
cXmlSoap += cXmlDados
cXmlSoap += [</cteDadosMsg>]
cXmlSoap += [</soap12:Body>]
cXmlSoap += [</soap12:Envelope>]
cSoapAction := [http://www.portalfiscal.inf.br/cte/wsdl/CteConsulta/cteConsultaCT]
cXmlResp := MsXmlSoapPost( cUrlWs, cXmlSoap, cSoapAction, cCertificateCN)
Return cXmlResp