KB-32470: Habilitando ou desabilitando filtros de uma Consulta.

Descrição:

Em uma aplicação, uma Consulta possui um filtro com diversas variáveis, possibilitando a configuração do filtro na tela:

SELECT E3TimeStamp, Campo1, Campo2
FROM Tabela1
WHERE (E3TimeStamp  >= #<%IniDate%># ) AND ( E3TimeStamp <= #<%FinalDate%># )

Como configurar para que o operador possa habilitar ou desabilitar esse filtro?


Solução:

Para isso, devem-se criar variáveis Booleanas e escrever um script na aba SQL da Consulta utilizando a condição OR. Exemplo:

 

SELECT E3TimeStamp, Campo1, Campo2
FROM Tabela1
WHERE ( <%bIni%> = 1  OR (E3TimeStamp  >= #<%IniDate%># )) AND ( <%bFinal%> = 1 OR (E3TimeStamp <= #<%FinalDate%># ))

 

Se a variável for igual a 1, o filtro é desconsiderado. Se for igual a 0, o filtro é validado.

Os valores das variáveis Booleanas podem ser configurados de acordo com objetos CheckBox da tela:

 

cs.SetVariableValue “bIni”, Abs(NOT Screen.Item(“Checkbox1”).Value)
cs.SetVariableValue “bFinal”, Abs(NOT Screen.Item(“Checkbox2”).Value)

 

Assim, ao marcar o CheckBox, a variável recebe 0 e o filtro é validado. Ao desmarcá-la, a variável recebe 1 e o filtro é desabilitado.

Para mais detalhes, veja aplicação exemplo desenvolvida no E3 v. 3.2 b. 260 em anexo.

Anexos:

FilterOrNot.zip

Este artigo foi útil? Was this post helpful?
Yes0
No0

Artigos Relacionados

Deixe seu Comentário

Seu endereço de e-mail não será publicado. Campos marcados com asterisco são obrigatórios *