O serviço de relatórios suporta alguns parâmetros especiais que tem seus valores definidos durante a geração do relatório, este recurso é válido para relatórios desenvolvidos no Jasper Studio.
Como os valores dos parâmetros especiais são definidos pelo serviço de relatório, o usuário não deve definir o valor para estes parâmetros. Os parâmetros especiais também não serão exibidos na tela de entrada do relatório. Durante a geração do relatório pelo Jasper Studio, o valor dos parâmetros será null.
Abaixo são apresentados os parâmetros especiais suportados pelo serviço de relatório e o procedimento para incluir estes parâmetros no relatório.
Parâmetros especiais
- SENIOR_TOKEN: Este parâmetro contém o token de autenticação do usuário que executou o relatório.
- Tipo: java.lang.String
- Limitações: Não é possível agendar relatórios que possuem este parâmetro especial, pois a geração do relatório agendado não possui vínculo com um usuário.
- Observações: O token é uma informação sensível, ou seja, não deve ser impresso no relatório. O token deve ser utilizado somente na chamada de APIs da Senior X, utilizando o data source de Web Services do próprio Jasper (https://community.jaspersoft.com/project/web-service-data-source).
- SENIOR_USERNAME: Este parâmetro contém o nome do usuário que executou o relatório.
- Tipo: java.lang.String
- Limitações: É possível agendar relatórios com este parâmetro, porém, o valor do parâmetro ficará vazio em gerações disparadas por um agendamento.
- SENIOR_CURRENT_DATE: Este parâmetro contém a data de execução do relatório.
- Tipo: java.time.OffsetDateTime
- Observações: Se a geração do relatório for disparada por um usuário, a data terá a informação do fuso horário do usuário. Caso a geração for disparada por um agendamento, a data estará no padrão UTC.
- SENIOR_LOCALE: Este parâmetro contém o idioma e região do usuário que executou o relatório.
- Tipo: java.util.Locale
- Observações: Caso a geração do relatório for disparada por um agendamento, o parâmetro conterá o idioma e região do servidor.
Adicionando parâmetros especiais no relatório
- Clique com o botão 2 (direito) do mouse no item parameters da view Outline e clique em Create Parameter
- Informe o nome e tipo (Class) do parâmetro especial, desmarque também a opção Is For Prompting
Para parâmetros que não são especiais, a propriedade Is for Promping indica a obrigatoriedade de preenchimento do parâmetro na execução do relatório pela Senior X, ou seja, se estiver marcado, será obrigatório. - O valor do parâmetro especial será definido durante a geração do relatório, sendo que parâmetro especiais não são exibidos na tela de entrada
Exibindo parâmetros especiais no relatório
- Adicione um campo do tipo Text Field no relatório
- Na propriedade Expression do Text Field, informe a expressão $P{NOME_PARAMETRO}, sendo que NOME_PARAMETRO deve ser substituído pelo parâmetro especial desejado
- O texto impresso será o valor que foi definido pelo serviço de relatório durante a geração do relatório