Os filtros dinâmicos em relatórios personalizados permitem que o usuário defina os dados que deseja visualizar, diminuindo a necessidade de tabelas dinâmicas no Excel, ou de filtrar os dados após gerar o relatório. Assim, ao inserir os filtros ainda no modelo com tags, o sistema gerará o relatório somente com os dados desejados.
Esta página se refere à nova versão do ERP MAXIPROD. Para migrar as ordens de produção para a nova versão, entre em contato com o suporte. Veja as novidades da nova versão, clicando aqui.
Essa página mostra:
Como obter as tags?
Atualmente, o sistema permite a personalização de relatórios com tags. Elas são “identificadores” de campos, e retornam um ou mais registros do sistema. Por exemplo, a tag [[Item.Codigo]] retorna o código de um item cadastrado no sistema. Para saber mais sobre as tags e finalidades, clique aqui.
1) Para encontrar uma tag, acesse uma tela da nova versão do ERP MAXIPROD e vá ao menu “Imprimir > Dicionário de tags”.

2) O campo “Pesquisar” permite a busca das propriedades listadas.

3) Clique nas propriedades para navegar pelo dicionário e localizar a tag desejada.

4) Posicionando o cursor do mouse sobre a tag, aparece o ícone mostrado abaixo. Clique nele para copiar a tag!

5) Para verificar se é a propriedade correta, passe o mouse sobre o ícone “abre aspas” à direita da tag.

Filtrar e ordenar dados
Para construir os filtros nas tags, são necessários modificadores:
[[Tag]:Filtrar(|¬ {Valor da função} ¬|)]: este modificador filtra os registros retornados pela tag, com base no valor da função.[[Tag]:Ordenar(|¬ {Valor da função} ¬|)]: este modificador ordena os registros retornados pela tag, com base no valor da função.
Detalhando:
- [[Tag]]: tag utilizada no relatório, obtida através do passo citado aqui.
:Filtrar()e:Ordenar(): modificadores que funcionam conforme seus valores.- Limitadores
|¬ ¬|: definem aquilo que deve ser considerado o valor da função. {Valor da função}: deve ser um código GraphQL válido para aquela entidade, por exemplo, estoques.
Para saber mais sobre outros modificadores, clique aqui.
Dica: Para gerar o caractere “¬” pressione a tecla Alt Gr + 6 no teclado.
O valor da função não aceita colchetes “[]”. Para usar um colchete no código GraphQL, utilize “^- -^”.
Observações:
- Não é permitido inserir a mesma tag com filtros diferentes.
Por exemplo: [[Item.Codigo]:Filtrar(|¬ {Filtro 1} ¬|)] e [[Item.Codigo]:Filtrar(|¬ {Filtro 2} ¬|)] . Neste caso, deve-se colocar todos os filtros na mesma tag: [[Item.Codigo]:Filtrar(|¬ {Filtro 1} {Filtro 2} ¬|)]. - O filtro não retorna um resultado visível, serve somente como uma tag auxiliar de uma tag principal.
Por exemplo: a tag de filtro [[Item.Estoques]:Filtrar(|¬ {Filtro} ¬|)] se aplica a uma tag-filha principal, como [[Item.Estoques.Quantidade]].
Como obter os campos para filtragem
Ao montar um filtro dinâmico em uma tag é necessário obter o campo desejado.
Seja a tag com filtro: [[Tag]:Filtrar(|¬{ quantidade: { gt: 10 }, tipo: { eq: NORMAL } }¬|)]
- Quantidade e tipo são os campos/atributos no qual estamos baseando o filtro.
Para obter estes campos, é necessário trabalhar com a API GraphQL. Para entender mais sobre a API, clique aqui.
Exemplos
Após entender todos os passos, vamos montar um filtro de exemplo:
[[OrdensDeProducao.InsumosDaOrdemDeProducao.Item.Estoques]:Filtrar( |¬ { quantidade: { gt: 10 }, tipo: { eq: NORMAL } }¬|):Ordenar(|¬^-{item: {codigo: DESC}}-^¬|)]
Organizando para uma melhor visualização:
[[OrdensDeProducao.InsumosDaOrdemDeProducao.Item.Estoques]:
Filtrar( |¬ { quantidade: { gt: 10 }, tipo: { eq: NORMAL } } ¬| ) :
Ordenar( |¬ ^- {item: {codigo: DESC}} -^ ¬| )]
Detalhando:
- [[OrdensDeProducao.InsumosDaOrdemDeProducao]: tag que retorna os estoques dos itens que são insumos de uma OP.
- :Filtrar( ): função para filtrar algo dentre estes estoques.
- |¬ { quantidade: { gt: 10 }, tipo: { eq: NORMAL } }¬| : o filtro buscará somente estoques com quantidade maior que 10 e do tipo “normal”.
- :Ordenar( ): função que ordena os registros filtrados.
- |¬^-{item: {codigo: DESC}}-^¬|: ordena os registros pelo código do item, em ordem decrescente.
Por fim, essa consulta deve ser colocada no modelo de relatório e importada para o sistema, conforme mostrado aqui.
Em caso de dúvidas, entre em contato com o suporte.
Veja também: