Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Revertida da versão 30

...

Índice
outlinetrue
exclude.*ndice
stylenone

teste


Objetivo

...

Um Dataset pode ser acessado de várias formas: no desenvolvimento de widgets, formulários, webservices, eventos globais, eventos de formulários e eventos de processos.
O objetivo desse guia é mostrar como acessar o Dataset nestes cenários.

...

Nota
titleAtenção!

A partir das atualizações 1.6.5 Liquid, 1.7.0 Lake e 1.7.1 Crystal Lake, os select passados por constraint em dataset serão bloqueados pelo serviço. Orientamos a leitura da documentação Datasets acessando banco de dados externo que contém um exemplo da correta utilização do procedimento.


Acessando um Dataset

...

Vários locais da plataforma podem fazer uso dos dados retornados pelos Datasets. Serão apresentadas abaixo as variações na forma de acessá-los ou de manuseá-los.

...

Nota
titleAtenção

As constraints podem ser utilizadas apenas para Datasets internos. Datasets avançados não aceitam constraints, pelo fato de os dados serem externos, não sendo possível aplicar o filtro em sua origem. Para Datasets avançados o tratamento de filtros deve ser feito na codificação do Dataset, manipulando o objeto retornado e retirando as informações desnecessárias.

Exemplificação de uso de Constraints

Considere os valores da tabela abaixo sendo utilizadas como um serviço de dados a partir de uma definição de formulário para exemplificação dos exemplos:

Dica
titleDica

Ao passar uma constraint de nome "offset" nos bancos My SQL, SLQ Server e Oracle o mesmo será aplicado na pesquisa do dataset exibindo a pesquisa com paginação. Abaixo temos um exemplo:

Bloco de código
DatasetFactory.createConstraint("offset", "10", "10", ConstraintType.MUST);

Neste caso 10 linhas seriam passadas para retornar a consulta com a paginação.


Exemplificação de uso de Constraints

Considere os valores da tabela abaixo sendo utilizadas como um serviço de dados a partir de uma definição de formulário para exemplificação dos exemplos:

CódigoNomeCidade
1Javier SpivaSão Paulo
2Cody BallowRio de Janeiro
3Javier NaramoreSão Paulo
4Max NeviusRio de Janeiro
5
CódigoNomeCidade
1Javier SpivaSão Paulo
2Cody BallowRio de Janeiro
3Javier NaramoreSão Paulo
4Max NeviusRio de Janeiro
5Noemi RoigerSão Paulo
6Lonnie CadwalladerRio de Janeiro
7Lorrie SpeceBrasília

...

Para um exemplo completo do uso de modal com Datable acesse Modal com DataTable e Dataset, lembrando sobre a limitação do datatable, no qual não é possível efetuar paginação pois não possui os recursos de offset e limit.


Acessar dataset via API

Via serviço REST

...

Disponibilizamos uma nova forma para acessar os datasets através de API utilizando serviços tipo REST. Para isso apresentamos logo abaixo um exemplo de como realizar essa pesquisa, siga os passos abaixo:

A API que fará a pesquisa é a API Dataset ([servidor_fluig]/dataset/swagger-ui/#/Dataset_handle/searchDatasetValues)

datasetId: Nome do dataset onde será realizado a pesquisa, este é o único parâmetro requerido.

field: Campos do dataset que serão retornados, caso não seja passado os valores todos os campos serão retornados.

offset: Quantos registros serão “pulados” antes de retornar os valores, esse campo é usado junto com o limit para realizar a paginação. Caso o dataset chamado for um dataset avançado, esse parâmetro pode ser acessado como uma constraint de nome offset.

limit: Quantidade máxima de registros que serão retornados na pesquisa. Caso o dataset chamado for um dataset avançado, esse parâmetro pode ser acessado como uma constraint de nome sqlLimit.

orderby: Nome do campo onde será feita a ordenação, pode ser adicionado _ASC ou _DESC para pesquisar em ordem ascendente e descendente respectivamente.

constraintsField: Nome do campo onde será passado o valor para pesquisa. Pode ser passado múltiplos campos mas para cada um deles será preciso passar um valor.

constraintsInitialValue: Valor que será usado para realizar o filtro de acordo com o campo passado no parâmetro constraintsField. Caso tenha passado mais de um campo para pesquisa será preciso passar os valores na mesma ordem para o filtro ser criado corretamente.

constraintsFinalValue: Caso o filtro desejado for uma faixa de valores o parâmetro constraintsInitialValue será o valor inicial e constraintsFinalValue será o valor final. Caso tenha passado mais de um campo para pesquisa será preciso passar os valores na mesma ordem para o filtro ser criado corretamente. Caso for passado o mesmo valor que o parâmetro constraintsInitialValue será feito a pesquisa somente por esse valor ignorando a faixa de valores.

constraintsType: Tipo de filtro que será aplicado no campo, os valores permitidos são:


  • MUST: Se utiliza quando os valores retornados precisam ser iguais ao valor passado na constraintsInitialValue e constraintsFinalValue para o campo constraintsField.

  • MUST_NOT: Se utiliza quando os valores retornados precisam ser diferentes ao valor passado na constraintsInitialValue e constraintsFinalValue para o campo constraintsField.

  • SHOULD : Assim como o MUST os valores retornados precisam ser iguais ao valor passado na constraintsInitialValue e constraintsFinalValue para o campo constraintsField. Esse tipo deve ser utilizado quando for feito mais de um filtro para o mesmo campo. Por exemplo: Pesquisar todos os colaboradores com o nome Antônio ou João.


Caso tenha passado mais de um campo para pesquisa será preciso passar os valores na mesma ordem para que o filtro seja criado corretamente.

constraintsLikeSearch: Valor booleano que determina se os valores nos campos constraintsInitialValue e constraintsFinalValue podem ser somente parte do valor total caso o booleano seja verdadeiro ou se os
valores precisam ser exatos caso o booleano seja falso. Quando o valor for verdadeiro poderá ser usado o símbolo % para determinar que será aceito qualquer valor a partir desse ponto, por exemplo: se na constraintsInitialValue for passado o valor “Anderson%” e o constraintsLikeSearch estiver como true será retornado todos os valores que comecem com “Anderson”. Caso tenha passado mais de um campo para a pesquisa será preciso passar os valores na mesma ordem para que o filtro seja criado corretamente.