Jasmin Recursos
Recursos
Recursos
Recursos
Nesta área encontra informações sobre a tecnologia de integração Jasmin, bem como guias de ajuda com exemplos simples e práticos sobre como iniciar o desenvolvimento de uma solução. Também encontra informações sobre todos os aspetos da Web API necessários ao desenvolvimento de aplicações, desde tópicos de referência até funcionalidades mais avançadas.
Most Viewed Articles
Como funciona a autorização OAuth 2.0? Exemplos de integrações Getting Started Quais os fluxos de autorização suportados na Web API? Gestão das aplicações integradas Boas práticas de integração
Jasmin Documentação API
Documentação API
Documentação API
Jasmin Documentação API
Documentação API
Documentação API
DOCUMENTAÇÃO API

API

O Jasmin disponibiliza uma Web API REST que lhe permite aceder aos dados de uma subscrição. Esta API cobre todos os módulos do produtos (Vendas, Compras, Impostos, etc.) e permite tanto a consulta de dados como a criação e atualização de entidades e transações (documentos). Deste modo é possível criar soluções que integrem o Jasmin com qualquer outro sistema.

Ver mais

Adicionar aos favoritos ou partilhar este artigo
Artigos Relacionados
Exemplos de integrações Boas práticas de integração Como executar queries OData sobre os dados? Como funciona a autorização OAuth 2.0? Getting Started
Jasmin Registo de aplicações
Registo de aplicações
Registo de aplicações
Jasmin Registo de aplicações
Registo de aplicações
Registo de aplicações
REGISTO DE APLICAÇÕES

O sistema de autenticação de utilizadores e de segurança do Jasmin requer que todas as aplicações integradas sejam registadas no sistema. Essa informação é utilizada no acesso à Web API para assegurar o acesso aos dados da subscrição de um determinado cliente.O registo da aplicação permite ao developer ter acesso ao token de autorização que deve ser utilizado em todas as chamadas à Web API.Pode registar uma nova aplicação ou aceder aos registos já efetuados na área de gestão de aplicações, seguindo o seguinte link:

Ver mais

Adicionar aos favoritos ou partilhar este artigo
Artigos Relacionados
Exemplos de integrações Boas práticas de integração Como executar queries OData sobre os dados? Como funciona a autorização OAuth 2.0? Getting Started
Jasmin ProgrammableWeb
ProgrammableWeb
ProgrammableWeb
Jasmin ProgrammableWeb
ProgrammableWeb
ProgrammableWeb
PROGRAMMABLEWEB

O ProgrammableWeb é uma plataforma que permite acompanhar todas as novidades e informações sobre a Web API do Jasmin.

Ver mais

Adicionar aos favoritos ou partilhar este artigo
Artigos Relacionados
Exemplos de integrações Boas práticas de integração Como executar queries OData sobre os dados? Como funciona a autorização OAuth 2.0? Getting Started
Jasmin Postman
Postman
Postman
Jasmin Postman
Postman
Postman
POSTMAN

COMPRAS E VENDAS

Nesta coleção vais encontrar exemplos de utilização da WebAPI para as áreas de compras e vendas.

EXPEDIÇÃO E INVENTÁRIO

Nesta coleção vais encontrar exemplos de utilização da WebAPI para as áreas de inventário e expedição de mercadoria.

IMPOSTOS E FINANÇAS

Nesta coleção vais encontrar exemplos de utilização da WebAPI para as áreas de pagamentos, recebimentos e impostos.

PLATAFORMA E ENTIDADES BASE

Nesta coleção vais encontrar exemplos de utilização da WebAPI para a área de plataforma.

Adicionar aos favoritos ou partilhar este artigo
Artigos Relacionados
Exemplos de integrações Boas práticas de integração Como executar queries OData sobre os dados? Como funciona a autorização OAuth 2.0? Getting Started
Jasmin Videos
Videos
Videos
Jasmin Videos
Videos
Videos
Vídeos
Jasmin RecursosReferências
RecursosReferências
Referências
Voltar | Lista de artigos
Como executar queries OData sobre os dados?

O que é o OData

O OData (Open Data Protocol) é um protocolo standard que permite a criação e consumo de dados através de uma Web API.

Trate-se de um standard construído sobre os protocolos HTTP e REST e que suporta operações CRUD sobre as entidades disponíveis na Web API.

Dadas as suas características, este protocolo é particularmente útil para executar queries ad-hoc sobre esses dados.

Mais informação: http://www.odata.org/

OData no Jasmin

Os serviços OData disponibilizados no Jasmin permitem consultar as entidades do Jasmin a partir de aplicações externas, nomeadamente, os seus atributos, valores correspondentes e entidades relacionadas.

O OData permite que esta consulta possa ser efetuada de uma forma mais ágil e customizada pois permite a utilização de parâmetros para obter os resultados pretendidos.

Parâmetros para as consultas OData

As consultas OData, não são mais do que a execução de ações GET na Web API, com determinados parâmetros que condicionam os resultados obtidos.

De seguida são apresentados os parâmetros que podem ser utilizados nas consultas OData, bem como exemplos da sua aplicação na Web API do Jasmin.

Dica: Sempre que referencia propriedades em expressões OData, deverá ser utilizada a convenção Pascal Case (primeira letra de cada palavra em maiúscula)

$TOP

Permite definir o número de resultados pretendidos.

Exemplo:

Para obter os 5 primeiros resultados da lista de artigos de venda:

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$top=5

