ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Customização Rave Reports (Resolvido)

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Revista ActiveDelphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
e_pera
Novato
Novato


Registrado: Quinta-Feira, 22 de Janeiro de 2009
Mensagens: 95

MensagemEnviada: Qui Jan 22, 2009 9:36 am    Assunto: Customização Rave Reports (Resolvido) Responder com Citação

Bom Dia,

Fiz uma tela de customização para rave reports em MDI funciona que é uma beleza, só que na hora que mando imprimir me retorna um erro "Stream Read Error" não sei mais como resolver este problema, gostaria que alguem me ajuda-se: seque abaixo o codigo da criação do formulario e o botão que tenta imprimir o relatório:Obs: O RVProject e o RVRenderWriter estão em um data module:

constructor Tfrm_relatoriopadrao.Create(AOwner: TComponent; Relatorio: TMemoryStream);
begin
inherited Create(AOwner);
dm.RvNDRWriter1.Stream := Relatorio;
RvRenderPreview1.Render(dm.RvNDRWriter1.Stream);
end;

procedure Tfrm_relatoriopadrao.Btn_ImprimirClick(Sender: TObject);
var
ReportStream: TMemoryStream;
begin
ReportStream := TMemoryStream.Create;

PrintDialog.Options := [poPageNums] + [poWarning];
PrintDialog.FromPage := 1;
PrintDialog.MinPage := 1;
PrintDialog.ToPage := RvRenderPreview1.Pages;
PrintDialog.MaxPage := RvRenderPreview1.Pages;

if PrintDialog.Execute then begin
RvRenderPrinter1.NDRStream := ReportStream;

RvRenderPrinter1.Copies := PrintDialog.Copies;
RvRenderPrinter1.Collate := PrintDialog.Collate;

RvRenderPrinter1.FirstPage := 1;
RvRenderPrinter1.LastPage := RvRenderPreview1.Pages;

if PrintDialog.PrintRange = prPageNums then begin
RvRenderPrinter1.FirstPage := PrintDialog.FromPage;
RvRenderPrinter1.LastPage := PrintDialog.ToPage;
end;

RvRenderPrinter1.Render(ReportStream); <-- Onde acontece o erro ("Stream Read Error")
end;
FreeAndNil(ReportStream);
end;

Na Linha RvRenderPrinter1.NDRStream := ReportStream; troque por
RvRenderPrinter1.NDRStream := dm.RvNDRWriter1.Stream;

Na linha RvRenderPrinter1.Render(ReportStream) e só retirar o ReportStream;
RvRenderPrinter1.Render()

Na realidade não e necessário o uso do TMemoryStream;
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail Yahoo Messenger MSN Messenger
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Revista ActiveDelphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB