Mudanças entre as edições de "Manuais:DANFEView/IntegracaoERP/XMLRequisicao"

De unimake
Ir para: navegação, pesquisa
 
(18 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
 
__NOTITLE__
 
__NOTITLE__
= XML de requisição =
+
= O XML de requisição =
  
 
O envio de requisição de informações ao DANFE View se dá através de um arquivo XML que deve ser gerado na pasta tmp\integracao.  
 
O envio de requisição de informações ao DANFE View se dá através de um arquivo XML que deve ser gerado na pasta tmp\integracao.  
 +
 
Aconselha-se que cada arquivo de requisição tenha sempre um nome exclusivo para evitar confusões entre requisições e respostas antigas, bem como confusão entre requisições simultâneas nas diversas estações da rede.  
 
Aconselha-se que cada arquivo de requisição tenha sempre um nome exclusivo para evitar confusões entre requisições e respostas antigas, bem como confusão entre requisições simultâneas nas diversas estações da rede.  
 +
 
Por exemplo, pode-se incluir a data e a hora da requisição no nome do XML, ou algum número randômico.  
 
Por exemplo, pode-se incluir a data e a hora da requisição no nome do XML, ou algum número randômico.  
 +
 
O desenvolvedor tem toda a liberdade para criar os nomes de acordo com os recursos disponíveis em sua linguagem de programação.
 
O desenvolvedor tem toda a liberdade para criar os nomes de acordo com os recursos disponíveis em sua linguagem de programação.
  
Após ser lido o arquivo XML da requisição é automaticamente removido pelo DANFE View, e um arquivo de resposta gerado na pasta tmp\integracao\res, com o mesmo nome do XML de requisição, apenas acrescentando o prefixo "ret-" ao seu nome.
+
Após ser lido, o arquivo XML da requisição é automaticamente removido pelo DANFE View, e um arquivo de resposta gerado na pasta tmp\integracao\res, com o mesmo nome do XML de requisição, apenas acrescentando o prefixo "ret-" ao seu nome.
  
 
::Exemplo:  
 
::Exemplo:  
Linha 13: Linha 16:
 
:::O XML de resposta será: C:\DANFEView\tmp\integracao\res\ret-consulta-20191020-13h00m00s.xml
 
:::O XML de resposta será: C:\DANFEView\tmp\integracao\res\ret-consulta-20191020-13h00m00s.xml
  
=== Formato do XML de requisição ===
+
== Formato do XML de requisição ==
Há três grupos de TAGS no XML de requisição: "parametros", "filtros" e "filtros_avancados", onde cada qual deve conter as tags respectivas com os atributos "campo" e "valor".
 
 
 
 
<pre>
 
<pre>
 
<?xml version="1.0" encoding="ISO-8859-1" ?>
 
<?xml version="1.0" encoding="ISO-8859-1" ?>
Linha 31: Linha 32:
 
</pre>
 
</pre>
  
* <parametros> - Parâmetros adicionais que informam ao DANFE View que informações ele deve extrair da base de dados.
+
O atributo "encoding" pode conter "ISO-8859-1" (default) ou "UTF-8". Ele indica qual o conjunto de caracteres foi usado na geração do XML de requisição. A resposta será gerada utilizando-se do mesmo conjunto.
* <filtros> - Filtros simples para a pesquisa dos documentos. Equivalem aos filtros presentes na tela de pesquisa do DANFE View.
+
 
* <filtros_avancados> - Filtros avançados para a pesquisa dos documentos. Equivalem aos filtros avançados na tela de pesquisa do DANFE View.  
+
Há três grupos de TAGS no corpo do XML de requisição: "parametros", "filtros" e "filtros_avancados", onde cada qual pode conter múltiplas tags "parametro", "filtro" e "filtro" respectivamente, com os atributos "campo" e "valor".
 +
 
 +
Nenhum dos grupos de TAGS é obrigatório. Caso nenhum valor seja definido nesses grupos o DANFE View retornará todos os documento memorizados que tenham sido emitidos nos últimos 7 dias sem aplicar nenhum filtro, não extrairá os arquivos XML da base de dados e não gerará os PDF´s dos documentos.
 +
 
 +
Um XML de requisição pode conter os três grupos de TAGS.
  
 +
== Significado dos grupos de TAGs ==
 +
 +
* <parametros> - Parâmetros adicionais que informam ao DANFE View quais informações ele deve extrair da base de dados. ([[Manuais:DANFEView/IntegracaoERP/XMLRequisicao/Parametros|Lista de Parâmetros]])
 +
* <filtros> - Filtros simples para a pesquisa dos documentos. Equivalem aos filtros presentes na tela de pesquisa do DANFE View. ([[Manuais:DANFEView/IntegracaoERP/XMLRequisicao/Filtros|Lista de Filtros]])
 +
* <filtros_avancados> - Filtros avançados para a pesquisa dos documentos. Equivalem aos filtros avançados na tela de pesquisa do DANFE View. ([[Manuais:DANFEView/IntegracaoERP/XMLRequisicao/FiltrosAvancados|Lista de Filtros avançados]])
 +
 +
== Múltiplas pesquisas ==
 +
 +
É possível efetuar múltiplas pesquisas em uma única requisição, com parâmetros, filtros e/ou filtros avançados diferentes. Para tanto basta encapsular a requisição em um grupo "<MultiReq>" e inserir quantas requisições necessitar.
 +
 +
Nesse caso, o sistema atenderá a todas elas de uma só vez, bem como dará uma só resposta com os dados de todas as requisições.
 +
 +
<pre>
 +
<?xml version="1.0" encoding="ISO-8859-1" ?>
 +
<MultiReq>
 +
  <requisicao>
 +
      <parametros>
 +
        ...
 +
      </parametros>
 +
      <filtros>
 +
        ...
 +
      </filtros>
 +
      <filtros_avancados>
 +
        ...
 +
      </filtros_avancados>
 +
  </requisicao>
 +
  <requisicao>
 +
      <parametros>
 +
        ...
 +
      </parametros>
 +
      <filtros>
 +
        ...
 +
      </filtros>
 +
  </requisicao>
 +
  <requisicao>
 +
      <parametros>
 +
        ...
 +
      </parametros>
 +
      <filtros_avancados>
 +
        ...
 +
      </filtros_avancados>
 +
  </requisicao>
 +
</MultiReq>
 +
</pre>
  
 
== Veja também ==  
 
== Veja também ==  
* [[Manuais:DANFEView/IntegracaoERP/XMLRequisicao/Parametros|Parâmetros]]
+
* [[Manuais:DANFEView/IntegracaoERP/XMLRequisicao/Parametros|Lista de Parâmetros]]
* [[Manuais:DANFEView/IntegracaoERP/XMLRequisicao/Filtros|Filtros]]
+
* [[Manuais:DANFEView/IntegracaoERP/XMLRequisicao/Filtros|Lista de Filtros]]
* [[Manuais:DANFEView/IntegracaoERP/XMLRequisicao/Filtros|Filtros avançados]]
+
* [[Manuais:DANFEView/IntegracaoERP/XMLRequisicao/FiltrosAvancados|Lista de Filtros avançados]]
 
* [[Manuais:DANFEView/IntegracaoERP/XMLResposta|O XML de resposta]]
 
* [[Manuais:DANFEView/IntegracaoERP/XMLResposta|O XML de resposta]]
 +
* [[Manuais:DANFEView/IntegracaoERP/XMLStatus|O XML de status da consulta]]

Edição atual tal como às 11h36min de 2 de fevereiro de 2022

O XML de requisição

O envio de requisição de informações ao DANFE View se dá através de um arquivo XML que deve ser gerado na pasta tmp\integracao.

Aconselha-se que cada arquivo de requisição tenha sempre um nome exclusivo para evitar confusões entre requisições e respostas antigas, bem como confusão entre requisições simultâneas nas diversas estações da rede.

Por exemplo, pode-se incluir a data e a hora da requisição no nome do XML, ou algum número randômico.

O desenvolvedor tem toda a liberdade para criar os nomes de acordo com os recursos disponíveis em sua linguagem de programação.

Após ser lido, o arquivo XML da requisição é automaticamente removido pelo DANFE View, e um arquivo de resposta gerado na pasta tmp\integracao\res, com o mesmo nome do XML de requisição, apenas acrescentando o prefixo "ret-" ao seu nome.

Exemplo:
Se o XML de requisição for: C:\DANFEView\tmp\integracao\consulta-20191020-13h00m00s.xml
O XML de resposta será: C:\DANFEView\tmp\integracao\res\ret-consulta-20191020-13h00m00s.xml

Formato do XML de requisição

<?xml version="1.0" encoding="ISO-8859-1" ?>
<requisicao>
   <parametros>
      <parametro campo="xxxxx" valor="yyyyyy" />
   </parametros>
   <filtros>
      <filtro campo="xxxxx" valor="yyyyyy" />
   </filtros>
   <filtros_avancados>
      <filtro campo="xxxxx" valor="yyyyyy" />
   </filtros_avancados>
</requisicao>

O atributo "encoding" pode conter "ISO-8859-1" (default) ou "UTF-8". Ele indica qual o conjunto de caracteres foi usado na geração do XML de requisição. A resposta será gerada utilizando-se do mesmo conjunto.

Há três grupos de TAGS no corpo do XML de requisição: "parametros", "filtros" e "filtros_avancados", onde cada qual pode conter múltiplas tags "parametro", "filtro" e "filtro" respectivamente, com os atributos "campo" e "valor".

Nenhum dos grupos de TAGS é obrigatório. Caso nenhum valor seja definido nesses grupos o DANFE View retornará todos os documento memorizados que tenham sido emitidos nos últimos 7 dias sem aplicar nenhum filtro, não extrairá os arquivos XML da base de dados e não gerará os PDF´s dos documentos.

Um XML de requisição pode conter os três grupos de TAGS.

Significado dos grupos de TAGs

  • <parametros> - Parâmetros adicionais que informam ao DANFE View quais informações ele deve extrair da base de dados. (Lista de Parâmetros)
  • <filtros> - Filtros simples para a pesquisa dos documentos. Equivalem aos filtros presentes na tela de pesquisa do DANFE View. (Lista de Filtros)
  • <filtros_avancados> - Filtros avançados para a pesquisa dos documentos. Equivalem aos filtros avançados na tela de pesquisa do DANFE View. (Lista de Filtros avançados)

Múltiplas pesquisas

É possível efetuar múltiplas pesquisas em uma única requisição, com parâmetros, filtros e/ou filtros avançados diferentes. Para tanto basta encapsular a requisição em um grupo "<MultiReq>" e inserir quantas requisições necessitar.

Nesse caso, o sistema atenderá a todas elas de uma só vez, bem como dará uma só resposta com os dados de todas as requisições.

<?xml version="1.0" encoding="ISO-8859-1" ?>
<MultiReq>
   <requisicao>
      <parametros>
         ...
      </parametros>
      <filtros>
         ...
      </filtros>
      <filtros_avancados>
         ...
      </filtros_avancados>
   </requisicao>
   <requisicao>
      <parametros>
         ...
      </parametros>
      <filtros>
         ...
      </filtros>
   </requisicao>
   <requisicao>
      <parametros>
         ...
      </parametros>
      <filtros_avancados>
         ...
      </filtros_avancados>
   </requisicao>
</MultiReq>

Veja também