$SKIP

Permite ignorar os N primeiros resultados de uma query.

Exemplo:

Para obter 5 registos da lista de artigos de venda, ignorando os 5 primeiros:

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$skip=5

$INLINECOUNT

Permite incluir um totalizador dos registos nos resultados da query.

Exemplo:

Para obter o total dos registos existentes na lista de artigos de venda:

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$inlinecount=allpages

$ORDERBY

Permite ordenar, de forma ascendente ou descendente, os resultados por um ou mais atributos.

Exemplo:

Para obter os registos existentes na lista de artigos de venda, ordenando pelo atributo "ItemKey" de forma descendente:

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$orderby=ItemKey desc

$SELECT

Permite selecionar quais os atributos a serem apresentados nos resultados devolvidos pela query.

Exemplo:

Para obter os atributos "ItemKey" e "Description" dos registos existentes na lista de artigos de venda:

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$select=ItemKey,Description

$EXPAND

Permite expandir a consulta a entidades relacionadas com a entidade da pesquisa, por exemplo, quando se pretende selecionar atributos de um detalhe. Este parâmetro só pode ser utilizado associado ao parâmetro $SELECT.

Exemplo:

Para obter os atributos "ItemKey" e "Description" dos registos existentes na lista de artigos de venda e ainda o atributo "PriceAmountAmount" dos detalhes:

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$select=ItemKey,Description,PriceListLines/PriceAmountAmount&$expand=PriceListLines

$FILTER

Permite filtrar os resultados com base em determinadas condições, nomeadamente as seguintes:

EQ (Equal)

Para obter os registos em que o atributo "ItemKey" seja igual a "PORTES":

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$filter= ItemKey eq 'PORTES'

AND

Para obter os registos em que o atributo "ItemKey" seja igual a "PORTES" e o atributo "Unit" seja igual a "UN":

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$filter= ItemKey eq 'PORTES' and Unit eq 'UN'

OR

Para obter os registos em que o atributo "Unit" seja igual a "UN" ou "KG":

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$filter= Unit eq 'UN' or Unit eq 'KG'

LT (LESS THAN)

Para obter os registos em que o atributo "ItemKey" seja menor que "0010":

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$filter= ItemKey lt '0010'

GT (GREATER THAN)

Para obter os registos em que o atributo "ItemKey" seja maior que "0010":

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$filter= ItemKey gt '0010'

GE (GREATER THAN OR EQUAL TO)

Para obter os registos em que o atributo "ItemKey" seja maior ou igual a "0010":

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$filter= ItemKey ge '0010'

LE (LESS THAN OR EQUAL TO)

Para obter os registos em que o atributo "ItemKey" seja menor ou igual a "0010":

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$filter= ItemKey le '0010'

STARTWITH

Para obter os registos em que o atributo "ItemKey" comece por "POR":

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/odata?$filter= startswith(ItemKey , 'POR')

SUBSTRINGOF

Para obter os registos em que valor ‘cadeira’ seja parte da string do atributo "Description":

http://my.jasminsoftware.com/api/{account}/{subscription}/salescore/salesitems/ odata?$filter= substringof('cadeira', Description)

Conjugação de parâmetros

Os parâmetros referidos anteriormente podem ser conjugados para facilitar as pesquisas. De seguida são apresentados alguns exemplos práticos.

Exemplo:

Para obter os atributos "CustomerPartyName" e "SeriesNumber" dos registos existentes na lista de encomendas, ordenados de forma descendente pelo atributo "SeriesNumber", bem como do contador de registos que correspondem aos critérios de pesquisa:

http://my.jasminsoftware.com/api/{account}/{subscription}/sales/orders/odata?$inlinecount=allpages&$select=BuyerCustomerPartyName,SeriesNumber&$orderby=SeriesNumber desc

Para obter os atributos "BuyerCustomerPartyName" e "PayableAmountAmount" para as 10 encomendas de maior valor, apresentadas do valor mais alto para o mais baixo, bem como do contador de registos que correspondem aos critérios de pesquisa:

http://my.jasminsoftware.com/api/{account}/{subscription}/sales/orders/odata?$inlinecount=allpages&$select=BuyerCustomerPartyName,PayableAmountAmount&$top=10&$orderby=PayableAmountAmount desc

Consultas OData em extensões

Relativamente às extensões é possível fazer queries para obtenção apenas da extensão ou da base e da extensão. Qualquer parâmetro de pesquisa OData pode ser aplicado a este nível.

Para obter apenas a extensão é necessário passar na rota “extension” para o serviço da extensão pretendido.

Exemplo:

Efetuar a ordenação descendente da extensão MaterialsItems pelo atributo DefaultWarehouse

http://my.jasminsoftware.com/api/{account}/{subscription}/materialscore/materialsItems/extension/odata?&$orderby=DefaultWarehouse desc

Para obter a extensão e a base não é necessário passar na rota “extension”, tratando a query normalmente como para qualquer outra pesquisa.

Exemplo:

Efetuar a ordenação descendente da extensão MaterialsItems pelo atributo DefaultWarehouse, considerando a extensão e a base

http://my.jasminsoftware.com/api/{account}/{subscription}/materialscore/materialsItems/odata?&$orderby=DefaultWarehouse desc
Adicionar aos favoritos ou partilhar este artigo
Artigos Relacionados
Exemplos de integrações Boas práticas de integração Como funciona a autorização OAuth 2.0? Getting Started Características dos recursos da Web API