Mudanças entre as edições de "Manuais:DANFEView/IntegracaoERP/XMLRequisicao"
(Criou página com '__NOTITLE__ = XML de requisição = A requisição se dá através de um arquivo XML que deve ser gerado na pasta tmp\integracao\req. Aconselha-se que cada arquivo de requisi...') |
|||
(23 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. | |
− | Após | + | 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: | ::Exemplo: | ||
− | :::XML de requisição: C:\DANFEView\tmp\integracao\ | + | :::Se o XML de requisição for: C:\DANFEView\tmp\integracao\consulta-20191020-13h00m00s.xml |
− | :::XML de resposta: C:\DANFEView\tmp\integracao\res\ret- | + | :::O XML de resposta será: C:\DANFEView\tmp\integracao\res\ret-consulta-20191020-13h00m00s.xml |
− | |||
− | |||
+ | == Formato do XML de requisição == | ||
<pre> | <pre> | ||
<?xml version="1.0" encoding="ISO-8859-1" ?> | <?xml version="1.0" encoding="ISO-8859-1" ?> | ||
<requisicao> | <requisicao> | ||
<parametros> | <parametros> | ||
− | < | + | <parametro campo="xxxxx" valor="yyyyyy" /> |
− | |||
</parametros> | </parametros> | ||
<filtros> | <filtros> | ||
Linha 28: | Linha 32: | ||
</pre> | </pre> | ||
+ | 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. ([[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|Lista de Parâmetros]] | ||
+ | * [[Manuais:DANFEView/IntegracaoERP/XMLRequisicao/Filtros|Lista de Filtros]] | ||
+ | * [[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
Índice
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
- Exemplo:
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>