Tempo aproximado para leitura: 00:02:00 min
Dúvida
Como incluir anexo em solicitação via Webservice sem movimentar a solicitação.
Ambiente
TOTVS Fluig Plataforma - Configurações Técnicas - Todas as versões
Solução
Reutilizando os conceitos desta documentação abaixo, é possível salvar um novo anexo na solicitação sem movimentá-la.
Fluig - Plataforma - BPM - Excluir anexo de processo via Webservice
O método que será utilizado é o saveAndSendTask.
Não há um método próprio para essa funcionalidade, mas passando os parâmetros corretos, este irá funcionar.
O wsdl que será utilizado é o ECMWorkflowEngineService:
<domínio do fluig>/webdesk/ECMWorkflowEngineService?wsdl
Segue a documentação dos webservices para alguma dúvida:
Documentação dos Web Services
Segue um exemplo do XML:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.workflow.ecm.technology.totvs.com/">
<soapenv:Header/>
<soapenv:Body>
<ws:saveAndSendTask>
<username>LOGIN USUÁRIO</username>
<password>SENHA</password>
<companyId>ID DA EMPRESA</companyId>
<processInstanceId>NÚMERO DA SOLICITAÇÃO</processInstanceId>
<choosedState>NÚMERO DA ATIVIDADE</choosedState>
<colleagueIds>
</colleagueIds>
<comments>COMENTÁRIO</comments>
<userId>LOGIN USUÁRIO</userId>
<completeTask>FALSE PARA NÃO MOVIMENTAR / TRUE PARA MOVIMENTAR</completeTask>
<attachments>
<item>
<attachmentSequence>POSIÇÃO DO ANEXO - INICIA EM 0</attachmentSequence>
<attachments>
<attach>TRUE SE HOUVER ANEXO</attach>
<fileName>NOME DO ARQUIVO COM EXTENSÃO.PDF</fileName>
</attachments>
<description>DESCRIÇÃO</description>
</item>
</attachments>
<cardData></cardData>
<appointment></appointment>
<managerMode>TRUE PARA MOVIMENTAR COM GESTOR / FALSE PARA USUÁRIO COMUM</managerMode>
<threadSequence></threadSequence>
</ws:saveAndSendTask>
</soapenv:Body>
</soapenv:Envelope>
O exemplo de movimentação com anexo foi criado considerando do uso da pasta de upload do volume. Sendo assim, o arquivo para transferência deverá estar contido na pasta de upload do usuário. Considerando o exemplo acima, o arquivo "NOME DO ARQUIVO COM EXTENSÃO.PDF", deverá estar contido na pasta do usuário, que fica localizada dentro do diretório upload no volume do fluig.
Caso não queira utilizar este tipo de transferência para anexo e sim a transferência via Bytes, devem ser adicionadas à estrutura, abaixo da tag <fileName>, as seguintes tags: <fileSize> = para indicar o tamanho do arquivo <filecontent> = que deverá conter os bytes referentes ao arquivo.
Adicionando estas tags será ignorada a busca no diretório de upload do usuário, sendo considerado o arquivo contido na tag <filecontent>.
Importante
Após a inclusão da propriedade os serviços devem ser reiniciados.
A partir da versão Voyager 2.0, as configurações foram migradas dos arquivos domain.xml e host.xml para o standalone.xml. Este artigo se refere às versões anteriores ao Voyager 2.0.
Para mais informações sobre a migração e as diferenças entre as versões, consulte nossa documentação Atualização Voyager (2.0) - O arquivo de configurações da plataforma mudou!
0 Comentários