Histórico da Página
...
Índice | ||||||
---|---|---|---|---|---|---|
|
Objetivo
O objetivo deste documento é descrever a utilização de Webservices, mostrar e explicar todos seus métodos, disponibilizar exemplos de classes que utilizam esses Webservices e mostrar exemplos de geração de stubs que são necessários para que os clients possam se comunicar com o serviçoAlém de algumas APIs REST, o fluig disponibiliza também uma série de Web Services SOAP (Simple Object Access Protocol). Neste documento mostraremos como habilitar ou desabilitar esses serviços, como gerar os stubs para utilizá-los em softwares terceiros e como utilizá-los dentro do próprio fluig.
Pré-requisitos
Para que se tenha uma compreensão completa destas informações, alguns conhecimentos são considerados pré-requisitos, entre eles:
- Visão geral sobre o fluig
- Visão geral sobre integração de sistemas
- WebServices
...
title | Dica! |
---|
...
- Web Services
Antes de começar
Os Web Services SOAP, apesar de continuarem funcionais, não recebem mais novos serviços nem alterações nos parâmetros de entrada. Caso haja, opte por usar a função correspondente nas APIs REST.
Como acessar
Para Para acessar os webservices do TOTVS Fluig Plataforma, é preciso acessar o URL URL https://<endereco_fluig:porta>/webdesk/services.
Criar Stubs
Os stubs são necessários para que os clients que utilizam os métodos dos Webservices possam se comunicar com o serviço.
Para criar um stub é necessário que o serviço do fluig esteja inicializado. Depois de iniciar o serviço, deve-se abrir o Prompt de comando e utilizar a sintaxe: wsimport -d <output_directory> <wsdl_url>, onde output_directory é o diretório onde o stub será criado e wsdl_url é a url de acesso ao serviço. Após isso, basta apertar Enter e o resultado aparecerá conforme mostra a figura 1.
Nota | ||
---|---|---|
| ||
Foi criado um facilitador para gerar todos os stubs, basta baixar o documento Cliente Web Service.zip. Basta descompactá-lo e executar o arquivo "fluig-ws.sh", informe o nome e porta do servidor. Após executar, será gerado o "fluig-ws-client.jar". Importe o .jar para acesso ao serviço. Aqui você encontra um exemplo (ws-soap e webservice) prático de utilização em artefatos publicados no fluig. |
Figura 1: Exemplo de criação de stub
...
visible | true |
---|---|
title | Lista de webservices |
No Quadro 1 (abaixo) são listados os comandos necessários para a criação de stubs de cada serviço disponível no fluig.
...
Webservices (WSDL)
...
Comando
...
ECMAttributionMecanismService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMAttributionMecanismService?wsdl
...
ECMBusinessPeriodService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMBusinessPeriodService?wsdl
...
ECMCardIndexService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMCardIndexService?wsdl
...
ECMCardService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMCardService?wsdl
...
ECMColleagueGroupService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMColleagueGroupService?wsdl
...
ECMColleagueReplacementService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMColleagueReplacementService?wsdl
...
ECMColleagueService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMColleagueService?wsdl
...
ECMCompanyService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMCompanyService?wsdl
...
ECMCustomFieldsService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMCustomFieldsService?wsdl
...
ECMDashBoardService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMDashBoardService?wsdl
...
ECMDataServiceService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMDataServiceService?wsdl
...
ECMDatasetService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMDatasetService?wsdl
...
ECMDocumentService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMDocumentService?wsdl
...
ECMFavoritesService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMFavoritesService?wsdl
...
ECMFolderService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMFolderService?wsdl
...
ECMGlobalParamService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMGlobalParamService?wsdl
...
ECMGroupService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMGroupService?wsdl
...
ECMOutstandingService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMOutstandingService?wsdl
...
ECMReportService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMReportService?wsdl
...
ECMSearchDocumentService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMSearchDocumentService?wsdl
...
ECMSignalService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMSignalService?wsdl
...
ECMTokenService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMTokenService?wsdl
...
ECMWorkflowEngineService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMWorkflowEngineService?wsdl
...
ECMWorkflowRoleService
...
wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMWorkflowRoleService?wsdl
Quadro 1: Comandos para criação de stubs.
Considerações Métodos de Update
Para os métodos de update que recebem objetos complexos é obrigatório passar todos os campos do objeto alterado. Os campos não informados serão substituídos por branco, nulo ou zero, dependendo do seu tipo.
Para evitar esta situação, sugerimos sempre utilizar os métodos get para recuperar o objeto, efetuar as alterações nos campos necessários e enviá-lo para o método update.
Nota |
---|
|
ECMAttributionMecanismService
Webservice responsável por realizar operações referentes aos mecanismos de atribuição cadastrados no fluig. Pode ser utilizado para pesquisar os mecanismos de atribuição de uma determinada empresa.
Métodos
...
visible | true |
---|---|
title | No quadro 2, é mostrado todos os métodos disponíveis na classe AttributionMecanismService. |
...
getAttributionMecanism
Retorna os mecanismos de atribuição da empresa.
Método:
getAttributionMecanism(String user, String password, int companyId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: AttributionMecanismDto[].
Quadro 2: Métodos da AttributionMecanismService.
Exemplo de utilização
Faça o download da classe ECMAttributionMecanismService.java, esta exemplifica a utilização dos principais métodos da classe AttributionMecanismService.
ECMBusinessPeriodService
Webservice responsável por realizar operações referentes aos expedientes cadastrados no fluig. Pode ser utilizado para pesquisar os expedientes de uma determinada empresa.
Métodos
...
visible | true |
---|---|
title | No quadro 3, é mostrado todos os métodos disponíveis na classe BusinessPeriodService. |
...
Retorna os expedientes da empresa.
Método:
getBusinessPeriods(String user, String password, int companyId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: BusinessPeriodDto[].
Quadro 3: Métodos da BusinessPeriodService.
Exemplo de utilização
Faça o download da classe ECMBusinessPeriodService.java, esta exemplifica a utilização dos principais métodos da classe BusinessPeriodService.
ECMCardIndexService
Webservice responsável por realizar operações referentes aos formulários cadastrados no fluig.
Métodos
...
visible | true |
---|---|
title | No quadro 4, é mostrado todos os métodos disponíveis na classe CardIndexService. |
...
createSimpleCardIndex
Criação simples de um formulário.
Método:
createSimpleCardIndex (String user, String password, int companyId, int parentDocumentId, String publisherId, String documentDescription, String cardDescription, AttachmentArray attachments, CardEventDtoArray customEvents)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- parentDocumentId: número do formulário.
- publisherId: código do autor.
- documentDescription: descrição.
- cardDescription: nome.
- attachments: arquivo anexo.
- customEvents: eventos.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
createSimpleCardIndexWithDataset
Criação simples de um formulário com datasets.
Método:
createSimpleCardIndexWithDataset (String user, String password, int companyId, int parentDocumentId, String publisherId, String documentDescription, String cardDescription, String datasetName, AttachmentArray attachments, CardEventDtoArray customEvents)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- parentDocumentId: número do formulário.
- publisherId: código do autor.
- documentDescription: descrição.
- cardDescription: nome.
- datasetName: nome do dataset.
- attachments: arquivo anexo.
- customEvents: eventos.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
createSimpleCardIndexWithDatasetPersisteType
Criação simples de um formulário com datasets determinando o tipo da persistência (Formulário ou Lista).
createSimpleCardIndexWithDatasetPersisteType (String user, String password, int companyId, int parentDocumentId, String publisherId, String documentDescription, String cardDescription, String datasetName, AttachmentArray attachments, CardEventDtoArray customEvents, Integer persistenceType)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa;
- parentDocumentId: número do formulário.
- publisherId: código do autor.
- documentDescription: descrição.
- cardDescription: nome.
- datasetName: nome do dataset.
- attachments: arquivo anexo.
- customEvents: eventos.
- persistenceType: tipo da persistência que será utilizada (0 = Formulário / 1 = Lista).
Retorno: WebServiceMessageArray .
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
getActiveCardIndex
Retorna o formulário ativo.
Método:
getActiveCardIndex (String user, String password, int companyId, int documentId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do formulário.
- colleagueId: número do usuário.
Retorno: DocumentDtoArray.
...
getAttachmentsList
Retorna a lista de anexos do formulário.
Método:
getAttachmentsList (String user, String password, int companyId, int documentId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do formulário.
Retorno: StringArray, com o nome dos anexos.
...
getCardIndexContent
Retorna o conteúdo de um formulário.
Método:
getCardIndexContent (String user, String password, int companyId, int documentId, String colleagueId, int version, String nomeArquivo)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do formulário.
- colleagueId : matrícula do usuário para a verificação de permissão nos formulários.
- version: número da versão do formulário.
- nomeArquivo: nome do arquivo anexo.
Retorno: Uma lista de byte[].
...
getCardIndexesWithoutApprover
Retorna os formulários sem aprovadores que o usuário tenha permissão.
Método:
getCardIndexesWithoutApprover(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId : matrícula do usuário para a verificação de permissão nos formulários.
Retorno: DocumentDto[].
...
getCustomizationEvents
Retorna os eventos do formulário.
Método:
getCustomizationEvents (String user, String password, int companyId, int documentId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do formulário.
Retorno: CardEventDtoArray.
...
getFormFields
Retorna os campos do formulário.
Método:
getFormFields(String user, String password, int companyId, int documentId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do formulário.
Retorno: Lista de String[] com o ID de cada campo do formulário.
...
updateSimpleCardIndex
Atualização simples do formulário.
Método:
updateSimpleCardIndex (String user, String password, int companyId, int documentId, String publisherId, String cardDescription, String descriptionField, AttachmentArray attachments, CardEventDtoArray customEvents)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do formulário.
- publisherId: código do autor.
- cardDescription: nome.
- descriptionField: descrição.
- attachments: arquivo anexo.
- customEvents: eventos.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateSimpleCardIndexWithDataset
Atualização simples do formulário com datasets.
Método:
updateSimpleCardIndexWithDataset (String user, String password, int companyId, int documentId, String publisherId, String cardDescription, String descriptionField, String datasetName, AttachmentArray attachments, CardEventDtoArray customEvents)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do formulário.
- publisherId: código do autor.
- cardDescription: nome.
- descriptionField: descrição.
- datasetName: nome do dataset.
- attachments: arquivo anexo.
- customEvents: eventos.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 4: Métodos da CardIndexService.
Exemplo de utilização
Faça o download da classe CardIndexServiceClient.java, esta exemplifica a utilização dos principais métodos da classe CardIndexService.
ECMCardService
Webservice responsável por realizar operações referentes a formulários no fluig. Pode ser utilizado para criar, alterar, excluir e pesquisar formulários, entre outros recursos.
Exemplos de utilização
Faça o download da classe CardServiceClient.java, esta exemplifica a utilização dos principais métodos da classe CardService, que identifica os parametros a serem passados no carddtos.
Para visualizar um exemplo de montagem do xml, clique em download.
Métodos
...
visible | true |
---|---|
title | No quadro 5, é mostrado todos os métodos disponíveis na classe CardService. |
...
create
Cria um registro de formulário.
Método:
create(int companyId, String user, String password, CardDto[] carddtos)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- carddtos: formulário que será criado.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
deleteCard
Exclui um formulário e envia para a lixeira.
Método:
deleteCard(int companyId, String user, String password, int cardId)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- cardId: número do formulário.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
getCardVersion
Retorna a versão de um formulário.
Método:
getCardVersion(int companyId, String user, String password, int nrDocumentId, int version, String colleagueId)
Método:
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- nrDocumentId: número do formulário.
- version: versão do formulário.
- colleagueId: matrícula do usuário.
Retorno: CardDto[], lista com ID do campo e seus valores.
...
updateCard
Altera os metadados de um formulário.
Método:
updateCard(int companyId, String user, String password, CardDto[] cardDtos, Attachment[] attachs, DocumentSecurityConfigDto[] docsecurity, ApproverDto[] docapprovers, RelatedDocumentDto[] reldocs)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- cardDtos: formulário que será alterado.
- attachs: anexos do formulário.
- docsecurity: segurança do formulário.
- docapprovers: aprovadores do formulário.
- reldocs: documentos relacionados do formulário.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateCardData
Altera os campos de um formulário.
Método:
updateCardData(int companyId, String user, String password, int cardId, CardFieldDto[] cardData)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- cardId: número do formulário.
- cardData: campos do formulário que serão alterados.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 5: Métodos da CardService.
ECMColleagueGroupService
Webservice responsável por realizar operações referentes aos grupos de usuários no fluig. Pode ser utilizado para relacionar um usuário a um grupo de usuários e serve também para alterar, excluir e pesquisar esses relacionamentos criados.
Métodos
...
visible | true |
---|---|
title | No quadro 6, é mostrado todos os métodos disponíveis na classe ColleagueGroupSevice. |
...
createColleagueGroup
Associa um usuário a um grupo.
Método:
createColleagueGroup(String username, String password, int companyId, ColleagueGroupDto[] grupo_colaborador)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa;
- grupo_colaborador: grupo que estará associado a um usuário.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
deleteColleagueGroup
Exclui um usuário de um grupo.
Método:
deleteColleagueGroup(String username, String password, int companyId, String groupId, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- groupId: código do grupo.
- colleagueId: matrícula do usuário.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
getAllColleagueGroups
Retorna todos os grupos que possuem usuários relacionados.
Método:
getAllColleagueGroups(String username, String password, int companyId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: ColleagueGroupDto[].
...
getColleagueGroup
Retorna somente um grupo que determinado usuário participa.
Método:
getColleagueGroup(String username, String password, int companyId, String groupId, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- groupId: código do grupo.
- colleagueId: matrícula do usuário.
Retorno: ColleagueGroupDto[].
Atributos de Retorno:
colleagueId
companyId
groupId
...
getColleagueGroupsByColleagueId
Retorna os grupos que um usuário participa.
Método:
getColleagueGroupsByColleagueId(String username, String password, int companyId, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: ColleagueGroupDto[].
Atributos de Retorno:
colleagueId
companyId
groupId
...
getColleagueGroupsByGroupId
Retorna os usuários que participam de um grupo de usuários.
Método:
getColleagueGroupsByGroupId(String username, String password, int companyId, String groupId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- groupId: código do grupo.
Retorno: ColleagueGroupDto[].
Atributos de Retorno:
colleagueId
companyId
groupId
...
updateColleagueGroup
...
O método updateColleagueGroup foi depreciado, portanto não é recomendada a sua utilização em desenvolvimentos sobre a plataforma.
Altera a associação de um usuário a um grupo.
Método:
updateColleagueGroup(String username, String password, int companyId, ColleagueGroupDto[] grupo_colaborador)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- grupo_colaborador: grupo de usuários que será alterado.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 6: Métodos da ColleagueGroupService.
Exemplo de utilização
Faça o download da classe ColleagueGroupServiceClient.java, esta exemplifica a utilização dos principais métodos da classe ColleagueGroupService.
ECMColleagueReplacementService
Webservice responsável por realizar operações referentes a usuários substitutos no fluig. Pode ser utilizado para criar, alterar, excluir e pesquisar usuários substitutos, entre outros recursos.
Métodos
...
visible | true |
---|---|
title | No quadro 7, é mostrado todos os métodos disponíveis na classe ColleagueReplacementService. |
...
createColleagueReplacement
Cria um substituto.
Método:
createColleagueReplacement (String username, String password, int companyId, ColleagueReplacementDto crDto)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- crDto: cadastro do substituto.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
deleteColleagueReplacement
Exclui o cadastro de um substituto.
Método:
deleteColleagueReplacement(String username, String password, int companyId, String colleagueId, String replacementId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário origem.
- replacementId: matrícula do usuário substituto.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
getColleagueReplacement
Retorna um substituto de um usuário.
Método:
getColleagueReplacement(String username, String password, int companyId, String colleagueId, String replacementId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário origem.
- replacementId: matrícula do usuário substituto.
Retorno: ColleagueReplacementDto.
...
getReplacementsOfUser
Retorna todos os substitutos de um usuário.
Método:
getReplacementsOfUser(String username, String password, int companyId, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário origem.
Retorno: ColleagueReplacementDto[].
...
getValidReplacedUsers
Retorna todos os usuário substituídos por um substituto válido.
Método:
getValidReplacedUsers(String username, String password, int companyId, String replacementId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa;
- replacementId: matrícula do usuário substituto.
Retorno: ColleagueReplacementDto[].
...
getValidReplacement
Retorna um substituto válido de um usuário.
Método:
getValidReplacement(String username, String password, int companyId, String colleagueId, String replacementId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário origem.
- replacementId: matrícula do usuário substituto.
Retorno: ColleagueReplacementDto.
...
getValidReplacementsOfUser
Retorna todos os substitutos válidos de um usuário.
Método:
getValidReplacementsOfUser(String username, String password, int companyId, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa;
- colleagueId: matrícula do usuário origem.
Retorno: ColleagueReplacementDto[].
...
updateColleagueReplacement
Altera o cadastro de um substituto.
Método:
updateColleagueReplacement (String username, String password, int companyId, ColleagueReplacementDto crDto)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- crDto: cadastro do usuário.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 7: Métodos da ColleagueReplacementService
Exemplo de utilização
Faça o download da classe ECMColleagueReplacementService.java, esta exemplifica a utilização dos principais métodos da classe ColleagueReplacementService.
ECMColleagueService
Webservice responsável por realizar operações referentes a usuários no fluig. Pode ser utilizado para criar, alterar, excluir e pesquisar usuários, entre outros recursos.
Nota | ||
---|---|---|
| ||
Os métodos createColleague, createColleaguewithDependencies, updateColleague e updateColleaguewithDependencies, em um dos seus parâmetros, recebe uma lista de ColleagueDto, nos objetos destas listas os valores para os campos de senha (password) devem ser criptografados com o algoritmo de hash MD5, exceto no caso de possuir o identity configurado, neste caso a senha deverá ser passada normalmente sem a criptografia. Utilizado o hash MD5 no e-mail contendo os dados do usuário criado, é regra de negócio o campo senha ser apresentado em branco. |
Métodos
...
visible | true |
---|---|
title | No quadro 8, é mostrado todos os métodos disponíveis na classe ColleagueService. |
...
createColleague
Cria um usuário.
Método:
createColleague(String username, String password, int companyId, ColleagueDto[] colleagues)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagues: usuários.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
createColleaguewithDependencies
Cria um usuário com grupos e papéis.
Método:
...
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagues: usuários.
- grupos: grupos.
- papeis: papéis.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
getColleague
Retorna um usuário.
Método:
getColleague(String username, String password, int companyId, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: ColleagueDto[].
...
getColleagueByLogin
Retorna o usuário a partir do login.
Método:
getColleagueByLogin(String username, String password)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
Retorno: ColleagueDto[].
...
getColleagues
Retorna todos os usuários ativos.
Método:
getColleagues(String username, String password, int companyId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: ColleagueDto[].
...
getColleaguesMail
Retorna um usuário utilizando um e-mail.
Método:
getColleaguesMail(String username, String password, int companyId, String mail)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- mail: e-mail do usuário.
Retorno: ColleagueDto[].
Estrutura de retorno com sucesso
...
getColleagueWithMap
Retorna uma mensagem informando se o usuário foi criado corretamente.
Método:
getColleagueWithMap(String colleagueXML, String username, String password)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- colleagueXML: lista normalizada de documentos.
Retorno: String.
...
getGroups
Retorna os grupos que o usuário participa.
Método:
getGroups(String username, String password, int companyId, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
...
getSimpleColleague
Retorna o usuário.
Método:
getSimpleColleague(String username, String password)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
Retorno: ColleagueDto[].
...
getSummaryColleagues
Retorna todos os usuários ativos.
Método:
getSummaryColleagues(int companyId)
Parâmetros:
- companyId: código da empresa.
Retorno: ColleagueDto[].
...
removeColleague
Desativa um usuário.
Método:
removeColleague(String username, String password, int companyId, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
Ativa um usuário.
Método:
activateColleague(String username, String password, int companyId, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateColleague
Altera um usuário.
Método:
updateColleague(String username, String password, int companyId, ColleagueDto[] colleagues)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagues: usuários.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateColleaguewithDependencies
Esse método altera um usuário com grupos e papéis, permite adicionar os papéis a um usuário.
Método:
...
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagues: usuários.
- grupos: grupos.
- papeis: papéis.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
validateColleagueLogin
Valida o acesso de um usuário no produto.
Método:
validateColleagueLogin(int companyId, String colleagueId, String password)
Parâmetros:
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- password: senha do usuário.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 8: Métodos da ColleagueService.
Exemplo de utilização
Faça o download da classe ColleagueServiceClient.java, esta exemplifica a utilização dos principais métodos da classe ColleagueService.
ECMCompanyService
Webservice responsável por realizar operações referentes à empresa no fluig. Pode ser utilizado para criar, alterar, excluir e pesquisar empresas, entre outros recursos.
Métodos
...
visible | true |
---|---|
title | No quadro 9, é mostrado todos os métodos disponíveis na classe CompanyService. |
...
createCompany
Cria uma empresa no fluig.
Método:
createCompany(String username, String password, String companyId, String description, String urlAccessName, String phisicalPath, String webdeskServer, String webPort)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- description: descrição da empresa.
- urlAccessName: URL de acesso.
- phisicalPath: caminho físico.
- webdeskServer: servidor.
- webPort: porta.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
getCompanies
Retorna todas as empresas cadastradas no fluig.
Método:
getCompanies(String username, String password, String companyId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: CompanyDto[].
...
getCompany
Retorna uma empresa cadastrada no fluig.
Método:
getCompany(int companyId)
Parâmetros:
- companyId: código da empresa.
Retorno: CompanyDto.
...
updateCompany
Altera uma empresa no fluig.
Método:
updateCompany(String username, String password, String companyId, String description, String urlAccessName, String phisicalPath, String webdeskServer, String webPort)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- description: descrição da empresa.
- urlAccessName: URL de acesso.
- phisicalPath: caminho físico.
- webdeskServer: servidor.
- webPort: porta.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 9: Métodos da CompanyService
Exemplo de utilização
Faça o download da classe CompanyServiceClient.java, esta exemplifica a utilização dos principais métodos da classe CompanyService.
ECMCustomFieldsService
Webservice responsável por interagir com os campos customizados do fluig. Pode ser utilizado para criar, alterar, excluir e pesquisar campos customizados, entre outros recursos.
Métodos
...
visible | true |
---|---|
title | No quadro 10, é mostrado todos os métodos disponíveis na classe CustomFieldsService. |
...
createCustomFields
Cria um campo customizado.
Método:
...
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- customFieldsDto: campo customizado que será criado.
Retorno: String, retorna OK caso os parâmetros da requisição estejam corretos.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
getAllCustomField
Retorna todos os campos customizados.
Método:
getAllCustomField(String user, String password, int companyId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: CustomFieldsDto.
...
getAllDocumentCustomField
Retorna todos os campos customizados de um documento.
Método:
getAllDocumentCustomField(String user, String password, int companyId, int documentId, int version)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do documento.
- version: versão do documento.
Retorno: DocumentCustomFieldsDto.
...
removeCustomField
Exclui um campo customizado.
Método:
removeCustomField(String user, String password, int companyId, String customFieldsId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- customFieldsId: código do campo customizado.
Retorno: String, retorna OK caso os parâmetros da requisição estejam corretos.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
removeDocumentCustomField
Exclui um campo customizado de um documento.
Método:
removeDocumentCustomField(String user, String password, int companyId, String customFieldsId, int documentId, int version)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- customFieldsId: código do campo customizado.
- documentId: número do documento.
- version: versão do documento.
Retorno:
Retorno: String, retorna OK caso os parâmetros da requisição estejam corretos.
.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
setDocumentCustomFields
Cria ou altera um campo customizado em um documento.
Método:
...
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentCustomFieldsDto: documento com campo customizado.
Retorno: String, retorna OK caso os parâmetros da requisição estejam corretos.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateCustomFields
Altera um campo customizado.
Método:
...
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- customFieldsDto: campo customizado que será alterado.
Retorno: String, retorna OK caso os parâmetros da requisição estejam corretos.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 10: Métodos da CustomFieldsService
Exemplo de utilização
Faça o download da classe CustomFieldsServiceClient.java, esta exemplifica a utilização dos principais métodos da classe CustomFieldsService.
ECMDashBoardService
Webservice responsável por interagir com a central de tarefas do fluig. Pode ser utilizado para pesquisar as informações que estão disponíveis na central de tarefas.
Métodos
...
visible | true |
---|---|
title | No quadro 11, é mostrado todos os métodos disponíveis na classe DashBoardService. |
...
findMyDocuments
Retorna os documentos do usuário que precisam ser aprovados.
Método:
findMyDocuments(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
...
findMyDocumentsOnDemand
Retorna os documentos do usuário que precisam ser aprovados, paginados.
Método:
findMyDocumentsOnDemand(String user, String password, int companyId, String colleagueId, int limit, int lastRowId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- limit: número de registros a serem retornados.
- lastRowId: última linha retornada.
Retorno: DocumentDto[].
...
findDocumentsToApprove
Retorna os documentos que o usuário precisa aprovar.
Método:
findDocumentsToApprove(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
...
findDocumentsToApproveOnDemand
Retorna os documentos que o usuário precisa aprovar, paginados.
Método:
findDocumentsToApproveOnDemand(String user, String password, int companyId, String colleagueId, int limit, int lastRowId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- limit: número de registros a serem retornados.
- lastRowId: última linha retornada.
Retorno: DocumentDto[].
...
findAgreementDocuments
Retorna os documentos do usuário que estão em consenso.
Método:
findAgreementDocuments(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
...
findCheckoutDocuments
Retorna os documentos do usuário que estão em checkout.
Método:
findCheckoutDocuments(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
...
findCancelledTasks
Retorna as tarefas atribuidas ao usuário que foram canceladas.
Método:
findCancelledTasks(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: WorkflowProcessDto[].
...
findCompletedTasks
Retorna as tarefas atribuidas ao usuário que foram finalizadas.
Método:
findCompletedTasks(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: WorkflowProcessDto[].
...
findConsensusTasks
Retorna as tarefas atribuidas ao usuário que estão em consenso.
Método:
findConsensusTasks(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: WorkflowProcessDto[].
...
findTransferredTasks
Retorna as tarefas atribuidas ao usuário que foram transferidas.
Método:
findTransferredTasks(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: WorkflowProcessDto[].
...
findWorkflowTasks
Retorna as tarefas do usuário que estão abertas.
Método:
findWorkflowTasks(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
...
O colleagueId pode ser preenchido com Pool:Role:Id ou Pool:Group:Id substituindo o Id pelo código de um papel ou de um grupo, respectivamente, para retornar as solicitações referentes a eles.
Retorno: WorkflowProcessDto[].
...
findWorkflowTasksOnDemand
Retorna as tarefas do usuário que estão abertas, paginadas.
Método:
findWorkflowTasksOnDemand(String user, String password, int companyId, String colleagueId, int limit, int lastRowId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- limit: número de registros a serem retornados.
- lastRowId: última linha retornada.
...
O colleagueId pode ser preenchido com Pool:Role:Id ou Pool:Group:Id substituindo o Id pelo código de um papel ou de um grupo, respectivamente, para retornar as solicitações referentes a eles.
Retorno: WorkflowProcessDto[].
...
findMyRequests
Retorna as solicitações abertas que foram inicializadas pelo usuário.
Método:
findMyRequests(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: WorkflowProcessDto[].
...
findMyRequestsOnDemand
Retorna as solicitações abertas que foram inicializadas pelo usuário, paginadas.
Método:
findMyRequestsOnDemand(String user, String password, int companyId, String colleagueId, int limit, int lastRowId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- limit: número de registros a serem retornados.
- lastRowId: última linha retornada.
Retorno: WorkflowProcessDto[].
...
findMyManagerTasks
Retorna as tarefas gerenciadas pelo usuário.
Método:
findMyManagerTasks(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: WorkflowProcessDto[].
...
findExpiredWorkflowTasks
Retorna as tarefas do usuário que estão em atraso
Método: findExpiredWorkflowTasks(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
...
O colleagueId pode ser preenchido com Pool:Role:Id ou Pool:Group:Id substituindo o Id pelo código de um papel ou de um grupo, respectivamente, para retornar as solicitações referentes a eles.
Retorno: WorkflowProcessDto[].
...
fillStatusTask
Retorna a quantidade de tarefas atrasadas, no prazo e sem prazo de um usuário.
Método:
fillStatusTask(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
...
O colleagueId pode ser preenchido com Pool:Role:Id ou Pool:Group:Id substituindo o Id pelo código de um papel ou de um grupo, respectivamente, para retornar as solicitações referentes a eles.
Retorno: List de int[], com a quantidade de tarefas atrasadas.
...
fillChronoTasks
Retorna a quantidade de tarefas com prazo de conclusão que foram atribuídas ao usuário e não foram finalizadas.
Método:
fillChronoTasks(String user, String password, int companyId, String colleagueId, int yearIni, int yearFin, int mounthIni, int mounthFin, int dayIni, int dayFin, int kindTask)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- yearIni: ano inicial.
- yearFin: ano final.
- mounthIni: mês inicial.
- mounthFin: mês final.
- dayIni: dia inicial.
- dayFin: dia final.
- kindTask: tipo da tarefa.
...
O colleagueId pode ser preenchido com Pool:Role:Id ou Pool:Group:Id substituindo o Id pelo código de um papel ou de um grupo, respectivamente, para retornar as solicitações referentes a eles.
Retorno: : Lista de int[], com a quantidade de tarefas com prazo de conclusão atribuída ao usuário.
...
fillTypeTasks
Retorna os tipos de tarefas que o usuário possui.
Método:
fillTypeTasks(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: TaskVODto[].
...
fillTypeTasksOfReplacement
Retorna os tipos de tarefas que o usuário substituto possui.
Método:
fillTypeTasksOfReplacement(String user, String password, int companyId, String colleagueId, String replacementId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- replacementId: matrícula do usuário substituto.
Retorno: TaskVODto[].
...
getOpenTasksByColleagueGroups
Retorna as tarefas atribuídas a um grupo que o usuário participa.
Método:
getOpenTasksByColleagueGroups(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: WorkflowTaskDto[].
...
getOpenTasksByColleagueGroupsOnDemand
Retorna as tarefas atribuídas a um grupo que o usuário participa, paginadas.
Método:
getOpenTasksByColleagueGroupsOnDemand(String user, String password, int companyId, String colleagueId, int limit, int lastRowId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- limit: número de registros a serem retornados.
- lastRowId: última linha retornada.
Retorno: WorkflowTaskDto[].
...
getOpenTasksByColleagueRoles
Retorna as tarefas atribuídas a um papel que o usuário participa.
Método:
getOpenTasksByColleagueRoles(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: WorkflowTaskDto[].
...
getOpenTasksByColleagueRolesOnDemand
Retorna as tarefas atribuídas a um papel workflow que o usuário participa, paginadas.
Método:
getOpenTasksByColleagueRolesOnDemand(String user, String password, int companyId, String colleagueId, int limit, int lastRowId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- limit: número de registros a serem retornados.
- lastRowId: última linha retornada.
Retorno: WorkflowTaskDto[].
...
getSummaryRequests
Retorna os contadores de pendências da Home.
Método:
getSummaryRequests(int companyId, String user, String password, String colleagueId)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- colleagueId: matrícula do usuário.
...
O colleagueId pode ser preenchido com Pool:Role:Id ou Pool:Group:Id substituindo o Id pelo código de um papel ou de um grupo, respectivamente, para retornar as solicitações referentes a eles.
Retorno: HomeRequestSummaryDto[].
...
Retorna a url do servidor.
Método:
getUrlEcm(long companyId)
Parâmetros:
...
Quadro 11: Métodos da ECMDashBoardService
Exemplo de utilização
Faça o download da classe ECMDashBoardService.java, esta exemplifica a utilização dos principais métodos da classe ECMDashBoardService.
ECMDataServiceService
Webservice responsável por interagir com os serviços externos do fluig. Pode ser utilizado para criar, alterar, excluir e pesquisar os serviços externos existentes.
Métodos
...
visible | true |
---|---|
title | No quadro 12, é mostrado todos os métodos disponíveis na classe DataServiceService. |
...
createDataService
Cria um serviço externo.
Método:
createDataService(int companyId, String user, String password, DataServiceDto[] dataServiceDto)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- dataServiceDto: serviço externo que será criado.
Retorno: String.
...
Remove um serviço externo.
Método:
deleteDataService(int companyId, String user, String password, String dataServiceName)
Parâmetros:
...
Retorno: void.
...
Retorna todos os serviços externos cadastrados.
Método:
getAllServices(int companyId, String user, String password)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
Retorno: dataServiceDto[].
...
Retorna um serviço externo.
Método:
loadDataService(int companyId, String user, String password, String dataServiceName)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- dataServiceName: nome do serviço externo.
Retorno: dataServiceDto.
...
Atualiza um serviço externo.
Método:
createDataService(int companyId, String user, String password, DataServiceDto[] dataServiceDto)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- dataServiceDto: serviço externo que será atualizado.
Retorno: void.
Quadro 12: Métodos da DataServiceService.
ECMDatasetService
Webservice responsável por interagir com os datasets do fluig. Pode ser utilizado para pesquisar os datasets existentes.
Métodos
...
visible | true |
---|---|
title | No quadro 13, é mostrado todos os métodos disponíveis na classe DatasetService. |
...
addDataset
Cria um dataset.
Método:
addDataset(int companyId, String user, String password, String datasetName, String description, String impl)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- datasetName: nome do dataset que será criado.
- description: descrição do dataset.
- impl: implementação para criação do dataset.
Retorno: String.
...
deleteDataset
Remove um dataset.
Método:
deleteDataset(int companyId, String user, String password, String datasetName)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- datasetName: nome do dataset que será removido.
Retorno: void.
...
getAvailableDatasets
Retorna todos os datasets disponíveis.
Método:
getAvailableDatasets(int companyId, String user, String password)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
Retorno: Object[].
...
getDataset
Retorna as informações de um dataset.
Método:
getDataset(int companyId, String user, String password, String name, String[] fields, SearchConstraintDto[] constraintsDto, String[] order)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- name: nome do dataset.
- fields: campos que serão retornados do dataset.
- constraintsDto: filtro dos registros que irão compor o dataset.
- order: campos utilizados para ordenar o dataset.
Retorno: DatasetDto.
...
updateDataset
Atualiza um dataset.
Método:
updateDataset(int companyId, String user, String password, String datasetName, String description, String impl)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- datasetName: nome do dataset que será atualizado.
- description: descrição do dataset.
- impl: implementação do dataset.
Retorno: void.
Quadro 13: Métodos da DatasetService
Exemplo de utilização
Faça o download da classe DatasetServiceClient.java, esta exemplifica a utilização dos principais métodos da classe DatasetService.
ECMDocumentService
Webservice responsável por realizar operações referentes a documentos do fluig. Pode ser utilizado para criar, alterar, excluir e procurar documentos, entre outros recursos.
Dica | ||
---|---|---|
| ||
Para transferir arquivos para a pasta de upload é recomendado a utilização do protocolo FTP. Para mais detalhes sobre o procedimento acesse a documentação Utilizando o protocolo FTP. Não recomendamos passar via webservice arquivos convertidos em base 64 na tag <filecontent> pois existe uma limitação de quantidade da String. Indicamos a utilização em arquivos pequenos de no máximo 5mb |
Informações |
---|
Faça download do exemplo contido em nosso repositório utilizando o arquivo soap-xml-document-service. |
Métodos
...
visible | true |
---|---|
title | No quadro 14, é mostrado todos os métodos disponíveis na classe DocumentService. |
...
approveDocument
Aprova ou reprova documento pendente de aprovação.
Metodo:
approveDocument(int companyId, String userId, String password, int documentId, int version, String approverId, boolean approved, String observation)
Parâmetros:
- user: código do usuário de integração.
- password: senha do usuário de integração.
- companyId: código da empresa.
- documentId: código do documento a ser aprovado.
- version: versão do documento a ser aprovado.
- approverId: código do aprovador
- approved: true se aprova o documento e false caso o documento sera reprovado.
- observation: observação da aprovação ou rejeição.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
copyDocumentToUploadArea
Copia os arquivos (principal e anexos) de um documento para a area de upload do usuário. Isto permite que os documentos tornem-se acessíveis via FTP.
Método:
copyDocumentToUploadArea(String user, String password, int companyId, int documentId, int version, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do documento que será copiado.
- version: versão do documento
- colleagueId: matrícula do usuário cuja área de upload será utilizada
Retorno: String[] nome dos arquivos que foram disponibilizados na área de upload
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
createDocument
Cria um documento.
Método:
createDocument(String user, String password, int companyId, DocumentDto[] docDtos, Attachment[] attachs, DocumentSecurityConfigDto[] docSecurity, ApproverDto[] docApprovers, RelatedDocumentDto[] relDocs)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- docDtos: documento que será publicado (mais detalhes do parâmetro aqui).
- attachs: arquivo anexado na publicação (mais detalhes do parâmetro aqui).
- docSecurity: segurança do documento que será publicado (mais detalhes do parâmetro aqui).
- docApprovers: aprovadores do documento que será publicado (mais detalhes do parâmetro aqui).
- relDocs: documentos relacionados ao documento que será publicado (mais detalhes do parâmetro aqui).
...
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Veja nosso exemplo no repositório do fluig. Utilize o arquivo dataset-create-document.
...
createDocumentWithApprovementLevels
Cria um documento com nível de aprovação.
Método:
createDocumentWithApprovementLevels(String user, String password, int companyId, DocumentDto[] docDtos, Attachment[] attachs, DocumentSecurityConfigDto[] docSecurity, ApproverWithLevelDto[] docApproversLevels, ApprovalLevelDto[] levels, RelatedDocumentDto[] relDocs)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- docDtos: documento que será publicado.
- attachs: arquivo anexado na publicação.
- docSecurity: segurança do documento que será publicado.
- docApproversLevel: nível de aprovação que os aprovadores do documento estão inseridos.
- levels: níveis de aprovação que o documento terá.
- relDocs: documentos relacionados ao documento que será publicado.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
createSimpleDocument
Cria um documento simples.
Método:
createSimpleDocument(String user, String password, int company, int parentDocumentId, String publisherId, String documentDescription, Attachment[] attachments)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- parentDocumentId: número da pasta pai.
- publisherId: matrícula do usuário que publicará o documento.
- documentDescription: descrição do documento.
- attachments: arquivo anexado na publicação (para utilização via TDS é necessário instanciar a classe Attachment. Confira um exemplo de utilização em Criação de documento a partir do método createSimpleDocument).
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
createSimpleDocumentPrivate
Cria um documento simples na pasta particular.
Método:
createSimpleDocumentPrivate(String colleagueId, String password, int companyId, int parentDocumentId, String documentDescription, Attachment[] attachments)
Parâmetros:
- colleagueId: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- parentDocumentId: número da pasta pai.
- documentDescription: descrição do documento.
- attachments: arquivo anexado na publicação.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
deleteDocument
Exclui um documento e o envia para a lixeira.
Método:
deleteDocument(String user, String password, int companyId, int documentId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do documento que será excluído.
- colleagueId: matrícula do usuário.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
destroyDocument
Exclui um documento da lixeira.
Método:
destroyDocument(String user, String password, int companyId, int documentId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do documento que será excluído.
- colleagueId: matrícula do usuário.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
destroyDocumentApproval
Exclui documento pendente de aprovação.
Metodo:
destroyDocumentApproval(String userId, String password, int companyId, int documentId, String publisherId)
Parâmetros:
- user: código do usuário de integração.
- password: senha do usuário de integração.
- companyId: código da empresa.
- documentId: código do documento a excluido.
- publisherId: código do publicador.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
findMostPopularDocuments
Retorna os documentos mais acessados no fluig que o usuário tenha permissão de acesso.
Método:
findMostPopularDocuments(String user, String password, int companyId, String colleagueId, int nr_resultados)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- nr_resultados: quantidade de documentos que serão retornados.
Retorno: DocumentDto[].
Atributos de Retorno:
- accesCount
- activeVersion
- additionalComments
- allowMuiltiCardsPerUser
- approved
- colleagueId
- companyId
- crc
- createDate
- datasetName
- deleted
- documentDescription
- documentId
- documentType
- documentTypeId
- downloadEnabled
- draft
- expirationDate
- expires
- iconId
- imutable
- indexed
- inheritSecurity
- isEncrypted
- keyWord
- lastModifiedDate
- metaListId
- metaListRecordId
- parentDocumentId
- permissionType
- phisicalFile
- phisicalFileSize
- privateDocument
- protectedCopy
- publisherId
- restrictionType
- rowId
- securityLevel
- topicId
- translated
- UUID
- updateIsoProperties
- userNotify
- validationStartDate
- version
- versionDescription
- volumeId
...
findMostPopularDocumentsOnDemand
Retorna os documentos mais acessados no fluig que o usuário tenha permissão de acesso, paginados.
Método:
findMostPopularDocuments(int companyId, String user, String password, String colleagueId, int limit, int lastRowId)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- colleagueId: matrícula do usuário.
- limit: número de registros a serem retornados.
- lastRowId: última linha retornada.
Retorno: DocumentDto[].
Atributos de Retorno:
- accesCount
- activeVersion
- additionalComments
- allowMuiltiCardsPerUser
- approved
- colleagueId
- companyId
- crc
- createDate
- datasetName
- deleted
- documentDescription
- documentId
- documentType
- documentTypeId
- downloadEnabled
- draft
- expirationDate
- expires
- iconId
- imutable
- indexed
- inheritSecurity
- isEncrypted
- keyWord
- lastModifiedDate
- metaListId
- metaListRecordId
- parentDocumentId
- permissionType
- phisicalFile
- phisicalFileSize
- privateDocument
- protectedCopy
- publisherId
- restrictionType
- rowId
- securityLevel
- topicId
- translated
- UUID
- updateIsoProperties
- userNotify
- validationStartDate
- version
- versionDescription
- volumeId
...
findRecycledDocuments
Retorna os documentos da lixeira.
Método:
findRecycledDocuments(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
Atributos de Retorno:
- accesCount
- activeVersion
- additionalComments
- allowMuiltiCardsPerUser
- approved
- colleagueId
- companyId
- crc
- createDate
- datasetName
- deleted
- documentDescription
- documentId
- documentType
- documentTypeId
- downloadEnabled
- draft
- expirationDate
- expires
- iconId
- imutable
- indexed
- inheritSecurity
- isEncrypted
- keyWord
- lastModifiedDate
- metaListId
- metaListRecordId
- parentDocumentId
- permissionType
- phisicalFile
- phisicalFileSize
- privateDocument
- protectedCopy
- publisherId
- restrictionType
- rowId
- securityLevel
- topicId
- translated
- UUID
- updateIsoProperties
- userNotify
- validationStartDate
- version
- versionDescription
- volumeId
...
getActiveDocument
Retorna um documento ativo.
Método:
getActiveDocument(String user, String password, int companyId, int nrDocumentId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocumentId: número do documento.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
...
getApprovers
Retorna os aprovadores de um documento.
Método:
getApprovers(String user, String password, int companyId, int nrDocumentId, int version)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocumentId: número do documento.
- version: número da versão do documento.
Retorno: ApproverWithLevelDto[].
Atributos de Retorno:
- approverType
- colleagueId
- companyId
- documentId
- levelId
- version
...
getDocumentApprovalHistory
Retorna o histórico de aprovações do documento solicitado.
Metodo:
getDocumentApprovalHistory(String user, String password, int companyId, int documentId, int version)
Parâmetros:
- user: código do usuário de integração.
- password: senha do usuário de integração.
- companyId: código da empresa.
- documentId: código do documento que se deseja visualizar o status.
- version: versão do documento (caso seja informada a versão 0 sera solicitada a ultima versão do documento).
Retorno: DocumentApprovementHistoryDto.
Atributos de Retorno:
- colleagueId
- documentVersion
- iterationSequence
- levelId
- movementSequence
- observation
- signed
- status
...
getDocumentApprovalStatus
Retorna o status do documento com relação a aprovação. O status do documento pode ser:
0 - Aprovado.
1 - Rejeitado.
2- Em aprovação.
Método:
getDocumentApprovalStatus(String user, String password, int companyId, int documentId, int version)
Parâmetros:
- user: código do usuário de integração.
- password: senha do usuário de integração.
- companyId: código da empresa.
- documentId: código do documento que se deseja visualizar o status.
- version: versão do documento (caso seja informada a versão 0 sera solicitada a ultima versão do documento).
Retorno: DocumentApprovalStatusDto.
Atributos de Retorno:
- companyId
- documentId
- status
- version
...
getDocumentByExternalId
Retorna um documento pelo código externo.
Método:
getDocumentByExternalId(String user, String password, int companyId, String externalDocumentId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- externalDocumentId: código externo do documento.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
...
getDocumentContent
Retorna o byte do arquivo físico de um documento, caso o usuário tenha permissão para acessá-lo.
Método:
getDocumentContent(String user, String password, int companyId, int nrDocumentId, String colleagueId, int documentoVersao, String nomeArquivo)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocumentId: número do documento.
- colleagueId: matrícula do usuário.
- documentVersao: número da versão do documento.
- nomeArquivo: nome do arquivo.
Retorno: Lista de byte[].
...
getDocumentVersion
Retorna a versão de um documento.
Método:
getDocumentVersion(String user, String password, int companyId, int nrDocumentId, int version, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocumentId: número do documento.
- version: número da versão do documento.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
Atributos de Retorno:
- accesCount
- activeVersion
- additionalComments
- allowMuiltiCardsPerUser
- approved
- colleagueId
- companyId
- crc
- createDate
- datasetName
- deleted
- documentDescription
- documentId
- documentType
- documentTypeId
- downloadEnabled
- draft
- expirationDate
- expires
- iconId
- imutable
- indexed
- inheritSecurity
- isEncrypted
- keyWord
- lastModifiedDate
- metaListId
- metaListRecordId
- parentDocumentId
- permissionType
- phisicalFile
- phisicalFileSize
- privateDocument
- protectedCopy
- publisherId
- restrictionType
- rowId
- securityLevel
- topicId
- translated
- UUID
- updateIsoProperties
- userNotify
- validationStartDate
- version
- versionDescription
- volumeId
...
getRelatedDocuments
Retorna todos os documentos relacionados de um documento.
Método:
getRelatedDocuments(String user, String password, int companyId, int nrDocumentId, int version)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocumentId: número do documento.
- version: número da versão do documento.
Retorno: RelatedDocumentDto.
Atributos de Retorno:
- companyId
- documentId
- relatedDocumentId
- version
...
getReportSubjectId
Retorna o código do assunto de relatórios dentro do fluig.
Método:
getReportSubjectId(String user, String password, int companyId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: topicId : int.
...
getSecurity
Retorna a segurança de um documento.
Método:
getSecurity(String user, String password, int company, int nrDocumentId, int version)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocumentId: número do documento.
- version: número da versão do documento.
Retorno: DocumentSecurityConfigDto[].
Atributos de Retorno:
- attributionType
- attributionValue
- companyId
- documentId
- permission
- securityLevel
- sequence
- showContent
- version
...
getUserPermissions
Retorna as permissões do usuário sobre um documento.
Método:
getUserPermissions(int companyId, String user, int nrDocumentId, int version)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- nrDocumentId: número do documento.
- version: número da versão do documento.
Retorno: Integer, retorna o valor correspondente a permissão..
Atributos de Retorno:
- result
...
moveDocument
Move documentos para pasta destino.
Método:
moveDocument(String user, String password, int companyId, int[] documentIds, String colleagueId, int destfolder)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentIds: lista com os números dos documentos que serão movidos.
- colleagueId: matrícula do usuário com permissão para mover o documento
- destFolder: número da pasta de destino.
Retorno: Lista String[].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
removeSecurity
Remove a segurança de um documento.
Método:
removeSecurity(String user, String password, int companyId, int documentId, int version)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do documento.
- version: número da versão do documento.
Retorno: Não há retorno.
...
restoreDocument
Restaura um documento da lixeira.
Método:
restoreDocument(String user, String password, int companyId, int documentId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número do documento que será restaurado.
- colleagueId: matrícula do usuário.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateDocument
Altera um documento.
Método:
updateDocument(String user, String password, int companyId, DocumentDto[] docDtos, Attachment[] attachs, DocumentSecurityConfigDto[] docSecurity,ApproverDto[] docApprovers, RelatedDocumentDto[] relDocs)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- docDtos: documento que será publicado (mais detalhes do parâmetro aqui).
- attachs: arquivo anexado na publicação (mais detalhes do parâmetro aqui).
- docSecurity: segurança do documento que será publicado (mais detalhes do parâmetro aqui ).
- docApprovers: aprovadores do documento que será publicado (mais detalhes do parâmetro aqui ).
- relDocs: documentos relacionados ao documento que será publicado (mais detalhes do parâmetro aqui ).
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateDocumentWithApprovementLevels
Altera um documento com nível de aprovação.
Métodos:
updateDocumentWithApprovementLevels(String user, String password, int companyId, DocumentDto[] docDtos, Attachment[] attach, DocumentSecurityConfigDto[] docSecutiry, ApproverWithLevelDto[] docApprovers, ApprovalLevelDto[] levels, RelatedDocumentDto[] relDocs)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- docDtos: documento que será alterado.
- attachs: arquivo anexado na alteração.
- docSecurity: segurança do documento que será alterado.
- docApprovers: nível de aprovação que os aprovadores do documento estão inseridos.
- levels: níveis de aprovação que o documento terá.
- relDocs: documentos relacionados ao documento que será alterado.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateGroupSecurityType
Modifica o tipo da segurança dos grupos na permissão e na restrição. Existem duas opções que são representadas por um inteiro:
0 - TODOS os usuários dos Grupos.
1 - SOMENTE usuários comuns dos grupos.
Método:
updateGroupSecurityType(String user, String password, int companyId, int documentId, int version, int permissionType, int restrictionType, String colleagueId)
Parâmetros:
- user: código do usuário de integração.
- password: senha do usuário de integração.
- companyId: código da empresa.
- documentId: código do documento.
- version: versão do documento.
- permissionType: tipo da permissão (0 - TODOS os usuários dos Grupos / 1 - SOMENTE usuários comuns dos grupos)
- restrictionType: tipo da restrição (0 - TODOS os usuários dos Grupos / 1 - SOMENTE usuários comuns dos grupos)
- colleagueId: matrícula do usuário
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateSimpleDocument
Altera de forma simples um documento.
Método:
updateSimpleDocument(String username, String password, int companyId, int documentId, String publisherId, String documentDescription, Attachment[] attachments)
Parâmetros:
- username: login do usuário de integração.
- password: senha do usuário de integração.
- companyId: código da empresa.
- documentId: número do documento que será alterado.
- publisherId: matrícula do usuário que realizará a alteração do documento.
- documentDescription: descrição do documento.
- attachments: arquivos anexados na alteração.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
validateIntegrationRequirements
Verifica a integração do usuário no fluig.
Método:
validateIntegrationRequirements (String user, String password, int companyId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 14: Métodos da DocumentService
Exemplo de utilização
Faça o download da classe DocumentServiceClient.java, esta exemplifica a utilização dos principais métodos da classe DocumentService.
Informações | ||
---|---|---|
| ||
Alguns campos, entre eles Approved, ApprovedDate, CreateDate, LastModifiedDate, apesar de aparecerem no exemplo disposto não podem ser modificados, pois se tratam de campos de uso interno do sistema. Os campos são mantidos no objeto do Documento pois são necessários para o resgate dessas informações. |
Informações | ||
---|---|---|
| ||
Para os métodos de criação de documento (createDocument, createSimpleDocument, etc...) pode-se utilizar um usuário para autenticação e outro para publicação, pois pode ser necessário validar a permissão de outro usuário no momento de criar o documento no fluig. Neste caso, quando o arquivo a ser publicado não é enviado na requisição (campo filecontent do parâmetro Attachment), ele poderá ser obtido na pasta de upload do usuário publicador, ou do usuário utilizado para autenticar no fluig via WS. Para isso, o documento deve estar na pasta de upload do usuário em questão, o que pode ser feito via FTP. Isso pode ser útil em integrações que utilizam o mesmo usuário (integrador) para autenticar no FTP e nos serviços. |
ECMFavoritesService
Webservice responsável por interagir com os documentos e processos favoritos do fluig. Pode ser utilizado para pesquisar os documentos e processos favoritos de cada usuário.
Métodos
...
visible | true |
---|---|
title | No quadro 15, é mostrado todos os métodos disponíveis na classe FavoritesService. |
...
addDocumentToFavorites
Adiciona um documento aos favoritos do usuário informado.
Método:
addDocumentToFavorites(String username, String password, int companyId, int nrDocument, int nrVersao, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocument: número do documento
- nrVersao: versão do documento
- colleagueId : matrícula do usuário.
Retorno: void.
...
addProcessToFavorites
Adiciona um processo aos favoritos do usuário informado.
Método:
addProcessToFavorites(String username, String password, int companyId,String processId, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: código do processo
- colleagueId : matrícula do usuário.
...
findFavorites
Retorna os documentos favoritos do usuário.
Método:
findFavorites(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId : matrícula do usuário.
Retorno: DocumentDto[].
...
findFavoritesOnDemand
Retorna os documentos favoritos do usuário, paginados.
Método:
findFavoritesOnDemand(String user, String password, int companyId, String colleagueId, int limit, int lastRowId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId : matrícula do usuário.
- limit: número de registros a serem retornados.
- lastRowId: última linha retornada.
Retorno: DocumentDto[].
...
findFavoritesProcess
Retorna os processos favoritos do usuário.
Método:
findFavoritesProcess (String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId : matrícula do usuário.
Retorno: ProcessDefinitionVersionDto[] .
...
findFavoritesProcessOnDemand
Retorna os processos favoritos do usuário, paginados.
Método:
findFavoritesProcess (String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId : matrícula do usuário.
- limit: número de registros a serem retornados.
- lastRowId: última linha retornada.
Retorno: ProcessDefinitionVersionDto[] .
...
isFavoriteDocument
Verifica se documento é favorito.
Método:
isFavoriteDocument(String username, String password, int companyId, int nrDocument, String colleagueId)
Parâmetros:
- username: login do usuário de integração.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocument: código do documento.
- colleagueId: matricula do usuário.
Retorno: Boolean, documento favoritado.
...
removeFavoriteDocument
Remove um documento dos favoritos do usuário informado.
Método:
removeFavoriteDocument (String username, String password, int companyId, int nrDocument, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocument: número do documento
- colleagueId : matrícula do usuário.
Retorno: void.
...
removeFavoriteProcess
Remove um processo dos favoritos do usuário informado.
Método:
addProcessToFavorites(String username, String password, int companyId,String processId, String colleagueId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: código do processo.
- colleagueId : matrícula do usuário.
Retorno: void.
Quadro 15: Métodos da FavoritesService
Exemplo de utilização
Faça o download da classe ECMFavoritesService.java, esta exemplifica a utilização dos principais métodos da classe FavoritesService.
ECMFolderService
Webservice responsável por realizar operações referentes a pastas no fluig. Pode ser utilizado para criar, alterar, excluir e pesquisar pastas, entre outros recursos.
Métodos
...
visible | true |
---|---|
title | No quadro 16, é mostrado todos os métodos disponíveis na classe FolderService. |
...
createFolder
Cria uma pasta.
Método:
createFolder(String user, String password, int companyId, DocumentDto[] docdtos, DocumentSecurityConfigDto[] docsecurity, ApproverDto[] docapprovers )
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- docdtos: pasta que será criada.
- docsecurity: segurança da pasta.
- docapprovers: aprovadores da pasta.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
createFolderWithApprovementLevels
Cria uma pasta com nível de aprovação.
Método:
createFolderWithApprovementLevels(String user, String password, int companyId, DocumentDto[] docdtos, DocumentSecurityConfigDto[] docsecurity, ApproverWithLevelDto[] docapprovers, ApprovalLevelDto[] levels)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- docdtos: pasta que será criada.
- docsecurity: segurança da pasta.
- docapprovers: aprovadores em níveis.
- levels: níveis de aprovação da pasta.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
createSimpleFolder
Cria uma pasta simples.
Método:
createSimpleFolder(String user, String password, int companyId, int parentDocumentId, String publisherId, String documentDescription)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- parentDocumentId: número do documento pai.
- publisherId: matrícula do usuário publicador.
- documentDescription: descrição da pasta.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
deleteDocument
Exclui uma pasta e envia para a lixeira.
Método:
deleteDocument(String user, String password, int companyId, int documentId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número da pasta.
- colleagueId: matrícula do usuário.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
destroyDocument
Exclui uma pasta da lixeira.
Método:
destroyDocument(String user, String password, int companyId, int documentId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número da pasta.
- colleagueId: matrícula do usuário.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
findRecycledDocuments
Retorna todos os documentos da lixeira de um usuário.
Método:
findRecycledDocuments(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
...
getApprovers
Retorna os aprovadores de uma pasta.
Método:
getApprovers(String user, String password, int companyId, int nrDocumentId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocumentId: número da pasta.
Retorno: ApproverWithLevelDto[].
...
getChildren
Retorna todos os documentos de uma pasta.
Método:
getChildren(String user, String password, int companyId, int documentId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número da pasta.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
...
getFolder
Retorna uma pasta.
Método:
getFolder(String user, String password, int companyId, int nrDocumentId, String colleagueId )
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocumentId: número da pasta.
- colleagueId: matrícula do usuário origem.
Retorno: DocumentDto[].
...
getPrivateChildren
Retorna todos os documentos de uma pasta particular.
Método:
getPrivateChildren(String user, String password, int companyId, int parentDocumentId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número da pasta.
Retorno: DocumentDto[].
...
getRootFolders
Retorna as pastas root que um usuário tem acesso, exceto a pasta particular.
Método:
getRootFolders(String user, String password, int companyId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
...
getSecurity
Retorna a segurança de uma pasta.
Método:
getSecurity(String user, String password, int companyId, int nrDocumentId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocumentId: número da pasta.
Retorno: DocumentSecurityConfigDto[].
...
getSubFolders
Retorna todas as subpastas e arquivos de um pasta.
Método:
getSubFolders(String user, String password, int companyId, int documentId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número da pasta.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
...
getSubFoldersOnDemand
Retorna todas as subpastas e arquivos de uma pasta, paginados.
Método:
getSubFoldersOnDemand(int companyId, String user, String password, int documentId, boolean privatefolder, String[] documenttypes, int limit , int lastRowId, String colleagueId)
Parâmetros:
- companyId: código da empresa.
- user: login do usuário.
- password: senha do usuário.
- documentId: número da pasta.
- privatefolder: identifica se é uma pasta particular.
- documenttypes: tipos de documentos das pastas.
- limit: número de registros a serem retornados.
- lastRowId: última linha retornada.
- colleagueId: matrícula do usuário.
Retorno: DocumentDto[].
...
getSubFoldersPermission
Retorna todas as subspastas em que o usuário tenha a permissão informada.
Método:
getSubFoldersPermission(String user, String password, int companyId, int documentId, String colleagueId, int permission)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número da pasta particular.
- colleagueId: matrícula do usuário.
- permission: permissão sobre a pasta.
Retorno: DocumentDto[].
...
getSubPrivateFolders
Retorna todas as subpastas de uma pasta particular.
Método:
getSubPrivateFolders(String colleagueId, String password, int companyId, int documentId)
Parâmetros:
- colleagueId: matrícula do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número da pasta particular.
Retorno: DocumentDto[].
...
getUserPermissions
Retorna a permissão de um usuário sobre uma pasta.
Método:
getUserPermissions(int companyId, String user, int nrDocumentId, int version)
Parâmetros:
- companyId: código da empresa.
- user: matrícula do usuário.
- nrDocumentId: número da pasta.
- version: versão da pasta.
Retorno: Integer, referente ao nível de permissão do usuário.
...
restoreDocument
Restaura uma pasta da lixeira.
Método:
restoreDocument(String user, String password, int companyId, int documentId, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: número da pasta.
- colleagueId: matrícula do usuário.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateFolder
Altera uma pasta.
Método:
updateFolder(String user, String password, int companyId, DocumentDto[] docdtos, DocumentSecurityConfigDto[] docsecurity, ApproverDto[] docapprovers)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- docdtos: pasta que será alterada.
- docsecurity: segurança da pasta.
- docapprovers: aprovadores da pasta.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateFolderWithApprovementLevels
Altera uma pasta com nível de aprovação.
Método:
updateFolderWithApprovementLevels(String user, String password, int companyId, DocumentDto[] docdtos, DocumentSecurityConfigDto[] docsecurity, ApproverWithLevelDto[] docapprovers, ApprovalLevelDto[] levels)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- docdtos: pasta que será alterada.
- docsecurity: segurança da pasta.
- docapprovers: aprovadores em níveis.
- levels: níveis de aprovação da pasta.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateSimpleFolder
Altera de forma simples uma pasta.
Método:
updateSimpleFolder(String user, String Password, int companyId, DocumentDto[] docdtos)
Parâmetros:
- user: login do usuário
- password: senha do usuário
- companyId: código da empresa
- docdtos: pasta que será alterada.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 16: Métodos da FolderService
Exemplo de utilização
Faça o download da classe FolderServiceClient.java, esta exemplifica a utilização dos principais métodos da classe FolderService.
ECMGlobalParamService
Webservice responsável por interagir com as configurações dos parâmetros gerais do fluig. Pode ser utilizado para criar, alterar e pesquisar os parâmetros gerais.
Métodos
...
visible | true |
---|---|
title | No quadro 17, é mostrado todos os métodos disponíveis na classe GlobalParamService. |
...
createGlobalParam
Cria parâmetros gerais para uma empresa.
Método:
createGlobalParam(String username, String password, int companyId, GlobalParamDto[] global)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- global: parâmetros gerais da empresa.
Retorno: String.
...
getGlobalParam
Retorna os parâmetros gerais de uma empresa.
Método:
getGlobalParam(String username, String password, int companyId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: GlobalParamDto[].
...
getVolumes
Retorna os volumes da empresa.
Método:
getVolumes(String user, String password, int companyId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: VolumeDto[].
...
updateConfigurations
Altera as configurações do sistema.
Método:
updateConfigurations( String username,String password, int companyId, String dbDriver, String dbUser, String dbPassword, String dbServer,
String dbPort,String dbScheme, String dbInstance, String emailServer, String emailPort, String emailSender, boolean emailDefaultSender, String emailUser, String emailPassword, boolean emailTLS,String paramsRMTPTPort, String lsType, String paramsLSHost, String paramsLSPort, String paramsOpenOfficeDir, String paramsOpenOfficePorts, String portsSetName)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- dbDriver: driver do banco de dados (MySql- com.mysql.jdbc.Driver. SQLServer - net.sourceforge.jtds.jdbc.Driver. Oracle -oracle.jdbc.driver.OracleDriver)
- dbUser: username banco de dados.
- dbPassword: password banco de dados.
- dbServer: servidor de conexão do banco de dados.
- dbPort: porta servidor banco de dados.
- dbScheme: database.
- dbInstance: instância do banco, utilizada para SQLServer, caso não seja o caso passar em branco ("").
- mailServer: nome do servidor SMTP.
- emailSender: e-mail do remetente padrão do produto.
- emailPort: porta do servidor SMTP.
- emailDefaultSender:
- emailUser: usuário de email, somente se o servidor necessitar de autenticação.
- emailPassword: password do email, somente se o servidor necessitar de autenticação.
- emailTLS: servidor utilizará criptografia no envio de email (true/false)
- paramsRMTPTPort: porta utilizada pelo Flex.
- lsType: tipo de licença utilizada, LM/LS.
- paramsLSHost: servidor de licenças.
- paramsLSPort: porta servidor de licenças.
- paramsOpenOfficeDir: diretório de instalação do OpenOffice
- paramsOpenOfficePorts: porta utilizado pelo OpenOffice
- portsSetName: portas utilizadas pelo sistema (ports-default, ports-01, ports-02)
Retorno: String.
...
Método depreciado e não mais utilizável no fluig.
...
updateGlobalParam
Altera parâmetros gerais de uma empresa.
Método:
updateGlobalParam(String username, String password, int companyId, GlobalParamDto[] global)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- global: parâmetros gerais da empresa.
Retorno: String.
Quadro 17: Métodos da GlobalParamService.
Exemplo de utilização
Faça o download da classe GlobalParamServiceClient.java, esta exemplifica a utilização dos principais métodos da classe GlobalParamService.
ECMGroupService
Webservice responsável por realizar operações referentes a grupos no fluig. Pode ser utilizado para criar, alterar, excluir e procurar grupos, entre outros recursos.
Métodos
...
visible | true |
---|---|
title | No quadro 18, é mostrado todos os métodos disponíveis na classe GroupService. |
...
createGroup
Cria um grupo no fluig.
Método:
createGroup(String username, String password, int companyId, GroupDto[] grupos)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- grupos: grupo que será criado.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
deleteGroup
Exclui um grupo do fluig.
Método:
deleteGroup(String username, String password, int companyId, String groupId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- GroupId: código do grupo.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
getGroup
Retorna um grupo cadastrado no fluig.
Método:
getGroups(String username, String password, int companyId, String groupId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- groupId: código do grupo.
Retorno: GroupDto[].
Atributos de Retorno:
companyId
groupDescription
groupId
...
getGroups
Retorna todos os grupos cadastrados no fluig.
Método:
getGroups(String username, String password, int companyId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: GroupDto[].
Atributos de Retorno:
companyId
groupDescription
groupId
...
getGroupsByDescription
Retorna um grupo pela descrição.
Método:
getGroupsByDescription(String username, String password, int companyId, String desc)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- desc: descrição do grupo.
Retorno: GroupDto[].
Atributos de Retorno:
companyId
groupDescription
groupId
...
getOcurrenceByKey
Retorna se existe configuração de segurança para atribuição e valor da atribuição.
Método:
getOcurrenceByKey(String username, String password, int companyId, int pIdiAtribuic, String pDesValAtribuic)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- pIdiAtribuic: código da atribuição.
- pDesValAtribuic: valor da atribuição.
Retorno: boolean.
...
updateGroup
Altera um grupo no fluig.
Método:
updateGroup(String username, String password, int companyId, GroupDto[] grupos)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- grupos: grupo que será alterado.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 18: Métodos da GroupService.
Exemplo de utilização
Faça o download da classe GroupServiceClient.java, esta exemplifica a utilização dos principais métodos da classe GroupService.
ECMOutstandingService
Webservice responsável por interagir com as transferências de pendências do fluig. Pode ser utilizado para transferir pendências de um usuário para outro usuário.
Métodos
...
visible | true |
---|---|
title | No quadro 19, é mostrado todos os métodos disponíveis na classe OutstandingService. |
...
transfer
Transfere pendências de um usuário para outro usuário.
Método:
transfer(String user, String password, int companyId, String colleagueIdFrom, String colleagueIdTo, String[] parameters)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueIdFrom: matrícula do usuário origem (suas pendências serão tranferidas para o usuário destino).
- colleagueIdTo: matrícula do usuário destino (receberá as pendências do usuário origem).
- parameters: array de pendências que serão transferidas para o usuário destino.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 19: Métodos da OutstandingService.
Exemplo de utilização
Faça o download da classe OutstandingServiceClient.java, esta exemplifica a utilização dos principais métodos da classe OutstandingService.
ECMReportService
Webservice responsável por realizar operações referentes a relatórios no fluig. Pode ser utilizado para criar, alterar, excluir e procurar relatórios, entre outros recursos.
Métodos
...
visible | true |
---|---|
title | No quadro 20, é mostrado todos os métodos disponíveis na classe ReportService. |
...
createSimpleReport
Cria um relatório de maneira simplificada no fluig.
Método:
createSimpleReport(String username, String password, int companyId, int parentDocId, String reportDescription, Attachment[] attachments)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- parentDocId: código da pasta pai.
- reportDescription: descrição do relatório.
- attachments: anexos do relatório.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
getActiveReport
Retorna um relatório ativo no fluig.
Método:
getActiveReport(int companyId, String username, String password, String documentId)
Parâmetros:
- companyId: código da empresa.
- username: login do usuário.
- password: senha do usuário.
- documentId: código do documento.
Retorno: DocumentDto.
...
getAttachmentsList
Retorna uma lista de anexos do relatório no fluig.
Método:
getAttachmentsList(String username, String password, int companyId, String documentId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- documentId: código do documento.
Retorno: Retorna lista de String[], com nome dos anexos.
...
getReportContent
Retorna o arquivo físico de um relatório.
Método:
getReportContent(String username, String password, int companyId, int nrDocumentId, String colleagueId, int documentoVersao, String fileName)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- nrDocumentId: número do documento.
- colleagueId: matrícula do usuário.
- documentoVersao: versão do documento.
- fileName: nome do arquivo.
Retorno: byte[].
...
getRepots
Retorna os relatórios disponíveis.
Método:
getRepots(String username, String password, int companyId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: DocumentDto[].
...
updateSimpleReport
Atualiza um relatório de maneira simplificada no fluig.
Método:
updateSimpleReport(String username, String password, int companyId, int docId, String reportDescription, Attachment[] attachments, String versionOption)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- docId: código da pasta pai.
- reportDescription: descrição do relatório.
- attachments: anexos do relatório.
- versionOption: informa se deseja atualizar a versão do relatório.
Retorno: WebServiceMessageArray.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 20: Métodos da ReportService.
Exemplo de utilização
Faça o download da classe ReportServiceClient.java, esta exemplifica a utilização dos principais métodos da classe ReportService.
ECMSearchDocumentService
Webservice responsável por realizar operações referentes às buscas no fluig. Pode ser utilizado para buscar documentos utilizando a busca simples e avançada.
Métodos
...
visible | true |
---|---|
title | No quadro 21, é mostrado todos os métodos disponíveis na classe SearchDocumentService. |
...
advancedSearchDocuments
Utiliza busca avançada.
Método:
advancedSearchDocuments(String user, String password, int companyId, String colleagueId, String content, boolean findAllDocumentTypes, boolean findFolders, boolean findDocuments, boolean findCardIndex, boolean findCards, boolean findExternalDocument, int documentParentId, Date startDate, Date finalDate)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- content: conteúdo da busca.
- findAllDocumentTypes: indica se deve buscar todos os tipos de documentos.
- findFolders: indica se deve buscar pastas.
- findDocuments: indica se deve buscar documentos.
- findCardIndex: indica se deve buscar formulários.
- findCards: indica se deve buscar registros de formulários.
- findExternalDocument: indica se deve buscar documentos externos.
- documentParentId: número do documento pai.
- startDate: data inicial.
- finalDate: data final.
Retorno: SearchResultDto.
...
Utiliza busca avançada através das opções de metadados e campos customizados.
Método:
advancedSearchDocuments(String user, String password, int companyId, String colleagueId, String content, SearchFields[] metadata, SearchFields[] customfields, boolean findAllDocumentTypes, boolean findFolders, boolean findDocuments, boolean findCardIndex, boolean findCards, boolean findExternalDocument, int documentParentId, Date startDate, Date finalDate)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- content: conteúdo da busca.
- metadata: informações para busca a partir de metadados do arquivo, como publicador (usando o fieldName publisher), autor (author), descrição (description), descrição da versão/revisão (versionDescription), comentários (additionalComments), tags (tags), data de criação (createDate) e data da última alteração (lastUpdateDate).
- customfields: informações para busca a partir de metadados de campos customizados, informando o código do campo customizado como fieldName e valor a ser utilizado como filtro.
- findAllDocumentTypes: indica se deve buscar todos os tipos de documentos.
- findFolders: indica se deve buscar pastas.
- findDocuments: indica se deve buscar documentos.
- findCardIndex: indica se deve buscar formulários.
- findCards: indica se deve buscar registros de formulários.
- findExternalDocument: indica se deve buscar documentos externos.
- documentParentId: número do documento pai.
- startDate: data inicial.
- finalDate: data final.
Retorno: SearchResultDto.
...
searchDocuments
Utiliza busca simples.
Método:
searchDocuments(String user, String password, int companyId, String colleagueId, String content)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- content: conteúdo da busca.
Retorno: SearchResultDto.
...
searchFavoritesDocuments
Busca documentos favoritos.
Metodo:
searchFavoritesDocuments(String user, String Password, int companyId, String colleagueId, String content)
Parametros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- contente: conteúdo a ser buscado
Retorno: SearchResultDto.
Quadro 21: Métodos da SearchDocumentService
Exemplo de utilização
Faça o download da classe SearchDocumentServiceClient.java, esta exemplifica a utilização dos principais métodos da classe SearchDocumentService.
ECMSignalService
Webservice responsável por interagir com os sinais criados no fluig. Pode ser utilizado para criar, remover, enviar sinais ou consultar os sinais existentes.
Métodos
...
visible | true |
---|---|
title | No quadro 22, é mostrado todos os métodos disponíveis na classe TokenService. |
...
createSignal
Cria um sinal no fluig.
Método:
createSignal(String login, String password, int companyId, String description)
Parâmetros:
- login: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- description: descrição do sinal.
Retorno: String.
...
deleteSignal
Remove um sinal criado no fluig.
Método:
deleteSignal(String login, String password, int companyId, int signalId)
Parâmetros:
- login: login do usuário que será gerado pelo token.
- password: senha do usuário.
- companyId: código da empresa.
- signalId: código do sinal.
Retorno: String.
...
fireSignal
Envia/ Dispara o sinal existente.
Método:
fireSignal (String login, String password, int companyId, int signalId)
Parâmetros:
- login: login do usuário que será gerado pelo token.
- password: senha do usuário.
- companyId: código da empresa.
- signalId: código do sinal.
Retorno: String.
...
getSignals
Retorna os sinais existentes no fluig.
Método:
getSignals(String login, String password, int companyId)
Parâmetro:
- login: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
Retorno: Signal[].
Quadro 22: Métodos da SignalService.
Exemplo de utilização
Faça o download da classe ECMSignalService.java, esta exemplifica a utilização dos principais métodos da classe SignalService.
ECMTokenService
Webservice responsável por interagir com os token’s do fluig. Pode ser utilizado para pesquisar e validar os token’s existentes.
Métodos
...
visible | true |
---|---|
title | No quadro 22, é mostrado todos os métodos disponíveis na classe TokenService. |
...
getToken
Retorna um token de segurança.
Método:
getToken(String login, String password)
Parâmetros:
- login: login do usuário.
- password: senha do usuário.
Retorno: String.
...
getTokenByLogin
Retorna um token de segurança para o login solicitado.
Método:
getTokenByLogin(int companyId, String colleagueId, String password, String login)
Parâmetros:
- companyId: código da empresa.
- colleagueId: matrícula do usuário.
- password: senha do usuário.
- login: login do usuário que será gerado pelo token.
Retorno: String.
...
getTokenEmail
Retorna um token de segurança para o e-mail solicitado.
Método:
getTokenEmail(int companyId, String email, String password)
Parâmetros:
- companyId: código da empresa.
- email: e-mail do usuário.
- password: senha do usuário.
Retorno: String.
...
validateToken
Valida o token de segurança e retorna o login do usuário.
Método:
validateToken(String token)
Parâmetro:
- token: token do usuário.
Retorno: String.
Quadro 23: Métodos da TokenService.
Exemplo de utilização
Faça o download da classe TokenServiceClient.java, esta exemplifica a utilização dos principais métodos da classe TokenService.
ECMWorkflowEngineService
Webservice responsável por realizar operações referentes a workflow no fluig. Pode ser utilizado para movimentar solicitações, entre outros recursos.
Métodos
...
visible | true |
---|---|
title | No quadro 23, é mostrado todos os métodos disponíveis na classe WorkflowEngineService. |
...
calculateDeadLineHours
Calcula um prazo a partir de uma data com base no expediente e feriados cadastrados no produto passando o prazo em horas.
Método:
calculateDeadLineHours(String username, String password, int companyId, String userId, String data, int segundos, int prazo, String periodId)
Parâmetros:
- username - Usuário de Integração
- password - Senha de Integração
- companyId - Código da empresa
- userId - Matrícula do usuário
- data - data (Tipo String no formato "yyyy-MM-dd").
- segundos - Quantidade de segundos após a meia noite
- prazo - Prazo que será aplicado em horas (Variável int).
- periodId - Código de Expediente
Retorno: Objeto DeadLineDto que contem variáveis com a data e hora.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
calculateDeadLineTime
Calcula um prazo a partir de uma data com base no expediente e feriados cadastrados no produto passando o prazo em minutos.
Método:
calculateDeadLineHours(String username, String password, int companyId, String userId, String data, int segundos, int prazo, String periodId)
Parâmetros:
- username - Usuário de Integração
- password - Senha de Integração
- companyId - Código da empresa
- userId - Matrícula do usuário
- data - data (Tipo String no formato "yyyy-MM-dd").
- segundos - Quantidade de segundos após a meia noite
- prazo - Prazo que será aplicado em minutos (Variável int).
- periodId - Código de Expediente
Retorno: Objeto DeadLineDto que contem variáveis com a data e hora.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
cancelInstance
Cancela uma solicitação.
Método:
cancelInstance(String user, String password, int companyId, int processInstanceId, String userId, String cancelText)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação.
- userId: mátricula do usuário.
- cancelText: comentários do cancelamento.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
cancelInstanceByReplacement
Cancela uma solicitação utilizando usuário substituto.
Método:
cancelInstanceByReplacement(String user, String password, int companyId, int processInstanceId, String userId, String cancelText, String replacementId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação.
- userId: mátricula do usuário.
- cancelText: comentários do cancelamento.
- replacementId: matrícula do usuário substituto.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
Cria nova versão do processo workflow.
Método:
createWorkFlowProcessVersion(String user, String password, int companyId, int processId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: número da solicitação.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
exportProcess
Retorna o processo selecionado em uma String.
Método:
exportProcess (String username, String password, int companyId, String processId)
Parâmetros:
...
Retorno: String que contém a definição do processo.
...
Retorna o processo selecionado no formato zip.
Método:
exportProcessInZipFormat(String username, String password, int companyId, String processId)
Parâmetros:
...
Retorno: byte[] que contém a definição do processo.
...
getActualThread
Retorna a sequência da thread de uma solicitação.
Método:
getActualThread(String user, String password, int companyId, int processInstanceId, int stateSequence)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- userId: matrícula do usuário.
- stateSequence: sequência do estado.
Retorno: int.
...
getAllActiveStates
Retorna o número da atividade em que uma solicitação esta.
Método:
getAllActiveStates(String user, String password, int companyId, String userId, int processInstanceId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- userId: matrícula do usuário.
- processInstanceId: número da solicitação.
Retorno: Integer[].
...
getAllProcessAvailableToExport
Retorna uma lista de processos disponíveis para serem exportados.
Método:
getAllProcessAvailableToExport (String username, String password, int companyId)
Parâmetros:
- username - Usuário de Integração
- password - Senha de Integração
- companyId - Código da empresa
Retorno: ProcessDefinitionDto[].
...
getAllProcessAvailableToImport
Retorna uma lista de processos disponíveis para serem importados.
Método:
getAllProcessAvailableToImport (String username, String password, int companyId)
Parâmetros:
- username - Usuário de Integração
- password - Senha de Integração
- companyId - Código da empresa
Retorno: ProcessDefinitionDto[]
...
getAttachments
Retorna os anexos de uma solicitação.
Método:
getAttachments(String user, String password, int companyId, String userId, int processInstanceId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- userId: matrícula do usuário.
- processInstanceId: número da solicitação.
Retorno: ProcessAttachmentDto[].
...
getAvailableProcess
Retorna os processos que o usuário pode iniciar uma solicitação.
Método:
getAvailableProcess(String username, String password, int companyId, String userId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- userId: matrícula do usuário.
Retorno: ProcessDefinitionVersionDto[].
...
getAvailableProcessOnDemand
Retorna os processos que o usuário pode iniciar uma solicitação, paginados.
Método:
getAvailableProcessOnDemand(String username, String password, int companyId, String userId, int limit, int lastRowId)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- userId: matrícula do usuário.
- limit: número de registros a serem retornados.
- lastRowId: última linha retornada.
Retorno: ProcessDefinitionVersionDto[].
...
getAvailableStates
Retorna o número da próxima atividade de uma solicitação.
Método:
getAvailableStates(String user, String password, int companyId, String processId, int processInstanceId, int threadSequence)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: código do processo.
- processInstanceId: número da solicitação.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: Integer[].
...
getAvailableStatesDetail
Retorna detalhes das atividades disponíveis para seleção...
...
Método:
getAvailableStatesDetail(String user, String password, int companyId, String processId, int processInstanceId, int threadSequence)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: código do processo.
- processInstanceId: número da solicitação.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: ProcessStateDto[].
...
getAvailableUsers
Retorna os usuários que podem executar a tarefa corrente de uma solicitação.
Método:
getAvailableUsers(String username, String password, int companyId, int processInstanceId, int state, int threadSequence)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação.
- state: número da atividade.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: String[].
...
getAvailableUsersOnDemand
Retorna os usuários que podem executar a tarefa corrente de uma solicitação, paginados e com busca.
Método:
getAvailableUsersOnDemand(String username, String password, int companyId, int processInstanceId, int state, int threadSequence, int limit, int initialUser, String userSearch)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação.
- state: número da atividade.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
- limit: número de registros a serem retornados.
- initialUser: última linha retornada.
- userSearch: texto a ser buscado.
Retorno: AvailableUsersDto.
...
getAvailableUsersStart
Retorna os usuários disponíveis na abertura de uma solicitação.
Método:
getAvailableUsersStart (String username, String password, int companyId, String processId, int state, int threadSequence)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: código do processo.
- state: número da atividade.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: String[].
...
getAvailableUsersStartOnDemand
Retorna os usuários disponíveis na abertura de uma solicitação, paginados e com busca.
Método:
getAvailableUsersStart (String username, String password, int companyId, String processId, int state, int threadSequence, int limit, int initialUser, String userSearch)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: código do processo.
- state: número da atividade.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
- limit: número de registros a serem retornados.
- initialUser: última linha retornada.
- userSearch: texto a ser buscado.
Retorno: AvailableUsersDto.
...
getCardValue
Retorna o valor de um campo do registro de formulário.
Método:
getCardValue(String user, String password, int companyId, int processInstanceId, String userId, String cardFieldName)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação.
- userId: mátricula do usuário.
- cardFieldName: nome do campo do registro de formulário.
Retorno: String.
...
getHistories
Retorna lista de históricos de um processo.
Método:
getHistories (String username, String password, int companyId)
Parâmetros:
- username - Usuário de Integração
- password - Senha de Integração
- companyId - Código da empresa
- userId - Matrícula do usuário
- processInstanceId - número da solicitação workflow
Retorno: ProcessHistoryDto[].
...
getInstanceCardData
Retorna o valor dos campos do registro de formulário de uma solicitação.
Método:
getInstanceCardData(String user, String password, int companyId, String userId, int processInstanceId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- userId: matrícula do usuário.
- processInstanceId: número da solicitação.
Retorno: String[][].
...
Retorna o código do formulário vinculado ao processo.
Método:
getProcessFormId(String user, String password, int companyId, string processId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: código do processo.
Retorno: int.
...
Retorna a versão de um processo.
Método:
getWorkFlowProcessVersion(String user, String password, int companyId, int processId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: número da solicitação.
Retorno: int.
...
importProcess
Importa processos workflow.
Método:
importProcess(String user, String password, int companyId, String processId, Attachment file, boolean newProcess, boolean overWrite, String colleagueId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: código do processo.
- file: arquivo a ser importado.
- newProcess: indica se deve ser criado um processo ou atualizado o existente.
- overWrite: indica se as atividades e fluxos do processo existentes devem ser sobrescritas.
- colleagueId : matrícula do usuário.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
Importa processos workflow e formulário.
Método:
importProcessWithCard(String user, String password, int companyId, String processId, Attachment[] processAttachs, boolean newProcess, boolean overWrite, String colleagueId, int parentDocId, String docDescription, String cardDescription, String datasetName, Attachment[] cardAttachs, CardEventDto[] customEvents, boolean update)
Parâmetros:
...
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
Libera processos workflow.
Método:
releaseProcess(String user, String password, int companyId, String processId)
Parâmetros:
...
Estrutura de retorno com erro
...
saveAndSendTask
Movimenta solicitação para próxima atividade.
...
Caso possua os campos preenchidos na solicitação e os valores não forem repassados no cardData ou estiverem vazios, a solicitação também ficará com o valor vazio, onde os valores preenchidos serão apagados caso não seja passado o valor.
Método:
saveAndSendTask(String user, String password, int companyId, int processInstanceId, int choosedState, String[] colleagueIds, String comments, String userId, boolean completeTask, ProcessAttachmentDto[] attachments, String[][] cardData, ProcessTaskAppointmentDto[] appointment, boolean managerMode, int threadSequence)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação.
- choosedState: número da atividade.
- colleagueIds: usuário que receberá a tarefa.
- comments: comentários.
- userId: matrícula do usuário que vai executar a tarefa.
- completeTask: indica se deve completar a tarefa (true) ou somente salvar (false).
- attachments: anexos da solicitação.
- cardData: dados do registro de formulário.
- appointment: apontamentos da tarefa.
- managerMode: indica se usuário esta executando a tarefa como gestor do processo.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: String[][].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
saveAndSendTaskByReplacement
Movimenta solicitação para próxima atividade utilizando usuário substituto.
...
Caso possua os campos preenchidos na solicitação e os valores não forem repassados no cardData ou estiverem vazios, a solicitação também ficará com o valor vazio, onde os valores preenchidos serão apagados caso não seja passado o valor.
Método:
saveAndSendTaskByReplacement (String user, String password, int companyId, int processInstanceId, int choosedState, String[] colleagueIds, String comments, String userId, boolean completeTask, ProcessAttachmentDto[] attachments, String[][] cardData, ProcessTaskAppointmentDto[] appointment, boolean managerMode, int threadSequence, String replacementId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação.
- choosedState: número da atividade.
- colleagueIds: usuário que receberá a tarefa.
- comments: comentários.
- userId: matrícula do usuário que vai executar a tarefa.
- completeTask: indica se deve completar a tarefa (true) ou somente salvar (false).
- attachments: anexos da solicitação.
- cardData: dados do registro de formulário.
- appointment: apontamentos da tarefa.
- managerMode: indica se usuário esta executando a tarefa como gestor do processo.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
- replacementId: matrícula do usuário substituto.
Retorno: String[][].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
saveAndSendTaskClassic
Movimenta solicitação para próxima atividade e retorna um array de objeto com chave e valor.
...
Caso possua os campos preenchidos na solicitação e os valores não forem repassados no cardData ou estiverem vazios, a solicitação também ficará com o valor vazio, onde os valores preenchidos serão apagados caso não seja passado o valor.
Método:
saveAndSendTaskClassic(String user, String password, int companyId, int processInstanceId, int choosedState, String[] colleagueIds, String comments, String userId, boolean completeTask, ProcessAttachmentDto[] attachments, KeyValueDto[] cardData, ProcessTaskAppointmentDto[] appointment, boolean managerMode, int threadSequence)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação.
- choosedState: número da atividade.
- colleagueIds: usuário que receberá a tarefa.
- comments: comentários.
- userId: matrícula do usuário que vai executar a tarefa.
- completeTask: indica se deve completar a tarefa (true) ou somente salvar (false).
- attachments: anexos da solicitação.
- cardData: dados do registro de formulário.
- appointment: apontamentos da tarefa.
- managerMode: indica se usuário esta executando a tarefa como gestor do processo.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Estrutura mínima para movimentação com anexo
...
Nossos serviços estão descritos no formato WSDL (Linguagem de Descrição de Serviços Web)
Segurança
Existem dois principais dispositivos de segurança para o uso dos Web Services SOAP.
Permissão por Web Services e/ou métodos
Por padrão, todos os usuários do fluig podem acessar os serviços. Isso facilita integrações e widgets que possam fazer uso dos serviços SOAP. Mas o administrador do sistema, caso queira, pode bloquear o uso dos serviços como um todo ou de alguns métodos.
Por motivos de retrocompatibilidade, é impossível bloquear o acesso dos serviços SOAP a todos os usuários. O fluig entende que se não há ninguém nas permissões é porque o administrador não quer configurar essa permissão, então para bloquear o acesso dos usuários normais ele deve dar permissão apenas a um usuário (o próprio administrador por exemplo);
Para bloquear o acesso a todos os métodos de um serviço, por exemplo, ECMWorkflowEngineService, o administrador deve entrar no painel de controle e acessar a opção de permissões. Pesquisar por ECMWorkflowEngineService. Irá listar tanto o acesso geral à API ECMWorkflowEngineService quanto a cada um dos métodos.
O administrador pode adicionar permissões para ele próprio no serviço geral do ECMWorkflowEngineService e isso fará com que nenhum usuário possa acessar os métodos desse serviço. Caso queira liberar um método específico , por exemplo startProcess, o administrador pode, mantendo a configuração anterior, acessar as permissões do recurso ECMWorkflowEngineService.startProcess adicionar as permissões conforme a sua necessidade.
Ou se quiser manter acesso a todos os outros métodos mas bloquear somente um método específico, ele deve manter as permissões gerais do serviço sem nenhuma configuração de permissão, e adicionar o usuário administrador nas permissões do método que deseja que seja bloqueado aos demais usuários.
Nota | ||
---|---|---|
| ||
Alguns métodos não foram criados para retornar erros. Então alguns métodos podem retornar informações vazias caso o acesso seja negado. Nestes casos, o log pode ser consultado para verificar a negação de acesso ao serviço. |
Personificação
Por lidar com integrações, alguns métodos permitem que o usuário integrador tome uma ação em nome de outro usuário (por exemplo, um serviço terceiro que utiliza um usuário para integrações pode abrir um chamado em nome de um usuário normal do fluig). Você pode limitar os usuários que conseguem tomar ação em nome de outros usuários pelos Web Services entrando no painel de controle e acessando a opção de permissões. Pesquisar por Personificação.
Nota | ||
---|---|---|
| ||
Assim como nas permissões dos Web Services, o fluig entende que se não há ninguém nas permissões é porque o administrador não quer configurar essa permissão, então para bloquear o acesso dos usuários normais ele deve dar permissão apenas a um usuário (o próprio administrador por exemplo) |
Permissões das funções acessadas
Independente das permissões anteriores, o fluig continua respeitando as permissões inerentes às funções acessadas. Ou seja, para configurar um processo, o usuário precisa ter acesso a página de configurar processos. Para acessar um documento, o usuário precisa ter permissão para visualizar o documento em si.
Como utilizar os Web Services em softwares terceiros
Verificando os serviços e chamadas manuais
Se você quer verificar o uso dos serviços ou mesmo fazer uma chamada individual você pode fazê-lo através de um aplicativo qualquer com suporte a requisições do tipo SOAP. Insira a url de um dos serviços disponíveis na url /services e preencha os dados conforme solicitado pelo aplicativo.
Criando rotinas automatizadas
O primeiro passo é fazer o download dos stubs, que são classes modelos que irão auxiliar no preenchimento dos dados utilizados por cada um dos serviços.
JDK 8 e inferiores
Se você usa a JDK do java na versão 8 ou inferior, você pode utilizar este utilitário que disponibilizamos para gerar os stubs de todos os serviços.
Ou fazer de forma manual, caso precise apenas de um Web Service específico, usando o comando wsimport:
Bloco de código | ||||
---|---|---|---|---|
| ||||
wsimport -d C:\stubs\ https://<endereco_fluig:porta>/webdesk/ECMWorkflowEngineService?wsdl |
Após esse download manual, você pode gerar o arquivo .jar para gerar uma lib para ser utilizada no seu projeto (o nosso utilitário já executa esse comando):
Bloco de código | ||||
---|---|---|---|---|
| ||||
jar -cvf fluig-ws-client.jar C:\stubs\*.* |
JDK 11 e superiores
Nas versões mais recentes da JDK o utilitário wsimport foi removido. Você pode baixar por outras fontes ou utilizar no lugar o Apache CXF (https://cxf.apache.org/)
Bloco de código | ||||
---|---|---|---|---|
| ||||
wsdl2java -client -compile -d C:\stubs\ -classdir C:\stubs\ -encoding UTF-8 -compile https://<endereco_fluig:porta>/webdesk/ECMWorkflowEngineService?wsdl |
Após a geração dos stubs de todos os serviços que seja necessário, você deve gerar o arquivo .jar que será utilizado como biblioteca pela sua implementação:
Bloco de código | ||||
---|---|---|---|---|
| ||||
jar -cvf fluig-ws-client.jar C:\stubs\*.* |
Importando a lib e desenvolvendo sua integração
Após a geração do arquivo fluig-ws-client.jar (conforme descrito nos passos anteriores) você pode desenvolver sua própria API.
Se quiser gerar uma biblioteca para usar dentro do próprio Fluig, ou mesmo alguns exemplos de como utilizar as integrações, você pode consultar nossa documentação
Para saber como ou então aprender como utilizar a biblioteca gerada, aqui você encontra um exemplo prático de utilização em artefatos publicados no fluig.
POST, não PUT
É importante salientar que todos os dados enviados (ou não enviados) em um método de alteração são considerados. Se um campo não for enviado, o sistema vai considerar que o valor dele deve ser deixado em branco, nulo ou zerado, conforme o tipo de dado. Então, mesmo que você queira apenas modificar a descrição do arquivo, você deve passar todos os outros dados do documento.
Disponibilidade dos Web Services
Lembre-se que a sua integração pode ocorrer em um momento que o fluig não está no ar. Seja por uma atualização ou regra de economia de energia, esteja preparado nas suas integrações para indisponibilidade do servidor. Ou seja, use try/catch.
Como utilizar os Web Services do Fluig no próprio Fluig?
Você pode utilizar os serviços do Fluig no próprio Fluig, da mesma forma que utiliza serviços de terceiros. Para isso, o administrador deve entrar no Painel de Controle e acessar a opção de Serviços. Criar um novo serviço do tipo SOAP, definir um nome (por exemplo ECMWorkflowEngineService, este nome será usado depois para referenciar este cadastro), uma descrição para outros identificarem que serviço é este e a URL do serviço (por exemplo, https://<endereco_fluig:porta>/webdesk/ECMWorkflowEngineService?wsdl)
Usando o editor web (sem codificação)
Na configuração de processo, crie ou edite um processo e adicione uma atividade de serviço. Acesse as propriedades dessa atividade e selecione o serviço ECMWorkflowEngineService (ou o nome que você utilizou no cadastro) e selecione a operação (por exemplo, startProcess).
Preencha os campos que serão utilizados e confirme.
Codificando
Você também pode fazer a codificação da chamada dos métodos dos serviços, fazendo com quem um dataset faça a inicialização da solicitação ou mesmo caso a opção sem codificação não atenda as suas necessidades. Para lhe ajudar, criamos este exemplo com mais documentação do que está sendo feito.
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
//configure os dados do seu usuário integrador
var INTEGRADOR = {
matricula: 'integrador',
senha: '9a411f45fcea479ffb839a3ee605c18d',
empresa: 1
};
// conforme o cadastro do fluig
var SERVICOS = {
workflowEngineService: "ECMWorkflowEngineService"
}
/**
* Função que cria uma solicitação via Soap no Fluig
*
*/
function startProcess() {
var serviceHelper = getECMWorkflowEngineServiceHelper();
var service = getECMWorkflowEngineService(serviceHelper);
// Nome do processo a ser iniciado
var processId = "processoASerIniciado";
// Atividade para qual será movimentada a solicitação
var choosedState = 2;
// Lista das matrículas de usuários que irão receber a atividade. Normalmente é um usuário, mas no caso de um consenso podem ser vários
var colleagueIds = createStringArray(serviceHelper);
colleagueIds.getItem().add("adm");
// Comentário da movimentação
var comments = "Iniciado via ws";
// Usuário que ficará como o inicializador da solicitação. O usuário integrador precisa ter personificação caso seja um usuário diferente do integrador
var userId = INTEGRADOR.matricula;
// Se vai completar a tarefa inicial (true) ou não, vai apenas salvar a solicitação para gerar um código e preencher o formulário, anexos e comentários
var completeTask = true;
// Lista de anexos. Mesmo que não seja enviado nenhum, é necessário enviar a lista vazia
var attachments = createProcessAttachmentDtoArray(serviceHelper);
// Dados do formulário. Mesmo que não tenha formulário ou não seja preenchido, é necessário enviar a lista vazia
var cardData = createStringArrayArray(serviceHelper);
// Apontamentos da solicitação. Não é mais utilizado, mas por compatibilidade é necessário enviar a lista vazia
var appointments = createProcessTaskAppointmentDtoArray(serviceHelper);
// Se a movimentação é feita como usuário responsável pela atividade ou como gestor do processo
var managerMode = false;
// Chama o serviço para iniciar a solicitação e recebe o retorno
// O retorno do startProcess é um String[][], ou no Soap, um StringArrayArray
var retornoStartProcess = service.startProcess(
INTEGRADOR.matricula,
INTEGRADOR.senha,
INTEGRADOR.empresa,
processId,
choosedState,
colleagueIds,
comments,
userId,
completeTask,
attachments,
cardData,
appointments,
managerMode
);
var retorno = stringArrayArrayToSimpleObject(retornoStartProcess);
if (retorno.ERROR) {
// Interrompe a execução ou movimentação e retorna um erro com a resposta do serviço
throw "Solicitação não iniciada: " + retorno.ERROR;
} else {
// Imprime o código da solicitação criada pelo serviço e depois imprime todos os dados que foram retornados
log.info("Solicitação " + retorno.iProcess + " criada com sucesso");
log.dir(retorno)
}
}
function getECMWorkflowEngineServiceHelper() {
return ServiceManager.getService(SERVICOS.workflowEngineService).getBean();
}
function getECMWorkflowEngineService(serviceHelper) {
var serviceLocator = serviceHelper.instantiate("com.totvs.technology.ecm.workflow.ws.ECMWorkflowEngineServiceService");
return serviceLocator.getWorkflowEngineServicePort();
}
/**
* Cria uma variável similar ao String[] que é utilizado pelo Soap
* @param serviceHelper O wsdl que contém o mapeamento da estrutura de um objeto do tipo net.java.dev.jaxb.array.StringArray
* @returns Um objeto do tipo net.java.dev.jaxb.array.StringArray conforme o mapeamento do wsdl
*/
function createStringArray(serviceHelper) {
return serviceHelper.instantiate('net.java.dev.jaxb.array.StringArray');
}
/**
* Cria uma variável similar ao String[][] que é utilizado pelo Soap
* @param serviceHelper O wsdl que contém o mapeamento da estrutura de um objeto do tipo net.java.dev.jaxb.array.StringArrayArray
* @returns Um objeto do tipo net.java.dev.jaxb.array.StringArrayArray conforme o mapeamento do wsdl
*/
function createStringArrayArray(serviceHelper) {
return serviceHelper.instantiate('net.java.dev.jaxb.array.StringArrayArray');
}
/**
* Cria uma variável similar ao ProcessAttachmentDto[] que é utilizado pelo Soap
* @param serviceHelper O wsdl que contém o mapeamento da estrutura de um objeto do tipo com.totvs.technology.ecm.workflow.ws.ProcessAttachmentDtoArray
* @returns Um objeto do tipo com.totvs.technology.ecm.workflow.ws.ProcessAttachmentDtoArray conforme o mapeamento do wsdl
*/
function createProcessAttachmentDtoArray(serviceHelper) {
return serviceHelper.instantiate('com.totvs.technology.ecm.workflow.ws.ProcessAttachmentDtoArray');
}
/**
* Cria uma variável similar ao ProcessTaskAppointmentDto[] que é utilizado pelo Soap.
*
* Estes apontamentos não são mais usados, mas como não devemos mexer na assinatura dos métodos Soap para não quebrar os stubs já gerados é obrigatório mandar, ainda que vazio
*
* @param serviceHelper O wsdl que contém o mapeamento da estrutura de um objeto do tipo com.totvs.technology.ecm.workflow.ws.ProcessTaskAppointmentDtoArray
* @returns Um objeto do tipo com.totvs.technology.ecm.workflow.ws.ProcessTaskAppointmentDtoArray conforme o mapeamento do wsdl
*/
function createProcessTaskAppointmentDtoArray(serviceHelper) {
return serviceHelper.instantiate('com.totvs.technology.ecm.workflow.ws.ProcessTaskAppointmentDtoArray');
}
/**
* Transforma um objeto do tipo StringArrayArray (String[][]) em um objeto Javascript
*
* <item>
* <item>campo</item>
* <item>valor</item>
* </item>
*
* Vira:
*
* {'campo': 'valor'}
*
* @param stringArrayArray
* @returns Um objeto do tipo javascript
*/
function stringArrayArrayToSimpleObject(stringArrayArray) {
var objeto = {};
for(var i = 0; i < stringArrayArray.getItem().size(); i++) {
var item = stringArrayArray.getItem().get(i).getItem();
objeto[item.get(0)] = item.get(1);
}
return objeto;
} |
Objetivo
O objetivo deste documento é descrever a utilização de Webservices, mostrar e explicar todos seus métodos, disponibilizar exemplos de classes que utilizam esses Webservices e mostrar exemplos de geração de stubs que são necessários para que os clients possam se comunicar com o serviço.
Pré-requisitos
Para que se tenha uma compreensão completa destas informações, alguns conhecimentos são considerados pré-requisitos, entre eles:
- Visão geral sobre o fluig
- Visão geral sobre integração de sistemas
- WebServices
Dica | ||
---|---|---|
| ||
A equipe TOTVS Fluig recomenda a utilização da API em exemplos que utilizam o método SOAP, pois seu uso é mais complexo em comparação com a API e está caindo em desuso. |
Como acessar
Para acessar os webservices do TOTVS Fluig Plataforma, é preciso acessar o URL https://<endereco_fluig:porta>/webdesk/services.
Criar Stubs
Os stubs são necessários para que os clients que utilizam os métodos dos Webservices possam se comunicar com o serviço.
Para criar um stub é necessário que o serviço do fluig esteja inicializado. Depois de iniciar o serviço, deve-se abrir o Prompt de comando e utilizar a sintaxe: wsimport -d <output_directory> <wsdl_url>, onde output_directory é o diretório onde o stub será criado e wsdl_url é a url de acesso ao serviço. Após isso, basta apertar Enter e o resultado aparecerá conforme mostra a figura 1.
Nota | ||
---|---|---|
| ||
Foi criado um facilitador para gerar todos os stubs, basta baixar o documento Cliente Web Service.zip. Basta descompactá-lo e executar o arquivo "fluig-ws.sh", informe o nome e porta do servidor. Após executar, será gerado o "fluig-ws-client.jar". Importe o .jar para acesso ao serviço. Aqui você encontra um exemplo (ws-soap e webservice) prático de utilização em artefatos publicados no fluig. |
Figura 1: Exemplo de criação de stub
Cloak | ||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||
No Quadro 1 (abaixo) são listados os comandos necessários para a criação de stubs de cada serviço disponível no fluig.
Quadro 1: Comandos para criação de stubs. |
Considerações Métodos de Update
Para os métodos de update que recebem objetos complexos é obrigatório passar todos os campos do objeto alterado. Os campos não informados serão substituídos por branco, nulo ou zero, dependendo do seu tipo.
Para evitar esta situação, sugerimos sempre utilizar os métodos get para recuperar o objeto, efetuar as alterações nos campos necessários e enviá-lo para o método update.
Nota |
---|
|
...
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 pdf_para_teste.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>.
Retorno: KeyValueDto[].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
searchProcess
Busca processo disponíveis para inicialização.
Método:
searchProcess(String user, String Password, int companyId, String colleagueId, String content, boolean favorite)
Parametros
- user - Usuário de Integração
- password - Senha de Integração
- companyId - Código da empresa
- colleagueId - Matrícula do usuário
- content – nome do processo a ser pesquisado
- favorite – busca da lista de processos favoritos ou da listagem padrão.
Retorno: ProcessDefinitionVersionDto[]
...
setAutomaticDecisionClassic
Seleciona usuário(s) e avança atividade automática.
Método:
setAutomaticDecisionClassic(String user, String password, int companyId, int processInstanceId, int iTaskAutom, int iTask, int condition, String[] colleagueIds, String comments, String userId, boolean managerMode, int threadSequence)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação.
- iTaskAutom: número da atividade automática.
- iTask: número da atividade atual.
- condition: número da condição da atividade automática.
- colleagueIds: usuário que receberá a tarefa.
- comments: comentários.
- userId: matrícula do usuário que vai executar a tarefa.
- managerMode: indica se usuário esta executando a tarefa como gestor do processo.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: KeyValueDto[]
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
setDueDate
Altera a data de prazo da tarefa.
Método:
setDueDate(String user, String password, int companyId, int processInstanceId, String userId, int threadSequence, String newDueDate, int timeInSeconds)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação.
- userId: matrícula do usuário. Quando é Para um Grupo ou Para um Papel deve ser passado da seguinte forma:
Papel: "Pool:Role:CodigoDoPapel";
Grupo: "Pool:Group:CodigoDoGrupo". - threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
- newDueDate: nova data de prazo da tarefa. Exemplo: "2014-08-20".
- timeInSeconds: quantidade de segundos após a meia noite. Exemplo: "32000".
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
setTasksComments
Altera os comentários da tarefa.
Método:
setTasksComments(String user, String password, int companyId, int processInstanceId, String userId, int threadSequence, String comments)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação.
- userId: mátricula do usuário.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
- comments: comentários.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
simpleStartProcess
Inicia uma solicitação simples.
Método:
simpleStartProcess(String user, String password, int companyId, String processId, String comments, ProcessAttachmentDto[] attachments, String cardData[][])
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: código do processo.
- comments: comentários.
- attachments: anexos da solicitação.
- cardData: dados do registro de formulário.
Retorno: String[].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Para utilização do método, acesse o exemplo a seguir:
...
startProcess
Inicia uma solicitação.
Método:
startProcess(String user, String password, int companyId, String processId, int choosedState, String[] colleagueIds, String comments, String userId, boolean completeTask, ProcessAttachmentDto[] attachments, String[][] cardData, ProcessTaskAppointmentDto[] appointment, boolean managerMode)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: código do processo.
- choosedState: número da atividade.
- colleagueIds: usuário que receberá a tarefa. Caso a solicitação esteja sendo atribuída "Para um Papel" ou "Para um Grupo", o parâmetro colleagueIds deve ser informado da seguinte forma:
Papel: Pool:Role:Nome_do_papel
Grupo: Pool:Group:Nome_do_grupo - comments: comentários.
userId: matrícula do usuário que vai iniciar a solicitação.
- completeTask: indica se deve completar a tarefa (true) ou somente salvar (false).
- attachments: anexos da solicitação.
- cardData: dados do registro de formulário.
- appointment: apontamentos da tarefa.
- managerMode: indica se usuário esta iniciando a solicitação como gestor do processo.
Retorno: String[][].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Para utilização do método, acesse o exemplo a seguir:
...
startProcessClassic
Inicia uma solicitação e retorna um array de objeto com chave e valor.
Método:
startProcessClassic(String user, String password, int companyId, String processId, int choosedState, String[] colleagueIds, String comments, String userId, boolean completeTask, ProcessAttachmentDto[] attachments, KeyValueDto[] cardData, ProcessTaskAppointmentDto[] appointment, boolean managerMode)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processId: código do processo.
- choosedState: número da atividade.
- colleagueIds: usuário que receberá a tarefa.
- comments: comentários.
- userId: matrícula do usuário que vai iniciar a solicitação.
- completeTask: indica se deve completar a tarefa (true) ou somente salvar (false).
- attachments: anexos da solicitação.
- cardData: dados do registro de formulário.
- appointment: apontamentos da tarefa.
- managerMode: indica se usuário esta iniciando a solicitação como gestor do processo.
Retorno: String[][].
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Para utilização do método, acesse o exemplo a seguir:
...
takeProcessTask
Assume uma tarefa.
Método:
takeProcessTask(String user, String password, int companyId, String userId, int processInstanceId, int threadSequence)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- userId: matrícula do usuário.
- processInstanceId: número da solicitação.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
takeProcessTaskByReplacement
Assume uma tarefa utilizando usuário substituto.
Método:
takeProcessTask(String user, String password, int companyId, String userId, int processInstanceId, int threadSequence, String replacementId)
Parâmetros:
- user: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- userId: matrícula do usuário.
- processInstanceId: número da solicitação.
- threadSequence: Indica se existe atividade paralela no processo. Se não existir o valor é 0 (zero), caso exista, este valor pode ser de 1 a infinito dependendo da quantidade de atividade paralelas existentes no processo.
- replacementId: matrícula do usuário substituto.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
...
updateWorkflowAttachment
Atualiza um documento do tipo 7.
Retorna uma string contendo a descrição de sucesso ou falha da operação.
Método:
updateWorkflowAttachment(String username, String password, int companyId, int processInstanceId, String usuario, DocumentDto[] docdtos, Attachment[] attach)
Parâmetros:
- username: login do usuário.
- password: senha do usuário.
- companyId: código da empresa.
- processInstanceId: número da solicitação workflow.
- usuario: usuário responsável pela edição do documento.
- documents: documento ou documentos que serão publicados.
- attachments: arquivo(s) anexado(s) na publicação.
Retorno: String.
Estrutura de retorno com sucesso
Estrutura de retorno com erro
Quadro 24: Métodos da WorkflowEngineService
Exemplo de utilização
Faça o download da classe ECMWorkflowEngineService.java, esta exemplifica a utilização dos principais métodos da classe WorkflowEngineService.
ECMWorkflowRoleService
Webservice responsável por realizar operações referentes a papéis no fluig. Pode ser utilizado para criar, alterar, excluir e procurar papéis, entre outros recursos.
Métodos
Cloak | |||||
---|---|---|---|---|---|
| |||||
createWorkflowRole | deleteWorkflowRole | getWorkflowRole | getWorkflowRoles | updateWorkflowRole |