Índice


A hAPI é uma API (Application Programming Interface) disponibilizada pela plataforma Fluig que permite o acesso a diversas funcionalidades do sistema. Essa API é amplamente utilizada no desenvolvimento de processos e aplicações personalizadas, e é fundamental para quem deseja tirar o máximo proveito da plataforma. Nesta documentação, apresentaremos as principais funções da hAPI e como utilizá-las.


Descrição


O objeto mais importante nos eventos de processo é a hAPI (nova). Com ele o desenvolvedor pode consultar e atribuir dados do formulário, obter informações da movimentação como id do histórico de movimentação, thread, atividades para onde a solicitação atual pode ser movimentada, outras atividades ativas, solicitação que gerou a solicitação atual (no caso de ser um sub-processo), link para uma determinada atividade (que pode ser usado para o envio de notificações), calcular prazo de conclusão dinamicamente, trabalhar com os anexos da solicitação (adicionando, listando, ou publicando os itens atuais no GED) e atribuir valores como prazo de conclusão, comentários.

Além disso, consegue tomar ações como transferir atividade e iniciar solicitações.

Pode ser utilizada em todos os eventos do processo (before, after, services e condicionais), evento de notificação (onNotify) e eventos globais (como displayCentralTask, afterSaveCard, entre outros). Neste último caso, por não estar associado diretamente à uma solicitação, nem todos os métodos está disponíveis e a documentação do método deve ser consultada antes do desenvolvimento.


Esta documentação está em construção e por isso ainda está incompleta. Para ter visualizar todos os métodos, acesse a nossa documentação antiga.


Métodos da instância


String getCardValue(String fieldName)


void setCardValue(String fieldName, String newValue)


Map<String,String> getCardData(int instanceId)


void addCardChild(String tableName, Map<String, String> childData)


boolean removeCardChild(String tableName, int index)


List<Integer> getChildrenInstances(int instanceId)


Integer getParentInstance(int instanceId)


List<Integer> getActiveStates()


void setDueDate(int instanceId, int threadSequence, String userId, Object data, int timeInSeconds)


void transferTask(List<String> users, String comment, int threadSequence)


void transferTask(List<String> users, String comment)


WorkflowSaveAndSendResultVO startProcess(String processId, int chosenState, List<String> colleagues, String comments, boolean completeTask, Map cardData, Boolean managerMode)


setColleagueReplacement(userId)

setTaskComments("userId", numProcesso,  numThread, "obs")


getAdvancedProperty("propriedade")

calculateDeadLineHours(data, segundos, prazo, periodId)

calculateDeadLineTime(data, segundos, prazo, periodId)

getUserTaskLink(numAtiv)

createAdHocTasks(workflowProcessInstanceId, sequenceId, assunto, detalhamento, listatvidadesAhoc)

listAttachments()

publishWorkflowAttachment(documento)

attachDocument(documentId)

getAvailableStatesDetail(companyId, userId, processId, processInstanceId, threadSequence)


int getDocumentId()

Retorna o código de documento do registro de formulário atual


int getVersion()

Retorna a versão do registro de formulário atual


int getCardIndex()

Retorna o código do formulário do qual o registro de formulário pertence


int getValue(String fieldname)

Retorna o valor do campo fieldname no registro de formulário atual. 


Depreciado:

getActualThread

setDueDate(long companyId, int processInstanceId, int movementSequence, String userId, Date newDueDate,
            int timeInSeconds)


<working in progress>

<