50 lines
1.9 KiB
Markdown
50 lines
1.9 KiB
Markdown
|
|
---
|
|||
|
|
title: Tratamento de exceções
|
|||
|
|
source: https://tdn.totvs.com/pages/viewpage.action?pageId=270921008
|
|||
|
|
path: \Plataforma Documentação técnica\Desenvolvimento sobre a plataforma\Desenvolvimento de Eventos\Tratamento de exceções.md
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
As exceções podem ser tratadas nos seguintes eventos: *beforeStateEntry, beforeTaskSave* e *beforeCancelProcess*. O tratamento de exceção no evento *beforeStateEntry* pode ser utilizado na inicialização de solicitações, pois ele impede que a solicitação seja iniciada. Em contrapartida o tratamento de exceção no evento *beforeTaskSave* pode ser utilizado somente se a solicitação já estiver inicializada.
|
|||
|
|
|
|||
|
|
Abaixo é apresentado os modelos para utilização em cada um dos eventos:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
function beforeStateEntry(sequenceId) {
|
|||
|
|
var activity = getValue("WKNumState");
|
|||
|
|
if (activity == 0 || activity == 1) {
|
|||
|
|
//Outra condição.
|
|||
|
|
throw "TRATAMENTO DE EXCEÇÃO";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function beforeTaskSave(colleagueId, nextSequenceId, userList) {
|
|||
|
|
var activity = getValue("WKNumState");
|
|||
|
|
if (activity != 0 && activity != 1) {
|
|||
|
|
//Outra condição
|
|||
|
|
throw "TRATAMENTO DE EXCEÇÃO";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function beforeCancelProcess(colleagueId, processId) {
|
|||
|
|
//Condição.
|
|||
|
|
throw "TRATAMENTO DE EXCEÇÃO";
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
É possível consultar o campo Observação de uma solicitação de processo, verificando se ele foi preenchido ou não. Para isto, é necessário validar a propriedade *WKUserComment* no evento *beforeTaskSave* ou no evento *beforeCancelProcess*.
|
|||
|
|
|
|||
|
|
**Exemplo:**
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
function beforeTaskSave(colleagueId, nextSequenceId, userList) {
|
|||
|
|
if (getValue("WKUserComment") == null || getValue("WKUserComment") == "") {
|
|||
|
|
throw "A observação deve ser preenchida";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function beforeCancelProcess(colleagueId, processId) {
|
|||
|
|
if (getValue("WKUserComment") == null || getValue("WKUserComment") == "") {
|
|||
|
|
throw "A observação deve ser preenchida";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|