Fórum Como imprimir conteudo DBgrid #244082
22/07/2004
0
Reginaldo174
Curtir tópico
+ 0Posts
22/07/2004
Paulo_amorim
Se o DBGrid está mostrando, então a Query já está aberta...
Ligue o QR à query e imprima pelo DataSet...
Espero que ajude
Até+
Gostei + 0
22/07/2004
Reginaldo174
Então teria que imprimir realmente o Dbgrid, ou seja pegar linha por linha e coluna por coluna e jogar no QuickRep1. Sabe como fazer isto ?
Gostei + 0
09/04/2006
Vagner.oliveira
É exatamente isso que gostaria de fazer. Como pegar todos os dados de um DBGRid e por para imprimi-los no quick report?
Gostei + 0
10/04/2006
Paullsoftware
Gostei + 0
10/04/2006
Renato.pavan
Colega, eu criei um DBGrid herdeiro do DBGrid padrao do delphi q tem esse recurso, ele imprime os dados do grid em FortesReport alem de outros recursos, caso queira te envio o componente mas vc precisa de ter o Fortes Instalado tambem.
Abaixo a rotina que usei pra imprimir com Fortes, creio que com poucas alterações vc consiga adaptar para o quick.
procedure TRPDBGrid.MontaRptFortes; var i, posicao : Integer; coluna, titulo, subTitle: TRLLabel; campo : TRLDBText; begin posicao := 5; if DataSource = nil then Exit; FortesReport := TFortesReport.Create(nil); try with FortesReport do begin RLReport.DataSource := DataSource; if Report.Title <> ´´ then begin titulo := TRLLabel.Create(FortesReport); titulo.Font := FReport.FFontTitle; titulo.Align := faCenterTop; titulo.Parent := RLTitle; titulo.Caption := FReport.Title; titulo.Left := 0; end else RLTitle.Visible := False; if Report.SubTitle <> ´´ then begin subTitle := TRLLabel.Create(FortesReport); subTitle.Font := FReport.FFontSubTitle; subTitle.Align := faCenter; subTitle.Parent := RLSubTitle; subTitle.Caption := FReport.SubTitle; subTitle.Top := 3; subTitle.Left := 0; end else RLSubTitle.Visible := False; for i := 0 to pred(Columns.Count) do begin coluna := TRLLabel.Create(FortesReport); coluna.Parent := RLColumnHeader; coluna.Caption := Columns[i].Title.Caption; coluna.Top := 3; coluna.Left := posicao; coluna.Font.Style := [fsBold]; campo := TRLDBText.Create(FortesReport); campo.Parent := RLDetail; campo.DataSource := DataSource; campo.DataField := Columns[i].Field.FieldName; campo.Left := posicao; campo.Top := 2; campo.Font.Size := 8; posicao := posicao + Columns[i].Width; end; RLReport.Preview; end; finally FortesReport.Free; FortesReport := nil; end; end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)