Skip to main content

Manipulação de campos no relatório rave

Passo 1: Localizar os componentes no formulário

        Primeiramente, será necessário localizar o formulário que contém o relatório RvProject que será alterado (normalmente, estará localizado na tela de impressão do relatório). Após localizar o componente rave, será necessário localizar os componentes FDQuery que terão as querys responsáveis por carregar as informações do banco de dados que serão usadas no relatório.
        Para localizar os FDQuerys do relatório, clique no componente RvDataSetConnection e verifique o componente apontado na propriedade "DataSet".

Alguns componentes podem estar "escondidos". Ajuste o tamanho do formulário, se necessário.

image-1622049529709.png

No exemplo acima, a query pode ser localizada através do caminho RVC_RELAT > CDS_RELAT > DSP_RELAT > QRELAT

image-1622049640256.png

Em alguns casos, a Query poderá estar ligada diretamente ao RvDataSetConnection.

 
Passo 2: Localizar, no código fonte, a montagem da Query 

        Após localizar os TFDquerys, vimos que as querys que alimentam esse relatório são: QRelat e QEmpresa. Descoberto o nome das querys, busca-las dentro do código (utilizando Ctrl + F, por exemplo).

        Adicionar ou remover os campos necessários no SELECT referente à query que será utilizada no relatório. Nesse exemplo, o campo "DeducoesServicoes" será incluído ao relatório. 

image-1622051469729.png

Obs.: Podem existir mais lugares onde a Query é montada. Alterar todos os trechos que forem necessários.

 
Passo 3: Incluir e configurar uma nova FDQuery e um FDConnection ao formulário

       Para incluirmos o novo campo ao relatório, será necessário adicionar novos componentes FDQuery e FDConnection ao formulário (caso a lista de componentes não esteja aberta, pode ser encontrada através do menu View > Tool Windows > Tool Palette). Na propriedade "Connection" da nova FDQuery, atribuir o novo FDConnection.

image-1622050347673.png

        No novo FDConnection, realizar as seguintes configurações: 

image-1622050579269.png

O parâmetro "Database" deve receber o caminho em que a base de dados .FDB está localizada.

 
Passo 4: Extrair do código a query-alvo completa
6. Rode o sistema com um breakpoint em um ponto onde toda a query já foi montada.

image-1622052160887.png

7. Utilizar a função "Mostraparams" para extrair a Query montada. 

IMPORTANTE: Por garantia, a query gerada deverá ter todos os campos do SELECT, sendo assim, os trechos de DLL deverão ser incluídos.

image-1622052366197.png

8. Copiar a query COMPLETA gerada. 

Uma parte da query pode estar oculta. Checar todo o trecho com Ctrl + End.  

9. Colar e executar a Query no componente FDQuery adicionado anteriormente > OK. Interromper o processo do sistema.

image-1622052739889.png

10. Atribuir na propriedade "DataSet" do RvDataSetConnection a nova FDQuery.

image-1622053072383.png

11. Rodar o sistema novamente até o breakpoint adicionado anteriormente. Abrir com duplo clique o componente RvProject. Através do menu File > Open > Selecionar o arquivo .rav do relatório-alvo > Abrir. No menu lateral, localizar o view da query-alvo > clique direito > Refresh 

image-1622054363567.png

Caso alguma mensagem de aviso apareça na tela, consultar um dev antes de realizar o refresh.

Após realizar o refresh, o campo poderá ser localizado expandindo o componente view.

image-1622054545273.png