Ver Mensaje Individual
  #4  
Antiguo 12-10-2006
fly fly is offline
Miembro
 
Registrado: abr 2005
Posts: 65
Reputación: 20
fly Va por buen camino
Este es el que yo uso, ya no recuerdo si lo hice o lo pille por ahí, aunque ahora que me fijo casi seguro que lo hice... a juzgar por la cantidad de "exits" que hay

Código Delphi [-]
Function TDMreport.Report2File(Tipo: String; report_name: string; file_name: String): Integer;
begin
// ****  CREAR PDF FUNCIONA OK *******
  Screen.Cursor:=crHourGlass;
  RvSystem1.DefaultDest := rdfile;
  RvSystem1.DoNativeOutput := false;
// Seleccionamos el report
  if not RvProject1.SelectReport(report_name,false)
     then
      begin
       Result:=1; // Repor No encontrado
       Screen.Cursor:=crDefault;
       exit;
      end;
// Seleccionamos el renderizador...
  if Uppercase(tipo)='PDF' then RvSystem1.RenderObject := RvRenderPDF1;
  if Uppercase(tipo)='HTM' then RvSystem1.RenderObject := RvRenderHTML1;
  if Uppercase(tipo)='RTF' then RvSystem1.RenderObject := RvRenderRTF1;
  if Uppercase(tipo)='TXT' then RvSystem1.RenderObject := RvRenderText1;

// le quitamos el permiso de mostrar el setup
  RvSystem1.SystemSetups := RvSystem1.SystemSetups - [ssAllowSetup];
// asignamos el nombre del fichero
  RvSystem1.OutputFileName:=file_name+'.'+tipo;
// ejecutamos el report
  try
   RvProject1.Execute;
  except
   on E: Exception do
         begin
          result:=1;
          showmessage(e.Message);
          Screen.Cursor:=crDefault;
          exit;
         end;
  end; // try

// ****  FIN  CREAR PDF FUNCIONA OK *******
  Screen.Cursor:=crDefault;
  result:=0;
end;
A ver si te vale, yo lo uso para enviar el PDF por correo sin hacer previo.

Última edición por fly fecha: 12-10-2006 a las 04:30:50.
Responder Con Cita