Dê dois cliques no componente frxReport para abri na forma de Designer, vamos iniciar (File >> New Report). Pronto criamos um novo documento ele nos trouxe como padrão ReportTitle1, MasterData1 e um PageFooter1, adicionar as tabelas no FastReport menu (Report >> Data);
Adicionar as seguintes bandas: DetailData1 para colocar os itens, Footer para o total de registros, e um Child1 para o cabeçalho das vendas e um Child2 para o cabeçalho dos Produtos o MasterData1 para adicionar nossas vendas já esta adicionado!
Na banda MasterData1 de um duplo clique (Na parte laranja) e adicione a tabela frxDataset;
Na banda DetailData1 de um duplo clique (Na parte laranja) e adicione a tabela frxDataset2;
Vamos adicionar os campo do titulo, "Número da venda, Nome cliente, Data, Valor total" clicando no "Text Object" o A vermelho ao lado e coloque no Child1 ( O que esta acima do MasterData1 )
Agora vamos colocar os campo das vendas no MasterData1, clica ao lado na Data e arrasta e solta no MasterData1, tentamos deixar bem alinhado com o titulo a cima para poder entender bem qual titulo se refere a cada coluna.
Obs: Quando exportado para Excel ou para alguma planilha se os componentes não estiverem bem alinhados acaba se criando linhas e colunas desnecessárias
Selecione o campo colocamos o valor total no MasterData de um duplo clique no mesmo e na aba Format vamos colocar a Caregory Number e vamos escolher a terceira opção de formatação
Selecione o campo colocamos a Data no MasterData de um duplo clique no mesmo e na aba Format vamos colocar a Caregory Date/Time e vamos selecionar a primeira opção e alterar no Format String os "." por "/" como no gif abaixo.
Agora colocamos os campos de produtos na banda DetailData1 da mesma maneira que colocamos os campos da venda, abaixo como ficou.
Agora colocaremos os totais no Footer1, faremos a soma das Quantidades de itens e uma soma de quantos produtos temos ( Somara a quantidade de vezes que irá passar pelo DetailData1). Temos um gif abaixo mostrando como fazer.
Function = E a função que vai utilizar (SUM, MIN, MAX, AVG, COUNT...);
Data band = E a banda que deseja fazer o calculo;
DataSet = O DataSet da banda desejada;
DataField = Caso necessário utilizar no calculo;
Exemplo: Uma soma de todas as quantidades de uma venda.
Function: SUM (Soma)
DataBand: DetailData1 que ira passar em todos os itens da venda;
DataSet: frxDataset2 que contem as informações da quantidade que ira ser somada
DataField: O campo Quantidade que iremos somar
Por fim selecione todos os campo da banda MasterData1 e na propriedade Color coloque clSilver