Usar caixas de combinação como filtros
Uma prática comum nos painéis consiste em usar caixas de combinação em um relatório para controlar os valores exibidos em um ou mais relatórios. Os valores selecionados nas caixas de combinação são passados para variáveis, que são usadas como parâmetros do relatório. O relatório é colocado em um widget em um painel. Outros relatórios que tenham os mesmos parâmetros ou que façam referência às mesmas procuras são automaticamente vinculados. A seleção de uma data, por exemplo, a partir de uma caixa de combinação atualizará todos os widgets que contêm um parâmetro de data.
Se você usar caixas de combinação dessa forma, é importante garantir que as caixas de combinação e os valores são sincronizados. Os usuários não devem, por exemplo, conseguir selecionar uma data a partir de uma caixa de combinação, mas devem conseguir ver valores para uma data diferente nos relatórios vinculados.
Para garantir que as caixas de combinação e os valores estejam sincronizados, use as variáveis passadas por caixas de combinação como variáveis de entrada e saída.
O uso de caixas de combinação como filtros não é adequado à criação de relatórios dinâmicos, ou seja, relatórios que não dependam de uma origem de dados específica. Em alternativa, considere usar variáveis XML.
Exemplo
Este exemplo demonstra o modo como as caixas de combinação e os valores podem se tornar dessincronizados:
Um relatório exibe uma caixa de combinação que contém uma lista de datas. Por padrão, a data é Todos os anos.
As caixas de combinação produzem uma variável, mas não têm uma variável de entrada. A variável é usada como um parâmetro de relatório.
Coloque o relatório em um painel, com outros relatórios que estão vinculados.
Selecione 2004 na caixa de combinação. Passe 2004 para a variável.
Os widgets vinculados no painel são automaticamente atualizados para exibir valores em relação a 2004.
Salve o painel.
Por padrão, os valores dos parâmetros são salvos com o painel. Por isso, o valor atual do parâmetro (2004) é salvo.
Faça logoff e depois recarregue o painel.
Você espera ver 2004 selecionado, mas a caixa de combinação reverteu para Todos os anos.
A razão disso é que, apesar de o valor da variável/parâmetro ser salvo, o painel não o conseguiu passar para a caixa de combinação, porque não existe qualquer variável de entrada.
Mas os valores nos outros widgets também são armazenados com o painel e são exibidos quando o painel é carregado. Por isso, ao abrir novamente o painel, a caixa de combinação reverte para Todos os anos, mas os outros widgets continuam exibindo valores para 2004.
Existem duas soluções para o problema. Um pode ser implementado no Application Studio e o outro no painel. No Application Studio, a solução é usar a mesma variável como variável Saída e Entrada.
Em um painel, a única opção é desativar o armazenamento de parâmetros e tornar a caixa de combinação no 'novo widget'. Quando o painel é recarregado, a caixa de combinação orienta os outros widgets. Isso não impede que a caixa de combinação reverta para Todos os anos, mas garante que os valores nos relatórios vinculados também estejam relacionados com Todos os anos.