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".

Utilize "F11" para acessar as propriedades dos componentes.

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

Obs.: Guarde o nome do componente que está ligado ao DataSet do RvDataSetConnection, ele será usado posteriormente.

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, atribuiratribua 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

        Localize o fim da montagem da query no código e adicione um breakpoint uma linha abaixo do fim da montagem. Execute o sistema até que chegue ao breakpoint adicionado e execute a função "MostraParams(NomeDaQuery)". Uma tela com a query será aberta no sistema.

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-1622052160887.png

image-1622052366197.png

        Copie todo o texto da query gerada, checando até o fim com Ctrl + End para que não fique trechos para trás. 

 
Passo 5: Configurar a nova FDQuery utilizando a query extraída

        No formulário, dar duplo clique na FDQuery para que o editor seja aberto. Cole a Query copiada anteriormente na caixa "SQL Command" e clique em executar. Os campos gerados pela SQL deverão aparecer na aba "RecordSet". Verifique se todos os campos (inclusive o seu) foram gerados. Checado os campos, clique em "OK".  

image-1622052739889.png

        Com a FDQuery configurada, clique no componente "RvDataSetConnection" referente à query que está sendo trabalhada, e atribua na propriedade "DataSet" a nova FDQueryFDQuery.

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

image-1622053072383.pngimage-1622053072383.png

11. 
Rodar
Passo 6: Incluir novo(s) campo(s) no Data View do Rave

        Execute o sistema novamente até o breakpoint adicionado anteriormente.no Abrirpasso com4. Com duplo clique ono componente RvProject.RvProject, Atravésabra doo Rave Reports. No menu File > Open > SelecionarSelecione o arquivo .rav do relatório-alvo na pasta do seu branch > Abrir. No menu lateral, localizar o viewView dareferente query-alvoà query que está sendo trabalhada > cliqueClique direito > Refresh Refresh.

image-1622054363567.pngimage-1622054363567.png

CUIDADO: Caso alguma mensagem de aviso apareça na tela, consultar um dev antes de realizar o refresh.refresh para que nenhum campo seja apagado.

Após realizar o refresh, o novo campo poderádeverá serestar localizado expandindodentro odo componente view. Salve o relatório (Ctrl + S) e Interrompa novamente a execução do sistema.

image-1622054545273.png

 

Passo 7: Configurar os componentes para a inclusão do(s) novo(s) campos no relatório

        No formulário, clique no componente RvDataSetConnection que foi utilizado para adição do(s) campo(s), e na propriedade "DataSet" atribua o componente que estava sendo usado antes.

        Na propriedade "ProjectFile" do componente RvProject, atribua o caminho do relatório que foi aberto anteriormente no Rave. Dê um duplo clique no dlg da propriedade "StoreRAV", clique em "Load" para que as alterações sejam carregadas, depois "Close".

        Abra o RvProject e cheque se o(s) novo(s) campo(s) está(ão) no Data View após carregar as informações. Feito isso, os novos componentes adicionados podem ser excluídos do formulário.