2013-05-31 3 views
0

각각 하나의 보고서를 인쇄 할 수있는 장치가있는 RVSystems가 여러 개 있습니다. 사용자가보고 싶은 목록에서 사용자가 선택할 수있는 프로그램이 있습니다.Rave Reports Merging

내가 해결하려고하는 문제는 사용자가 선택하는 것들을 결합하여 그들이 선택한 각각에 대해 미리보기/인쇄 할 필요가 없다는 것입니다. RVProject는 모든 코드 기반이며 .rav 파일을 전혀 사용하지 않기 때문에 사용하고 싶지 않습니다. 감사!!!

나는 Nevrona 팁 # 41을 살펴 보았지만 별도의 보고서에 액세스하려면 .rav 파일과 함께 RVProject를 사용합니다.

http://www.wpcubed.com/manuals/wpdf/index.html?ravereport.htm

예 2 : \ rave.pdf : 이 NDR은 'C PDF 파일에 직접 여러 개의 파일을 렌더

+0

에 대해이 절차를 설정합니다. 당신은 더 좋은 기회를 가질 수 있습니다. –

+0

감사합니다. 제안과 Charles 편집에 감사드립니다! – user2141045

답변

0

WPCubed wPDF 하나 개의 PDF 파일에 여러 RAVE 보고서를 인쇄 할 수 있습니다 '. 열린 대화 상자를 사용하여 파일을 선택할 수 있습니다.

procedure TForm1.Button1Click(Sender: TObject); 
var 
    OpenDialog: TOpenDialog; 
    RvRenderWPDF: TRvRenderWPDF; 
    WPPDFPrinter: TWPPDFPrinter; 
    FileStream: TFileStream; 
    output: string; 
    i: Integer; 
begin 
OpenDialog := TOpenDialog.Create(Self); 
OpenDialog.Options := [ofAllowMultiSelect]; 
RvRenderWPDF := TRvRenderWPDF.Create(Self); 
WPPDFPrinter := TWPPDFPrinter.Create(Self); 
try 
    OpenDialog.Filter := 'NDF Files|*.NDR'; 
    RvRenderWPDF.PDFPrinter := WPPDFPrinter; 
    RvRenderWPDF.Active := TRUE; 
    WPPDFPrinter.AutoLaunch := TRUE; 
    WPPDFPrinter.CompressStreamMethod := wpCompressFastFlate; 
    if OpenDialog.Execute then 
    begin 
    output := 'dummy'; 
    WPPDFPrinter.Filename := 'c:\rave.pdf'; 
    WPPDFPrinter.BeginDoc; 
    try 
     for i := 0 to OpenDialog.Files.Count - 1 do 
     begin 
     FileStream := TFileStream.Create(OpenDialog.Files[i], fmOpenRead); 
     try 
      RvRenderWPDF.PrintRender(FileStream, output); 
     finally 
      FileStream.Free; 
     end; 
     end; 
    finally 
     WPPDFPrinter.EndDoc; 
    end; 
    end; 
finally 
    OpenDialog.Free; 
    RvRenderWPDF.Free; 
    WPPDFPrinter.Free; 
end; 
end; 

또한 어쩌면 당신은 레이브 보고서를 병합 Gnostice eDocEngine를 사용할 수 있습니다 레이브 보고서 스냅 샷에서

프로그래밍 수출이 예에서는 파일이 eDocEngine은 레이브 보고서 보고서를 내보내는 데 사용됩니다

http://www.gnostice.com/nl_article.asp?id=247&t=Export_From_Rave_Reports_To_PDF_And_Other_Formats

NDR (보고서 스냅 샷) 파일에서 가져옵니다.

IDE를 열고 VCL 양식 응용 프로그램을 만듭니다. 세 개의 Rave Reports 인터페이스에 양식 (TgtRaveExportInterface)을 내 보냅니다. PDF 엔진 (TgtPDFEngine), RTF 엔진 (TgtRTFEngine) 및 XHTML 엔진 (TgtXHTMLEngine) 구성 요소를 양식에 놓습니다. 는 폼에 버튼을 추가하고 해당 클릭 이벤트 핸들러 나는`레이브 - reports`에 태그 중 하나를 변경 제안

procedure TForm5.Button2Click(Sender: TObject); 
begin 
    // Set output engines for the report export components 
    gtRaveExportInterface1.Engine := gtPDFEngine1; 
    gtRaveExportInterface2.Engine := gtRTFEngine1; 
    gtRaveExportInterface3.Engine := gtXHTMLEngine1; 

    // Disable output preferences dialog boxes 
    gtPDFEngine1.Preferences.ShowSetupDialog := false; 
    gtRTFEngine1.Preferences.ShowSetupDialog := false; 
    gtXHTMLEngine1.Preferences.ShowSetupDialog := false; 

    // Set output file name of the engines 
    gtPDFEngine1.FileName := 'eDoc_Rave_Demo.pdf'; 
    gtRTFEngine1.FileName := 'eDoc_Rave_Demo.rtf'; 
    gtXHTMLEngine1.FileName := 'eDoc_Rave_Demo.html'; 

    // Export a Rave Reports snapshot file to PDF, RTF and XHTML 
    gtRaveExportInterface1.RenderDocument('eDoc_Rave.ndr'); 
    gtRaveExportInterface2.RenderDocument('eDoc_Rave.ndr'); 
    gtRaveExportInterface3.RenderDocument('eDoc_Rave.ndr'); 
end;