segunda-feira, 1 de junho de 2009

Relatórios - Rave Report - "como receber uma variável do Delphi"

Se você pretende gerar um relatório com as informações do seu sistema com o Rave Report e está começando a usar agora, certamente vai se deparar com essa dificuldade, "como receber uma variável do Delphi ?" .
Não é nenhum bicho de 7 cabeças, mas se você não ler o que vou postar, dificilmente vai conseguir fazer, se você tem os campos prontos no seu banco de dados, ótimo, é só coloca-los no Rave e usar normalmente, assim como em outros geradores de Relatório (esse passo a passo eu mostro depois), agora se você precisa de um valor que está sendo
calculado na sua aplicação e não está sendo salvo em nenhuma tabela do seu banco, vai ter que usar passagem por parâmetro, olhe o exemplo abaixo e tudo ficará claro pra você:
Imagine que temos uma variável global em nosso sistema, onde é gravada a versão do sistema e nos relatérios voê tem que imprimir o número da versão ou seja temos que imprimir o conteúdo dessa variável que foi declarada lá dentro do projeto Delphi.

O conteúdo dessa variável deve ser passado como parâmetro na hora de imprimir o relatório e o Rave “enxerga” essa variável como se fosse uma variável interna dele.
No Delphi
Crie uma nova aplicação e deixe-a conforme a figura abaixo.


Agora dê um duplo clique no RvProject e o Rave Visual Design será aberto, na guia Report, selecione o componente Region, dimensione ele de forma que ocupe toda a área que será impressa.
No Tree Panel em Report Library e escolha o relatório Report1, após isso clique em Parameters no Object Inspector digite o nome de nosso parâmetro que será Versao
Adicione um Band Component e marque a opção Body Header que esta localizada na opção Band Style.
Adicione um DataText e clique na opção DataField, no Project Parameters selecione o parâmetro que acabamos de criar que foi o versão, após selecionar clique em Insert Parameter
O Resultado final será conforme a figura abaixo.


Salve seu projeto, como Project1 mesmo, agora volte lá no Delphi e no RvProject associe a propriedade ProjectFile ao projeto que acabamos de criar

Adicione o seguinte código no Button.
procedure TForm1.Button1Click(Sender: TObject);
begin

//Seta o Parametro versão com o conteúdo do Label1
RvProject1.SetParam('Versao',Label1.Caption);

//Executa o relatorio
RvProject1.ExecuteReport('Report1');
end;
Agora é só compilar, e testar e nosso resultado final será semelhante a imagem abaixo.
Preview do Rave com o Valor do parâmetro que foi recebido
Pronto, agora pode por a caixola pra funcionar e gerar o relatório que quizer !!!! boa sorte !!!





Um comentário:

  1. Fala Marcera estava dando uma olha no seu Blog muito bom véio, explicando passo a passo as paradas, parabéns continue com essa garra. Um abaraço.

    ResponderExcluir