Retorna a lista de atualizações dos eventos do módulo Workflow.
URL
{WSUrl}/api/events/<Códigodoevento>/updates[[[&]show_child_events=<filtro>][[&]$filter=<filtro>][[&]page=<Página>][[&]page_size=<Tamanhodapágina>][[&]$orderby=<campo1[desc],campo2[desc]…campoN[desc]>]]
MÉTODO DE SOLICITAÇÃO
GET
PARÂMETROS DA URL
EventCode: esse parâmetro é fornecido na URL e não precisa ser enviado através do GET.
show_child_events: inclui atualizações de eventos subordinados.
page: número de páginas a serem exibidas. Valores válidos: de 1 ao número máximo de páginas. Se omitido, o valor 1 é utilizado. Se o valor for maior do que o número máximo de páginas, uma lista em branco será retornada.
page_size: número de itens exibidos por página. Valores válidos: de 1 a 1.000. Se omitido, o valor padrão de 10 itens por página será utilizado.
filter: consulta baseada na sintaxe do protocolo OData para configurar filtros. Os campos permitidos estão listados abaixo. Siga os exemplos para identificar as operações permitidas.
orderby: ordena as atualizações do evento na página por campo. Para ordenar mais de um campo, utilize uma vírgula entre os campos. Para utilizar a ordem decrescente, adicione a palavra "desc" para cada campo desejado. Os campos permitidos estão listados a seguir.
CAMPOS SUPORTADOS POR FILTRO
Guid Id;
int? Action;
DateTime Date;
string Comment;
string Property;
string OldValue;
string NewValue;
string AdditionalParameter;
Guid? AttachmentId;
string ChildEventCode;
int UpdateType;
string UpdatedBy;
Os filtros seguem o padrão OData (http://www.odata.org/developers/protocols/uri-conventions). Os operadores suportados na expressão estão descritos na tabela abaixo:
Operador |
Descrição |
Exemplo |
eq |
Igual |
Action eq 5 |
ne |
Diferente |
Action ne 5 |
gt |
Maior que |
Action gt 3 |
ge |
Maior que ou igual |
Action ge 4 |
lt |
Menor que |
Action lt 3 |
le |
Menor que ou igual |
Action le 2 |
substringof |
Contém uma substring |
substringof('xpto', OldValue) |
Os operadores lógicos suportados na expressão estão descritos na tabela abaixo:
Operador |
Descrição |
Exemplo |
and |
E lógico |
Action eq 5 and UpdateType eq 5 |
or |
Ou lógico |
Action eq 5 or UpdateType eq 5 |
not |
Negação lógica |
not Action eq 5 |
( ) |
Agrupamento precedente |
(Action eq 5 and UpdateType eq 5) or (Action eq 3) |
TIPOS DE DADOS
String ou Text: o texto deve ser inserido entre aspas simples.
Byte: valor numérico inteiro.
Double: valor numérico real que utiliza um ponto (.) como separador de casas decimais.
Datetime: deve seguir o formato datetime'AAAA-MM-DDT00:00:00' entre aspas simples. Exemplos:
• Com data e hora: datetime'2010-10-25T12:34:56'.
• Somente com data: datetime'2010-10-25'.
LIMITAÇÕES CONHECIDAS
• Os parâmetros $select e $expand do padrão ODATA não foram implementados.
• Para utilizar caracteres especiais como (&) e apóstrofos, veja os exemplos abaixo:
o Para criar um filtro que contém "McDonald's" no campo "Description", o apóstrofo deve ser duplicado. Por exemplo: substringof('McDonald"s', Description).
o Para criar um filtro que contém "Johnson&Johnson" no campo "Description", o "&" tem que ser substituído pelo seu código hexadecimal, nesse caso %26. Por exemplo: substringof('Johnson%26Johnson, Description).
• Para criar um filtro para uma data específica – por exemplo, para eventos criados no dia 19 de setembro de 2011 – o seguinte filtro não funcionará: (Created eq datetime'2011-09-19'). No lugar desse, o seguinte filtro deve ser utilizado: (Created ge datetime'2011-09-19')and(Created lt datetime'2011-09-20').
• Os campos "Comment", "OldValue" e "NewValue" não podem ser filtrados.
EXEMPLOS DE SOLICITAÇÃO
As 10 primeiras atualizações (por padrão, 10 atualizações são listadas por vez):
{WSUrl}/api/events/EVTC201105000052/updates
Atualizações de 11 a 20 (segunda página) de qualquer situação:
{WSUrl}/api/events/EVTC201105000052/updates?page=2&page_size=10
As primeiras 10 atualizações incluindo atualizações de eventos relacionados:
{WSUrl}/api/events/EVTC201105000052/updates?show_child_events=True
Filtrar pelo campo "Action" igual a 13 (propriedade atualizada):
{WSUrl}/api/events/EVTC201105000052/updates?$filter=Action eq 13
Filtrar pela string "suporte" no campo "Comment":
{WSUrl}/api/events/EVTC201105000052/updates?$filter=substringof('suporte',Comment)
Filtrar pelo campo "Date" com data entre 24/08/2011 e 28/08/2011:
{WSUrl}/api/events?$filter=(Date gt datetime'2011-08-24') and (Date lt datetime'2011-08-28')
RESPOSTA DE SUCESSO
Lista dos objetos com informações sobre as atualizações dos eventos.
Retorna o WorkflowEventUpdate[].
O WorkflowEventUpdate tem o seguinte formato:
WorkflowEventUpdate
{
Guid Id;
int? Action;
DateTime Date;
string Comment;
string Property;
string OldValue;
string NewValue;
string AdditionalParameter;
Guid? AttachmentId;
string ChildEventCode;
int UpdateType;
string UpdatedBy;
}
O campo "UpdateType" pode assumir os seguintes valores:
0: caso alguma propriedade do evento seja atualizada.
1: caso algum anexo seja adicionado.
2: caso o campo "Progress" seja atualizado ou haja alguma mudança na situação do evento.
O campo "Action" pode assumir os seguintes valores:
0: Evento criado.
1: Evento fechado.
2: Evento reaberto.
3: Evento cancelado.
4: Evento desassociado.
5: Progresso atualizado.
6: Evento subordinado criado.
7: Evento subordinado fechado.
8: Evento subordinado reaberto.
9: Evento subordinado cancelado.
10: Evento subordinado excluído.
11: Evento subordinado desassociado.
12: Progresso de evento subordinado atualizado.
13: Propriedade de evento atualizada.
14: Envolvidos adicionados.
15: Envolvidos removidos.
16: Ativos associados.
17: Ativos removidos.
18: Anexo adicionado à aba Progresso do evento.
19: Propriedade de um evento subordinado atualizada.
20: Envolvidos adicionados a um evento subordinado.
21: Envolvidos removidos de um evento subordinado.
22: Ativos associados a um evento subordinado.
23: Ativos removidos de um evento subordinado.
24: Arquivos anexados à aba Progresso de um evento subordinado.
25: Evento atual associado a um evento pai.
26: Evento subordinado associado a um evento pai.
27: Componentes de negócio associados.
28: Componentes de negócio desassociados.
29: Componentes de negócio associados a um evento subordinado.
30: Componentes de negócio desassociados de um evento subordinado.
31: Plano de continuidade associado a um evento.
32: Plano de continuidade desassociado de um evento.
33: Riscos corporativos associados a um evento.
34: Riscos corporativos desassociados de um evento.
35: Arquivos anexados a um atributo de evento.
36: Arquivos removidos de um atributo de evento.
37: Eventos associados.
38: Eventos desassociados.
39: Arquivos anexados a um atributo de um evento subordinado.
40: Arquivos removidos de um atributo de um evento subordinado.
41: Atualização de arquivo de um atributo de um evento.
42: Atualização de arquivo de um atributo de um evento subordinado.
O campo "Property" é preenchido pelas ações que modificam o valor de uma propriedade. Ele contém o nome da propriedade alterada, e nesse caso os campos "OldValue" e "NewValue" contêm os valores antigo e novo desta propriedade.
O campo "AdditionalParameter" é utilizado em algumas ações que necessitam de algum tipo de informação complementar. As informações deste campo para cada ação específica estão descritas a seguir:
Evento desvinculado (4): contém o código do evento do qual foi desvinculado;
Envolvidos adicionados (14 e 20): contém os nomes dos envolvidos no evento;
Envolvidos removidos (15 e 21): contém os nomes dos envolvidos removidos;
Ativos adicionados (16 e 22): contém o nome dos ativos adicionados;
Ativos removidos (17 e 23): contém o nome dos ativos removidos;
Anexo adicionado (18 e 24): contém o nome e o AttachmentId do arquivo adicionado.
EXEMPLO DE RESPOSTA DE SUCESSO
[
{
"Action":13,
"AdditionalParameter":"",
"AttachmentId":null,
"ChildEventCode":null,
"Comment":"",
"Date":"\/Date(1317053182737-0300)\/",
"Id":"21b688eb-587e-4fc3-a43e-3661f707fd9f",
"NewValue":9\/26\/2011 12:00 AM,
"OldValue":null,
"Property":"StartDate",
"UpdateType":0,
"UpdatedBy":"aferreira"
},
{
"Action":5,
"AdditionalParameter":"",
"AttachmentId":null,
"ChildEventCode":null,
"Comment":"Evento atualizado",
"Date":"\/Date(1317045356363-0300)\/",
"Id":"5ac2c5f3-d916-4ab8-a31a-3c1d5bf3b35b",
"NewValue":"55",
"OldValue":"0",
"Property":"Progress",
"UpdateType":2,
"UpdatedBy":"aferreira"
}
]
RESPOSTA DE SUCESSO
HTTP status code 204: NoContent