Como obter uma lista de ordens de trabalho por OData?
É possível realizar pedidos OData em todas as entidades.
Nos pedidos OData é necessário ter atenção à seguinte sintaxe:
- $select: expressão que determina quais os campos do pedido que são incluídos no resultado;
- $filter: expressão utilizada para restringir a informação enviada no pedido;
- $orderby: expressão utilizada para ordenar a informação enviada;
- $skip: expressão que ignora os primeiros registos, por exemplo: $skip = 100. Neste caso, ignora os 100 primeiros registos;
- $Top: expressão que retorna os primeiros N registos do pedido;
- $expand: expressão que permite relacionar entidades, por exemplo obter a lista de consumos e as respetivas peças consumidas.
Quando se realizam pedidos OData, existem duas expressões que devem ser utilizadas:
- $select: expressão obrigatória. Deve indicar quais os campos que pretende obter;
- $filter: como limitamos a 100 registos por pedido, recomendamos que indique o filtro pelo campo ModifiedOn para obter apenas os registos novos ou alterados.
Exemplos
De seguida, estão descritos exemplos de pedidos Odata para as ordens de trabalho:
Pedido OData para obter informação da ordem de trabalho
- https://cloud.valuekeep.com/api/{Tenant}/{Organization}/maintenance/workOrders/odata?$select=Id,Description,WorkOrderType,Equipment,EquipmentId,Customer,CustomerId,Responsible,Workshop,WorkshopDescription,PriorityLevel,Date,WorkOrderKey,AssetType,Location
Pedido OData para obter informação da ordem de trabalho, ignorando os 100 primeiros registos
- https://cloud.valuekeep.com/api/{Tenant}/{Organization}/maintenance/workOrders/odata?$select=Id,Description,WorkOrderType,Equipment,EquipmentId,Customer,CustomerId,Responsible,Workshop,WorkshopDescription,PriorityLevel,Date,WorkOrderKey,AssetType,Location&$filter=WorkOrderType eq 'CR'
Pedido OData para obter informação da ordem de trabalho, ignorando os 100 primeiros registos e filtrando por estado da OT
- https://cloud.valuekeep.com/api/{Tenant}/{Organization}/maintenance/workOrders/odata?$select=Id,Description,WorkOrderType,Equipment,EquipmentId,Customer,CustomerId,Responsible,Workshop,WorkshopDescription,PriorityLevel,Date,WorkOrderKey,AssetType,Location&$filter=WorkOrderType eq 'CR'&$skip=100&$orderby=ModifiedOn
Os campos inseridos no Select devem iniciar por maiúsculas.
Consulte o artigo de apoio para saber quais os campos a utilizar na expressão Select.