Índice:
Objetivo:
Mostrar como e porque utilizar as configurações para concatenar com o operador lógico AND os filtros por perfil.
Introdução:
Foi criado um novo parâmetro para mudar o comportamento dos filtros por perfil em consultas SQL.
Na nova MDI, o parâmetro "Concatena filtro por perfil com AND em Cons. SQL" trata o comportamento dos filtros por perfil na execução das consultas SQL cadastradas.
Por padrão, os filtros por perfil são concatenados nas consultas SQL do RM utilizando o operador lógico AND, entretanto, caso o usuário possua mais de um perfil associado e cada um desses perfis possuir uma condição para o mesmo campo da mesma tabela, os filtros se anulam conforme a consulta SQL de exemplo abaixo que realiza um select na tabela GFILIAL e possui filtros para as filiais 1, 2 e 9:
SELECT *
FROM GFILIAL
WHERE ( ( GFILIAL.CODFILIAL = 1 )
AND ( GFILIAL.CODFILIAL = 2 )
AND ( GFILIAL.CODFILIAL = 9 ) )
Por padrão o parâmetro fica habilitado, mantendo o comportamento atual. Para que os filtros possam ser concatenados com o operador lógico OR deve-se desabilitar o parâmetro. Com o parâmetro desabilitado, a consulta será montada da seguinte forma:
SELECT *
FROM GFILIAL
WHERE ( ( GFILIAL.CODFILIAL = 1 )
OR ( GFILIAL.CODFILIAL = 2 )
OR ( GFILIAL.CODFILIAL = 9 ) )
Com a alteração dos parâmetros, as consultas retornarão dados de todos os filtros cadastrados.