APIs do SoftExpert Processo
Apresentação
Veja abaixo as APIs disponíveis no SoftExpert Processo:
API PHP (Workflow)
O objetivo desta API é permitir consultar e editar dados de uma instância do processo. São disponibilizados métodos em PHP para realizar as operações.
Dessa forma, não é necessário conhecer a base de dados do Workflow e, também, se garante que as alterações no sistema sejam aplicadas na API sem necessidade de adequações por parte do cliente.
Utilização da API
A API do Workflow deve ser utilizada em uma aplicação externa associada em uma atividade de sistema ou na ação do Workflow.
Para criar uma aplicação externa, deve-se acessar o menu de cadastro PM042.
O primeiro passo no arquivo da aplicação externa é fazer o require_once do arquivo global.php.
O caminho "../../" significa que a aplicação externa está 2 diretórios a partir da raiz do SoftExpert Suite. Exemplo: workflow/wf_app/my_app.php.
Em seguida deve-se realizar o require_once da API do workflow. Para isso deve-se utilizar o arquivo: workflow/api/class.WorkflowAPI.inc.
Feito isso, basta criar o objeto da API passando como parâmetro o código da instância. Por padrão, todas as aplicações externas do sistema já recebem o parâmetro "oid_process".
Não é necessário passar parâmetros adicionais para esse propósito, como o quadro 01 exemplifica:
require_once('../../global.php');
require_once('workflow/api/class.WorkflowAPI.inc');
$workflow_api = new WorkflowAPI($_REQUEST["oid_process"]); //WFPROCESS.IDOBJECT
Métodos
A API suporta os métodos para buscar e atualizar campos do formulário ou atributos do processo. Os métodos são:
getAttributeValue | Busca o valor de um atributo do processo. |
getEntityAttributeValue | Busca o valor de um campo do formulário. |
getEntityRelationshipValue | Busca o valor de uma lista de valores do formulário. |
getDateToday | Busca a data atual. |
getTimeNow | Busca a hora atual. |
setAttributeValue | Edita o valor de um atributo do processo. |
setEntityAttributeValue | Edita o valor de um campo do formulário. |
setEntityRelationshipValue | Edita o valor de um campo lista de valores do formulário. |
setWorkflowTitle | Altera o título do workflow. |
getWorkflowTitle | Busca o título do workflow. |
API de inicialização
Inicia uma instância do processo modelo, tipo de incidente ou tipo de problema passado por parâmetro.
Workflow
https://domain/se/workflow/api/new_workflow.php?processid=PROCESSID&workflowtitle=WORKFLOWTITLE
Parâmetros
PROCESSID | Identificador do processo. |
WORKFLOWTITLE | Título do workflow. |
INCIDENTTYPEID | Identificador do tipo de incidente. |
INCIDENTTITLE | Título do tipo de incidente. |
PROBLEMTYPEID | Identificador do tipo de problema. |
PROBLEMTITLE | Título do tipo de problema. |
API de execução
Abre a tela da tarefa de execução (o parâmetro activitysequence é requerido quando há mais de uma atividade com o mesmo identificador).
Workflow
https://domain/se/workflow/api/execute_activity.php?workflowid=WORKFLOWID&activityid=ACTIVITYID&activitysequence=ACTIVITYSEQ
Parâmetros
WORKFLOWID | Identificador do workflow (instância). |
ACTIVITYID | Identificador da atividade. |
ACTIVITYNRORDER | Número da ordem (o parâmetro activityorder é requerido quando há mais de uma atividade com o mesmo identificador). |
INCIDENTID | Identificador do incidente (instância). |
PROBLEMID | Identificador do problema (instância). |
API de consulta
Abre a tela de dados da instância.
Workflow
https://domain/se/workflow/api/view_workflow.php?workflowid=WORKFLOWID
Parâmetros
WORKFLOWID | Identificador do workflow (instância). |
PROBLEMID | Identificador do problema (instância). |
INCIDENTID | Identificador do incidente (instância). |