WS103A - Receber ocorrências dos documentos (foto como link)

Objetivo

Receber as informações dos status e ocorrências de documentos conforme forem apontados pelos motoristas. 

Uma vez consumido, uma ocorrência NÃO será consumida por este método novamente.

Características
  • As chamadas serão realizadas via "SOAP" sobre HTTP;
  • A origem do chamado do web service será o sistema do cliente;

Autenticação

  • As chamadas terão autenticação a nível de transporte (Basic Authentication);
  • Solicite o user / password ao administrador da conta.
POST http://soap.comprovei.com.br/WebServicePOD/server.php HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "urn:WebServiceComprovei#getDocumentsStatusV2"
Authorization: Basic {* user/password codificado em BASE64}
Content-Length: 117
Host: soap.comprovei.com.br
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)

Descrição do método
 Método   getDocumentsStatusV2
 Endereço de acesso http://soap.comprovei.com.br/WebServicePOD/server.php?wsdl
 Versão atual 1.0 (18/11/2016)

Histórico das versões
 Data Responsável Histórico
18/11/2016rmiuraFormalização da versão 1.0

Parâmetros de entrada
 Atributo Tipo Descrição
 qtdOcorrencias inteiro Quantidade máxima de ocorrências que serão retornadas nessa consulta.

Estrutura do arquivo .xml de retorno

 Atributo Tipo Obrigatório Descrição
 +Retorno               


    Erro string não Em caso de erro, apresenta a descrição do erro.
    Documentos   Indicador do início da estrutura dos documentos.
      +Item   Indicador do início da estrutura do documento.
         Tipo string sim Tipo do documento.
         Modelo string sim  Modelo fiscal do documento.
         Numero string  sim Número do documento.
         Serie string sim Série do documento.
         Emissao string sim Data de emissão no formato YYYY-MM-DD HH:MM:SS
         cnpj string sim cnpj do destinatário do documento.
         Chave string sim Chave de acesso do documento (Chave DANFE).
         Status string   sim  Status do documento no momento da consulta.
         +Ocorrências   Indicador do início da estrutura das ocorrências do documento. Um documento pode ter várias ocorrências.
            +Ocorrencia   Indicador do início da estrutura da ocorrência.
               Numero string sim Id da ocorrência. Este número é único e não se repete pois representa a chave do registro em nossa base de dados.
               Motivo string sim Código da ocorrência + descrição da ocorrência.
               Data string sim Data da ocorrência no formato YYYY-MM-DD HH:MM:SS
               +Assinatura   Indicador do início da estrutura da assinatura.
                  Extensao string sim informa tipo do arquivo imagem da assinatura.
                  Nome string não Informação adicionada na assinatura como nome, RG, etc de quem assinou.
                  Dado string sim link da Imagem da assinatura
               Anotacao string sim Texto digitado no campo anotação.
               +Foto   Indicador do início da estrutura da foto.
                  Extensao string sim informa tipo do arquivo imagem da foto.
                  Tipo string não *** desativado ****
                  Comentario  string não Legenda da foto, informada pelo motorista.
                  Dado string sim link da Imagem da foto
               +Itens   Indicador do início da estrutura de items do documento. Somente será retornado em caso de ocorrência finalizadora.
                 +Item   Indicador do início da estrutura do item.
                    Numero string sim Sequencia do item no documento (sempre inicia do numero 1).
                    Descricao string sim Descrição do item.
                    Barcode string sim Barcode do item.
                    Quantidade string sim Quantidade conferida do item no forma x / y, onde x = quantidade conferida e y = quantidade total do item.
                    Foto string não link da imagem da Foto do item
                    Motivo    string não Motivo da não entrega de um item caso o motorista faça a justificativa.
          +Danfes   Indicador do início da estrutura dos DANFEs.
             +Danfe   Indicador do início da estrutura do DANFE.
                 Numero string não Número da DANFE.
                 Serie inteiro não Série da DANFE.
                 Chave string não Chave da DANFE.
                 Emissao string sim Data de emissão da DANFE. Formato: YYYY-MM-DD HH:MM:SS
                 cnpj string sim CNPJ da DANFE.
                 Volume inteiro sim Volume coletado da DANFE.

Exemplo de retorno

