MVC – Criando tela de browsers com Legenda e Filtro

Blog Advpl - Share knowledge

MVC – Criando tela de browsers com Legenda e Filtro

18 de dezembro de 2015 Funções Geral 0

Seguindo o mesmo exemplo postado em Criando tela em MVC separando por grupos e inserindo novos botões, iremos mostrar como inserir legendas e filtro para ser exibido no Browse.

exemplo3_tela_mvc_legendaPara o uso de legendas no Browse utilizamos o método AddLegend, que possui a seguinte sintaxe:

Exemplo:

Ou seja, para os registros que estiverem com o conteúdo vazio ou 2 no campo ZZ8_BLQ, ficaram como verde, pois o numero 2 = Não, e todos os registros que tiverem o conteúdo com 1, significa Sim.

cRegra: é a expressão em AdvPL para definir a legenda.
cCor : é o parâmetro que define a cor de cada item da legenda.

São possíveis os seguintes valores:

  • GREEN – Para a cor Verde
  • RED – Para a cor Vermelha
  • YELLOW – Para a cor Amarela
  • ORANGE – Para a cor Laranja
  • BLUE – Para a cor Azul
  • GRAY – Para a cor Cinza
  • BROWN – Para a cor Marrom
  • BLACK – Para a cor Preta
  • PINK – Para a cor Rosa
  • WHITE – Para a cor Branca

cDescrição: a que será exibida para cada item da legenda
Observação
Cada uma das legendas se tornará automaticamente uma opção de filtro.
Cuidado ao montar as regras da legenda. Se houverem regras conflitantes será exibida a legenda correspondente à 1ª regra que for satisfeita.

Simples não?

[divider]

Usando filtros

Se quisermos definir um filtro para o Browse utilizamos o método SetFilterDefault, que possui a seguinte sintaxe:

Exemplo para filtrar apenas os registros não bloqueados:

exemplo3_tela_mvc_filtro

É possível também incluir no filtro, funções, variáveis e macros.

A expressão de filtro é em AdvPL. O filtro definido na aplicação não anula a possibilidade do usuário fazer seus próprios filtros. Os filtros feitos pelo usuário serão aplicados em conjunto com o definido na aplicação (condição de AND).

Observação
O filtro da aplicação não poderá ser desabilitado pelo usuário

 

 

 

 

Deixe uma resposta