Como realizar o envio de arquivo(s) para documento existente
Visão geral
Para realizar o envio de um arquivo para um documento existente no Zeev docs utilizando o recurso de integração, é necessário a criação de um XML semi-estruturado contendo as instruções de envio do(s) arquivo(s) para o documento.
Criação de protocolo através do XML semiestruturado, conforme modelo de envio de arquivos para documento existente:
Serviço Web: https://<servidor do Zeev docs>/services/silentLogin.svc
Método: GetProtocolToUploadFile(string xml), retorno string.
Submeter protocolo obtido no passo anterior com o nome do arquivo e seu conteúdo para que o arquivo seja gravado no servidor (repita esse passo para cada arquivo que será enviado):
Serviço Web: https://<servidor do Zeev docs>/WebScan/Services/Upload.asmx
Método: UploadFile(string protocol, string fileName, byte[] fileContent), retorno boolean.
Importante: O FileName no metodo UploadFile só aceita letras sem acentuação, dígitos, hífen, sublinhado, ponto e espaço. Qualquer caractere fora desse conjunto acentos, cedilha, &, /, etc. não são aceitos.
Após o envio de todos os arquivos, o protocolo deve ser submetido ao Zeev docs para que o(s) arquivo(s) enviado(s) seja(m) incluído(s) no documento desejado:
Serviço Web: https://<servidor do Zeev docs>/services/silentLogin.svc
Método: FinishUpload(string protocol), retorno string.
Em caso de sucesso ao adicionar todos os arquivos no documento: <success></success>
Em caso de algum arquivo ter sido rejeitado devido às regras de Script Global: <rejectedFiles><file>{Nome do arquivo}</file></rejectedFiles>
Importante: por padrão, ao configurar a regra de negócio de Script Global com tais restrições e utilizar essa API, o documento é encerrado normalmente inserindo os arquivos que estão dentro da regra e deixando de fora do documento os outros arquivos enquadrados na regra. Ou seja, ele não barra o envio do arquivo para o servidor, mas barra o arquivo na hora de inserir na lista de arquivos do documento no retorno da terceira etapa de integração, depois retorna quais são os arquivos rejeitados no XML através da tag chamada "rejectedFiles".
Caso seja necessário reenviar os arquivos, é preciso limpar os arquivos enviados anteriormente; para isso, deve-se submeter o protocolo ao Zeev docs:
Serviço Web: https://<servidor do Zeev docs>/services/silentLogin.svc
Método: RemoveFilesFromFolderProtocol(string protocol), sem retorno.
Estrutura modelo do XML para enviar arquivos para um documento existente
Confira abaixo o modelo de estrutura XML para enviar arquivos para um documento existente:
<eContent>
Sim
Raiz.
<header>
Sim
Cabeçalho de identificação pelo Zeev docs.
<module name="SILENTLOGINUPLOAD" />
Sim
Informações do módulo de entrada. Atributo(s): name (obrigatório) - nome do módulo.
<application code=" " />
Sim
Identificação da aplicação. Atributo(s): code (obrigatório) - código da aplicação.
<userToken />
Sim
Token de identificação do usuário para SilentLogin. Disponibilizada interface para geração do token através de web service.
<identification />
Não
Nó de livre preenchimento, podendo ser utilizado para inclusão de identificação do sistema que gerou o XML de SilentLogin.
<adHocUser />
Não
Usuário que será gravado o log de acesso e ação.
</ header>
-
-
<structure>
-
-
<document id=" " fileAmount=" " operation=" " />
Sim
Dados do documento a ter arquivos adicionados. Atributo(s): id (obrigatório) - identificação do documento. fileAmount (obrigatório) - total de arquivos a ser enviado para o documento. operation (obrigatório) - operação que será realizada. Ex.: ADDBEFORE, ADDAFTER, REPLACE e NEWVERSION.
</structure>
-
-
</eContent >
-
-
Efetue o download do modelo de XML:
O retorno do método será de sucesso ou falha.