Funções específicas de evento de fluxo de trabalho
Existem várias funções relacionadas especificamente a eventos de fluxo de trabalho.
| Função | Descrição | Finalidade | Usar | Thread | Fonte |
|---|---|---|---|---|---|
| registerForEvent (eventName) | Função no ambiente de fluxo de trabalho que grava eventos representados como cadeias de caracteres no campo wf_executing.registered_events. |
Os eventos de fluxo de trabalho são apenas cadeias de caracteres. Quando uma atividade registrada para um evento é executada, um conjunto de eventos delimitado por vírgulas é armazenado com o registro de Atividade de execução de fluxo de trabalho [wf_executing]. Quando o evento é acionado no contexto de fluxo de trabalho, a tabela wf_executing procura todos os registros em execução que contêm a cadeia de caracteres que representa o evento no campo wf_executing.registered_events. |
O fluxo de trabalho de variável global que está disponível para todos os registros de Atividade de fluxo de trabalho [wf_activity] é a origem da chamada. Por exemplo, dentro de uma atividade Executar script, um designer pode gravar: workflow.registerForEvent('myEventName'); |
Thread atual, mutex atual | Fluxo de trabalho de variável global |
| unRegisterForEvent (eventName) | Função no ambiente de fluxo de trabalho que remove um valor de cadeia de caracteres representando um evento que foi gravado no campo wf_executing.registered_events. |
Os eventos de fluxo de trabalho são apenas cadeias de caracteres gravadas no campo wf_executing.registered_events. Quando uma atividade desfaz o registro para um evento, um conjunto de eventos delimitado por vírgulas armazenado com o registro de Atividade de execução de fluxo de trabalho [wf_executing] é pesquisado e, se a cadeia de caracteres foi encontrada, é removido. |
O fluxo de trabalho de variável global que está disponível para todos os registros de Atividade de fluxo de trabalho [wf_activity] é a origem da chamada. Por exemplo, dentro de uma atividade Executar script, um designer pode gravar: workflow.unRegisterForEvent('myEventName'); |
Thread atual, mutex atual | Fluxo de trabalho de variável global |
| fireEvent (eventName) | Função no ambiente de fluxo de trabalho que examina o conteúdo do campo wf_executing.registered_events, comparando seu conteúdo com o eventName passado. |
Os eventos de fluxo de trabalho são apenas cadeias de caracteres gravadas no campo wf_executing.registered_events. Quando fireEvent(eventName) é chamado por uma atividade de fluxo de trabalho, o mecanismo de fluxo de trabalho enfileira todos os registros em execução que contenham a cadeia de caracteres no campo registrado. |
O fluxo de trabalho de variável global que está disponível para todos os registros de Atividade de fluxo de trabalho [wf_activity] é a origem da chamada. Por exemplo, dentro de uma atividade Executar script, um designer pode gravar: workflow.fireEvent('myEventName'); |
Thread atual, mutex atual | Fluxo de trabalho de variável global |
| fireEvent (eventRecord, eventName) | Função no ambiente de fluxo de trabalho que envia um evento para um registro específico de Atividade de execução de fluxo de trabalho [wf_executing]. O eventRecord é um GlideRecord do tipo wf_executing. |
Esta chamada de evento espera um manipulador de eventos onMyEvent na atividade representada no registro do evento (tabela Atividade de execução de fluxo de trabalho [wf_executing]). Quando fireEvent(eventRecord, eventName) é chamado por uma atividade de fluxo de trabalho, o mecanismo de fluxo de trabalho enfileira o registro de execução específico com esse evento e passa o evento à definição de atividade para que o manipulador on<eventName> gerencie. Este evento é enfileirado em seu próprio mutex, portanto a fila atual é concluída antes que o evento seja processado. | A inclusão de script de fluxo de trabalho contém a chamada para isso. Por exemplo, dentro de uma atividade Executar script, um designer pode gravar: var w = new Workflow(); w.fireEvent(executing, eventName); |
Thread atual, mutex atual | Fluxo de trabalho inclusão de script |
| fireEvent (eventRecordSysId, eventName) | Função no ambiente de fluxo de trabalho que envia um evento para um registro específico de Atividade de execução de fluxo de trabalho [wf_executing]. O eventRecordSysId é o sys_id de um GlideRecord do tipo wf_executing. |
Este é o mesmo que o fireEvent acima, exceto que ele aceita um ID e retorna o registro da Atividade de execução de fluxo de trabalho [wf_executing]. | A inclusão de script Fluxo de trabalho contém a chamada para isso. Por exemplo, dentro de uma atividade Executar script, um designer pode gravar: var w = new Workflow(); w.fireEvent(executing, eventName); |
Thread atual, mutex atual | Fluxo de trabalho inclusão de script |
| fireEvent (eventRecordSysId, eventName, optionalJSONObject) | Função no ambiente de fluxo de trabalho que envia um evento para um registro específico de Atividade de execução de fluxo de trabalho [wf_executing]. O eventRecordSysId é o sys_id de um GlideRecord do tipo wf_executing. |
Este é o mesmo que o fireEvent acima, exceto que ele aceita um objeto JSON como um terceiro parâmetro. Este objeto pode especificar qualquer dado expressável como JSON. Você também pode especificar a funcionalidade adicional ao criar uma atividade de fluxo de trabalho. | A inclusão de script Fluxo de trabalho contém a chamada para isso. Por exemplo, dentro de uma atividade Executar script, um designer pode gravar: var w = new Workflow(); w.fireEvent(executing, eventName, JSONObject); |
Thread atual, mutex atual | Fluxo de trabalho inclusão de script |
| broadcastEvent (contextId, eventName) | Função no ambiente de fluxo de trabalho que envia um evento para todos os registros de Atividade de execução de fluxo de trabalho [wf_executing] em execução em um contexto específico, seja qual for o estado deles. | Este é o mesmo que o fireEvent acima, exceto que ele aceita um ID e retorna o registro da Atividade de execução de fluxo de trabalho [wf_executing]. | A inclusão de script Fluxo de trabalho contém a chamada para isso. Por exemplo, dentro de uma atividade Executar script, um designer pode gravar: var w = new Workflow(); w.broadcastEvent(contextId, eventName); |
Thread atual, mutex atual | Fluxo de trabalho inclusão de script |
| broadcastEvent (eventName) | Função no ambiente de fluxo de trabalho que envia um evento para todos os registros de Atividade de execução de fluxo de trabalho [wf_executing] em execução no contexto atual, seja qual for o estado deles. | Não deve ser confundido com broadcastEvent acima. Este evento está disponível somente para registros atuais de Atividade de execução de fluxo de trabalho [wf_executing]. | Isso está disponível somente por meio da variável de fluxo de trabalho global do contexto atual. A seguir é apresentado um exemplo do uso em um script de definição de atividade: workflow.broadcastEvent(eventName) |
Thread atual, mutex atual | Fluxo de trabalho de variável global |