CTeLerXML

A função CTeLerXML é usada para carregar os dados de um arquivo XML de CT-e (modelo 57) em uma estrutura que contém os dados completos do CT-e. É particularmente útil para carga automática dos dados em base de dados do tomador do serviço que precisa desta informação para geração de outros dados (arquivos do Sped, por exemplo).

A função é capaz de ler um arquivo autorizado ou não. A opção de ler um arquivo XML não autorizado pode ser útil em situações onde o tomador do serviço envia o arquivo XML do CT-e junto com o XML da NF-e para agilizar a emissão.

Tipo de Retorno

tCTe

Pacote

A função CTeLerXML está defiinida no pacote CTeLerXML.pkg.

Sintaxe

Move (CTeLerXML({sArquivoXML},{bVerificaAutorizacao},{sCertificado}, ;
{sProxy},{sUsuario},{sSenha},{bExibeErro},(&{sMsgErro}))) to vtCTe

Onde:

  • {sArquivoXML} é o caminho completo do arquivo XML que será lido. 
  • {bVerificaAutorizacao} se for True, será feita uma consulta ao WS para verificar se o CT-e realmente está autorizado. Nesta versão, este parâmetro funcionará sempre como False, mesmo que seja passado True, pois a funcionalidade de consulta ainda não foi implementada, mas os parâmetros já foram criados para implementação futura e se o desenvolvedor já usar True, quando a funcionalidade for implementada o desenvolvedor não terá de alterar seu programa.
  • {sCertificado} é a string que representa o certificado digital que será usado na transmissão dos dados. Se não for informado, uma tela será exibida para o usuário escolher um dos certificados instalados.
  • {sProxy} é usado para informar ’http://proxyserver:port’ quando existir uso de proxy no ambiente. Verificar com o cliente qual é o endereço do servidor proxy e a porta https, a porta padrão do https é 443, assim teríamos algo do tipo ’http://192.168.15.1:443’. 
  • {sUsuario} é usado para informar o usuário para autenticação no proxy, se necessário. 
  • {sSenha} é usado informar a senha de autenticação no proxy, se necessário. 
  • {bExibeErro} é usado para indicar se a função deve exibir ou não os erros que ocorrerem na execução.
  • &{sMsgErro} é uma variável do tipo String que precisa ser passada por referência. Se ocorrer algum erro, a mensagem de erro será devolvida neste parâmetro que deve ser passado por referência.

Exemplo

tCTe vtCTe
:
Move (CTeLerXML(Trim(sArquivo),False,"","","","",False,(&sMsgErro))) ;
to vtCte
If (vtCte.bSucesso) Begin
: // Rotina de leitura e tratamento dos dados
End

Observações

  • A partir da versão 2017/02, a função CTeLerXML suporta a leitura de arquivos XML do modal aquaviário e ferroviário.
  • A partir da versão 2017/01, a função CTeLerXML suporta a leitura de arquivos XML da versão 3.00 do CT-e.
  • A partir da versão 2013/02, a função CTeLerXML suporta a leitura de arquivos XML da versão 2.00 do CT-e.
  • A partir da versão 2014/01, a função CTeLerXML suporta a leitura de arquivos XML do modal dutoviário e multimodal.

Não encontrou o que precisava, entre em contato conosco.