Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Generar rtf o pdf con rave reports (https://www.clubdelphi.com/foros/showthread.php?t=37526)

johurgi 15-11-2006 18:17:56

Generar rtf o pdf con rave reports
 
Hola a tod@s:

Viendo el poco exito que tuvo mi anterior mensaje, voy a intentar plantear una nueva duda. Alguien sabe como generar con rave reports un '.rtf' o con '.pdf', como tengo que configurar el rava para cuando le de a ejecutar el informe(generar), me genere un '.rtf' que yo guardare por codigo y que luego mas tarde por codigo abrire con word.Todas las operaciones tienen que ser por codigo ya que el usuario lo unico que tiene que ver es el documento ya generado en word.

P.D.: Por si alguien lo menciona tengo ya los dos componentes del rave tanto para rtf como para pdf.

Gracias de antemano.

Loviedo 15-11-2006 22:16:49

Esto puede servirte.
Saludos.

Loviedo 15-11-2006 22:21:47

Perdón. me falló adjuntar fichero.

johurgi 16-11-2006 11:20:06

Primero y antes de nada muchas gracias por tu respuesta, pero tengo un problema, me da un error cuando llega al rvproject1.execute,el error es el siguiente:

Cannot create file "".

La version de rave que utilizo yo es la 6.5 con Borland Developer Studio 2006.

Un saludo

johurgi 16-11-2006 12:54:40

Ya lo solucione, era un parametro del RvNDRwriter,yo lo dejaba en modo por defecto como el delphi me lo insertaba y habia que cambiarlo a smuser, de esta forma no se vuelve loco y comienza a dar errores.

El codigo de como me ha quedado el metodo a groso modo es el siguiente:

Código:

procedure TFInformesPaciente.GenerarInformeConWord;
var
  NDRStream: TMemoryStream;
  fich: string;
begin
NDRStream := TMemoryStream.Create;
  try
    fich := 'C:\WINDOWS\temp\inftemporal.RTF';
    RvProject2.Engine := RvNDRWriter1;
    RvProject2.Open;
    NDRStream := TMemoryStream.Create;
    RvProject2.SaveToStream(NDRStream);
    RvNDRWriter1.Stream:= NDRStream;
    RvProject2.Execute;
    try
      RvRenderRTF1.PrintRender(NDRStream,fich);
    except
      raise Exception.Create('Error al crear fichero');
    end;
    RvProject2.close;
  finally
    NDRStream.Free;
  end;
  if fileExists(fich) then
  begin
    try
      LMDStarter1.Command:='C:\Archivos de programa\Microsoft Office\OFFICE11\WINWORD.EXE';
      LMDStarter1.Parameters:=fich;
      LMDStarter1.Execute;
    except
      ShowMessage('Error al iniciar el word.');
    end;
  end;



Gracias Loviedo por tu ayuda.


La franja horaria es GMT +2. Ahora son las 01:59:29.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi