O método atual de filtragem de relatórios é versátil, mas não é o mais eficaz. Atualmente o DEV Express carrega toda a informação de uma view ou query, e só depois é que a filtra consoante as configurações do relatório.
Isto faz com que seja mais fácil interagir com as várias vertentes do mesmo, contudo, em casos onde o número de linhas devolvido seja imenso, talvez seja necessário aplicar um filtro na query diretamente.
Como fazer:
Criar query auxiliar
Primeiro, vamos acrescentar uma nova query no datasource disponível. Esta query deverá ser uma lista do que queremos filtrar, baseado na view existente no relatório. Neste exemplo, fizemos a busca de códigos do workflow:
Criar parâmetro de relatório
De seguida, vamos adicionar um parâmetro, este parâmetro deverá conter os valores adicionados na query anterior.
O nome do parâmetro deverá ser utilizado daqui para a frente. Utilize as configurações utilizadas na imagem em baixo, se necessitar ajuste os valores às suas necessidades:
Juntar parâmetro na query
Agora, edita-se a query e acrescenta-se a condição, normalmente comparamos com o código do workflow ou o ID do workflow, neste caso iremos utilizador o código: where [WKF Code] in (@AGIRCODE)
No exemplo em baixo, demos o nome AGIRCODE ao parâmetro. Após adicionar a condição clique Next.
De seguida, vamos configurá-lo, clique no botão Add, clique no novo parâmetro adicionado, e selecione o tipo Expression. De seguida, selecione o tipo de variável que o relatório deve filtrar, em dúvida selecione string.
No value, clique nos 3 pontos, selecione a opção fields na esquerda, selecione parameters, e adicione o parâmetro que criámos no passo anterior de seu nome também AGIRCODE, clique OK. Neste step, deverá ficar da seguinte maneira:
Adicionar filtro
O último passo, é adicionar o filtro com os parâmetros que acabámos de criar, ou seja, filtrar por código ou por ID dentro do relatório. Para o fazer, vamos ao editor de filtros: selecionamos o código do workflow ou ID (consoante os passos que fizemos em cima), e dizemos que tem de ser igual ao parametro criado:
Et voilá
Nada deverá alterar a forma de como o relatório é chamado ou da própria utilização. Para já, ainda não é possível colocar multivalues. Caso hajam mais desenvolvimentos, este tutorial será atualizado
Consulte artigos que poderão ser úteis aqui.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article