<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="urn:WebServiceComprovei">
   <SOAP-ENV:Body>
      <ns1:getDocumentsStatusResponse xmlns:ns1="urn:WebServiceComprovei">
         <Retorno xsi:type="tns:Documentos">
            <Erro xsi:type="xsd:string"/>
            <Documentos xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Documento[4]">
               <item xsi:type="tns:Documento">
                  <Tipo xsi:type="xsd:string">NFS</Tipo>
                  <Modelo xsi:type="xsd:string">2</Modelo>
                  <Numero xsi:type="xsd:string">01</Numero>
                  <Serie xsi:type="xsd:string">1</Serie>
                  <Emissao xsi:type="xsd:string">2015-07-10 00:00:00</Emissao>
                  <cnpj xsi:type="xsd:string">35231360001</cnpj>
                  <Chave xsi:type="xsd:string">1</Chave>
                  <Status xsi:type="xsd:string">Entregue</Status>
                  <Ocorrencias xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Ocorrencia[2]">
                     <Ocorrencia xsi:type="tns:Ocorrencia">
                        <Numero xsi:type="xsd:string">1</Numero>
                        <Motivo xsi:type="xsd:string">054 - Entrega nao realizada pois a chegada foi fora da janela de recebimento pelo cliente</Motivo>
                        <Data xsi:type="xsd:string">2016-04-19 14:20:00</Data>
                        <Assinatura xsi:type="tns:Assinatura"/>
                        <Anotacao xsi:type="tns:Anotacao"/>
                        <Foto xsi:type="tns:Foto"/>
                     </Ocorrencia>
                     <Ocorrencia xsi:type="tns:Ocorrencia">
                        <Numero xsi:type="xsd:string">2</Numero>
                        <Motivo xsi:type="xsd:string">0 - Entrega Normal</Motivo>
                        <Data xsi:nil="true" xsi:type="xsd:string"/>
                        <Assinatura xsi:type="tns:Assinatura"/>
                        <Anotacao xsi:type="tns:Anotacao"/>
                        <Foto xsi:type="tns:Foto"/>
                        <Itens xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Item[1]">
                           <Item xsi:type="tns:Item">
                              <Numero xsi:type="xsd:string">1</Numero>
                              <Descricao xsi:type="xsd:string">Produto 1</Descricao>
                              <Barcode xsi:type="xsd:string">9003579311295</Barcode>
                              <Quantidade xsi:type="xsd:string">0 / 3</Quantidade>
                              <Foto xsi:type="tns:Foto"/>
                              <Motivo xsi:type="xsd:string">057 - Falta de produto/volume</Motivo>
                           </Item>
                        </Itens>
                     </Ocorrencia>
                  </Ocorrencias>
                  <Danfes xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Danfe[2]">
                       <Danfe xsi:type="tns:Danfe">
                          <Numero xsi:type="xsd:string">10101010</Numero>
                          <Serie xsi:type="xsd:integer">2</Serie>
                          <Chave xsi:type="xsd:string">3514001615500700028557518898261</Chave>
                          <Emissao xsi:type="xsd:string">2016-07-14 00:00:00</Emissao>
                          <cnpj xsi:type="xsd:string">59221328000133</cnpj>
                          <Volume xsi:type="xsd:integer">1</Volume>
                       </Danfe>
                       <Danfe xsi:type="tns:Danfe">
                          <Numero xsi:type="xsd:string">10101011</Numero>
                          <Serie xsi:type="xsd:integer">3</Serie>
                          <Chave xsi:type="xsd:string">3514001615500700028557518898269</Chave>
                          <Emissao xsi:type="xsd:string">2016-07-14 00:00:00</Emissao>
                          <cnpj xsi:type="xsd:string">59221328000132</cnpj>
                          <Volume xsi:type="xsd:integer">6</Volume>
                       </Danfe>
                  </Danfes>
               </item>
               <item xsi:type="tns:Documento">
                  <Tipo xsi:type="xsd:string">NFS</Tipo>
                  <Modelo xsi:type="xsd:string">2</Modelo>
                  <Numero xsi:type="xsd:string">02</Numero>
                  <Serie xsi:type="xsd:string">1</Serie>
                  <Emissao xsi:type="xsd:string">2015-07-11 00:00:00</Emissao>
                  <cnpj xsi:type="xsd:string">35231360002</cnpj>
                  <Chave xsi:type="xsd:string">2</Chave>
                  <Status xsi:type="xsd:string">Divergência</Status>
                  <Ocorrencias xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Ocorrencia[1]">
                     <Ocorrencia xsi:type="tns:Ocorrencia">
                        <Numero xsi:type="xsd:string">3</Numero>
                        <Motivo xsi:type="xsd:string">0 - Entrega Normal</Motivo>
                        <Data xsi:type="xsd:string">2016-04-19 11:40:00</Data>
                        <Assinatura xsi:type="tns:Assinatura"/>
                        <Anotacao xsi:type="tns:Anotacao"/>
                        <Foto xsi:type="tns:Foto"/>
                        <Itens xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Item[1]">
                           <Item xsi:type="tns:Item">
                              <Numero xsi:type="xsd:string">1</Numero>
                              <Descricao xsi:type="xsd:string">Produto 1</Descricao>
                              <Barcode xsi:type="xsd:string">9003579311295</Barcode>
                              <Quantidade xsi:type="xsd:string">3 / 3</Quantidade>
                              <Foto xsi:type="tns:Foto"/>
                           </Item>
                        </Itens>
                     </Ocorrencia>
                  </Ocorrencias>
               </item>
               <item xsi:type="tns:Documento">
                  <Tipo xsi:type="xsd:string">NFS</Tipo>
                  <Modelo xsi:type="xsd:string">2</Modelo>
                  <Numero xsi:type="xsd:string">03</Numero>
                  <Serie xsi:type="xsd:string">1</Serie>
                  <Emissao xsi:type="xsd:string">2015-07-12 00:00:00</Emissao>
                  <cnpj xsi:type="xsd:string">35231360003</cnpj>
                  <Chave xsi:type="xsd:string">3</Chave>
                  <Status xsi:type="xsd:string">Divergência</Status>
                  <Ocorrencias xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Ocorrencia[1]">
                     <Ocorrencia xsi:type="tns:Ocorrencia">
                        <Numero xsi:type="xsd:string">4</Numero>
                        <Motivo xsi:type="xsd:string">0 - Entrega Normal</Motivo>
                        <Data xsi:type="xsd:string">2016-04-20 10:25:00</Data>
                        <Assinatura xsi:type="tns:Assinatura"/>
                        <Anotacao xsi:type="tns:Anotacao"/>
                        <Foto xsi:type="tns:Foto"/>
                        <Itens xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Item[1]">
                           <Item xsi:type="tns:Item">
                              <Numero xsi:type="xsd:string">1</Numero>
                              <Descricao xsi:type="xsd:string">Produto 1</Descricao>
                              <Barcode xsi:type="xsd:string">9003579311295</Barcode>
                              <Quantidade xsi:type="xsd:string">0 / 3</Quantidade>
                              <Foto xsi:type="tns:Foto"/>
                           </Item>
                        </Itens>
                     </Ocorrencia>
                  </Ocorrencias>
               </item>
               <item xsi:type="tns:Documento">
                  <Tipo xsi:type="xsd:string">NFS</Tipo>
                  <Modelo xsi:type="xsd:string">2</Modelo>
                  <Numero xsi:type="xsd:string">04</Numero>
                  <Serie xsi:type="xsd:string">1</Serie>
                  <Emissao xsi:type="xsd:string">2015-07-13 00:00:00</Emissao>
                  <cnpj xsi:type="xsd:string">35231360004</cnpj>
                  <Chave xsi:type="xsd:string">4</Chave>
                  <Status xsi:type="xsd:string">Divergência</Status>
                  <Ocorrencias xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Ocorrencia[1]">
                     <Ocorrencia xsi:type="tns:Ocorrencia">
                        <Numero xsi:type="xsd:string">5</Numero>
                        <Motivo xsi:type="xsd:string">0 - Entrega Normal</Motivo>
                        <Data xsi:type="xsd:string">2016-04-20 10:30:00</Data>
                        <Assinatura xsi:type="tns:Assinatura"/>
                        <Anotacao xsi:type="tns:Anotacao"/>
                        <Foto xsi:type="tns:Foto"/>
                        <Itens xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Item[1]">
                           <Item xsi:type="tns:Item">
                              <Numero xsi:type="xsd:string">1</Numero>
                              <Descricao xsi:type="xsd:string">Produto 1</Descricao>
                              <Barcode xsi:type="xsd:string">9003579311295</Barcode>
                              <Quantidade xsi:type="xsd:string">0 / 3</Quantidade>
                              <Foto xsi:type="tns:Foto"/>
                           </Item>
                        </Itens>
                     </Ocorrencia>
                  </Ocorrencias>
               </item>
            </Documentos>
         </Retorno>
      </ns1:getDocumentsStatusResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>