Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Cross Segmentos - Backoffice RM - BI - Como utilizar Filtro como parâmetro em consultas SQL no Reports


time.png Tempo aproximado para leitura: 00:03:00 min 

Dúvida
Como utilizar Filtro como parâmetro em consultas SQL no RM Reports?

Ambiente
Cross Segmentos - TOTVS Backoffice (Linha RM) - RM BI - Todas as versões

Solução

É possível utilizar filtros de um relatório como parâmetros para execução de consultas SQL, desde que o relatório possua um ou mais controles do tipo "Filtro".

Para inclusão de um filtro no relatório acesse seu design. Para isso selecione o relatório, clique no menu Processos | Editar Estrutura. Após acessar o design do relatório selecione o menu Inicio | Estrutura | Filtros. Para exemplo, incluiremos um filtro Chapa no relatório.



 

Para inserir o controle do tipo Filtro, primeiramente é necessário criar um filtro em seu relatório, conforme mencionado no processo Inserindo Filtro no Relatório(aviso).

Após criado o filtro em seu relatório acesse a barra Caixa de Ferramentas (informação), selecione o controle do tipo Filtro e arraste-o para estrutura do seu relatório.



 

Após incluído o controle do tipo Filtro no seu relatório é necessário configurá-lo para ser apresentada as informações desejadas. Lembramos que o valor configurado será o valor repassado a consulta SQL.

Para exemplo configuraremos o filtro chapa criado no processo Inserindo Filtro no Relatório para que apresente o valor da chapa somente e não toda a condição do filtro que seria Chapa = ‘00001’.

Selecione o controle e acesse as propriedades deste controle teclando F4 em seu teclado. No grupo de propriedades Diversos selecione na propriedade Filtro o valor Filtro Relatório. Em seguida na propriedade Clausula selecione o filtro desejado e para finalizar em Valor selecione a opção para que o valor do filtro seja apresentado, no exemplo utilizaremos o valor da chapa.



 

Lembramos que filtros são passíveis de criação somente em relatórios com uma fonte de dados do tipo tabela associada a banda do relatório.

 Para habilitar a barra de Caixa de Ferramentas acesse o menu Exibição | Janelas | Caixa de Ferramentas.

Para exemplificarmos a usabilidade do filtro como parâmetro criarmos a seguinte consulta SQL para incluí-la no relatório.

SELECT PFDEPEND.NOME,
PFDEPEND.DTNASCIMENTO,
PCODPARENT.DESCRICAO AS PARENTESCO
FROM PFDEPEND ( NOLOCK )
INNER JOIN PCODPARENT ( NOLOCK )
ON ( PFDEPEND.GRAUPARENTESCO = PCODPARENT.CODINTERNO )
WHERE PFDEPEND.CHAPA = :FILTRO1

Esta consulta SQL foi adicionada ao sub-detalhe do relatório. A estrutura do relatório resultou ficou da seguinte forma.



Como parâmetro utilizaremos o nome do Controle Filtro (Filtro1) na condição da consulta SQL. Desta forma ao executarmos o relatório o sistema irá utilizar o valor do Controle Filtro como parâmetro. O resultado do relatório será o seguinte.



 

Para uso de filtros que utilizam valores de dada como parâmetros é necessário que a consulta SQL tenha um tratamento de conversão do parâmetro para correta execução.

Neste exemplo abaixo temos uma consulta SQL sem nenhum tratamento para receber o valor do Controle Filtro.

Consulta Incorreta:

SELECT PFUNC.DATADEMISSAO
FROM PFUNC ( NOLOCK )
WHERE PFUNC.DATADEMISSAO BETWEEN :Filtro1 AND :Filtro2
AND PFUNC.CHAPA = :CHAPA_S

Neste exemplo a mesma consulta SQL, porém com os devidos ajustes para que o valor data do filtro seja compreendido corretamente.

Consulta Correta:

SELECT PFUNC.DATADEMISSAO
FROM PFUNC ( NOLOCK )
WHERE PFUNC.DATADEMISSAO BETWEEN CONVERT(DATE, :Filtro1, 103)
AND CONVERT(DATE, :Filtro2, 103)
AND PFUNC.CHAPA = :CHAPA_S

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _