Histórico da Página
...
Executando Fórmulas onde Resultado deve ser Mostrado de Imediato
Produto: | TOTVS Reports | |||||||||||||||||||||||||||||||||||||||||||||||
Versões: | 12.1.x | |||||||||||||||||||||||||||||||||||||||||||||||
Ocorrência: |
| |||||||||||||||||||||||||||||||||||||||||||||||
Ambiente: |
| |||||||||||||||||||||||||||||||||||||||||||||||
Passo a passo: | Conteúdo
IntroduçãoIntroduçãoCom o advento da migração do TOTVS Reports da versão 11.8x para as versões superiores a versão 12.1.4, muitas alterações foram feitas principalmente na geração sobre demanda dos dados vinculados a cada componente presente no relatório. Em relatórios da versão 11.8x, por exemplo, a geração sobre demanda dos dados era realizada no momento da impressão de cada componente, ao contrário dos das versões mais atuais (12.1.5 ou superiores), onde a geração dos dados é feita através de apenas uma consulta SQL (Fase de Preparação), que é gerada a partir das tabelas e consultas SQL vinculadas ao relatório. 1 -Consulta SQL Vinculada a Bandas do Relatório
Executando Fórmulas onde Resultado deve ser Mostrado de ImediatoExistem diversos tipos de fórmulas, com diversos propósitos, vamos tratar, porém, de fórmulas, que necessitam do resultado imediato, para que o relatório apresente os valores devidamente atualizados.Ao se utilizar uma Consulta SQL vinculada a Bandas do Relatório, primeiro precisamos saber:
1.1 -Parâmetros de uma Consulta SQL Vinculada a Bandas do RelatórioExecutando Fórmulas com Resultado Imediato (1180)Vamos utilizar o relatório abaixo como exemploOs parâmetros utilizados na Consulta SQL podem ser vinculados aos seguintes controles:
1.2 - Parâmetros de uma Consulta SQL Não Vinculada a Bandas do Relatório
Quando Adicionada uma Consulta SQL, como fonte de dados, onde essa consulta não tem qualquer vinculo com alguma banda do relatório, diversos controles podem ser utilizados como parâmetro:
1.3 - Tirando o Vinculo entre uma Consulta SQL e uma Banda
Em alguns casos pode ser necessário retirar o vinculo de uma Consulta SQL de uma banda. Quando se deve fazer isso? Quando o controle a ser utilizado como parâmetro pela Consulta SQL não se encontra na lista de Parâmetros de uma Consulta SQL Vinculada a Bandas do Relatório. Informações | | ||||||||||||||||||||||||||||||||||||||||||||||
|
Galeria | ||||||
---|---|---|---|---|---|---|
|
Galeria | ||||||
---|---|---|---|---|---|---|
|
RELATÓRIO PRINCIPAL 1180
OBS: A fórmula FRM003 atualiza a tabela "Histórico de Disciplinas Concluídas".
Temos os campos necessários para a execução da Fórmula e para a execução da Consulta SQL vinculada a banda "Detalhe2".
Como na versão 1180 gera as informações sobre demanda, ou seja, prepara e executa os controles em um mesmo momento, a fórmula será executada, a tabela Histórico de Disciplinas Concluídas será atualizada, e consequentemente o relatório será gerado com as informações já atualizadas.
1.2 - Executando Fórmulas com Resultado Imediato (1200)
Com a migração da versão 1180 para a 1200, teremos que mudar a estrutura do relatório para que tenhamos o mesmo resultado.
Motivo: Com a Reestruturação do Reports em duas fases, os controles não mais são preparados e executados num mesmo momento, pelo contrário, as fases são bem distintas, onde os dados são recuperados na fase de Preparação e os controlessão executados na fase de Geração.
Por esse motivo, não poderemos executar num mesmo relatório a Fórmula e o restante da informação.
Teremos que dividir esse relatório em dois, onde a fórmula será executada no relatório principal, e o restante da informação, em um sub-relatório (controle), dentro do relatório principal.
RELATÓRIO PRINCIPAL 1200
OBS: A fórmula FRM003 atualiza a tabela "Histórico de Disciplinas Concluídas".
Temos os campos necessários para a execução da Fórmula e para a execução da Consulta SQL vinculada a banda "Detalhe1", localizada no próprio sub-relatório.
O sub-relatório deverá conter o restante das informações. Cada relatório é executado por completo; após a execução do relatório principal o sub-relatório também é executado, fazendo com que a Fórmula pertencente ao relatório principal execute primeiro, já que o relatório principal é executado antes, fazendo com que os dados do relatório gerem atualizados.
1.3 - Executando Fórmulas com Resultado Imediato (Outras Considerações)
Caso o relatório modelo da versão 1180 seja executado na versão 12 (a partir da versão 12.1.5), o relatório será gerado normalmente, porém as informações mostradas não estarão atualizadas.
Motivo: A Consulta SQL recuperará os dados antes da execução da Fórmula, fazendo com que os dados mostrados no relatório não sejam os mais atualizados.
Será necessário a execução do relatório uma segunda vez para que a atualização provocada pela execução da fórmula seja percebida.
Glossário
Nº | Nome | Descrição | Link Externo |
---|---|---|---|
1 | Bandas | Representa uma área especifica do relatório, usada para definir como renderizar os controles que pertencem a ela. | Mais sobre bandas... |
2 | Detalhes | Representa um relatório detalhe, ou seja, anexo a um relatório mestre. Deve ser utilizado nos casos onde a fonte de dados do relatório implemente uma relação mestre-detalhe entre o objeto vinculado ao relatório mestre e o objeto vinculado ao relatório detalhe. | Mais sobre detalhes... |
3 | Membro de Dados | Objetos vinculados as bandas do relatório que provem os dados a serem apresentados no mesmo. | |
4 | Fase de Preparação dos Dados | 1 Fase do Reports. Se concentra em reunir todas as fontes de dados vinculadas aos controles do relatório e cria uma consulta única que será submetida ao banco de dados. | |
5 | Fase de Execução e Impressão dos Controles | 2 Fase do Reports. Se concentra em preencher os valores dos controles a serem impressos e a apresenta-los em uma interface como formato de Relatório. | |
6 | Fonte de Dados | Provedores de Dados, assim como Tabelas do Banco, Consultas SQL, Providers. |
title | Observação |
---|
Observações: