我以前用的REPORTBUILDER做报表,报表内容放在数据库中非常方便,
现改为Fastreport, 但不知如何将报表内容放中数据库中请高手明示我是这样用的
  frreport1.SaveToBlobField(qy_frp.FieldByName('frpnote'));
  frreport3.LoadFromBlobField(qy_frp.FieldByName('frpnote'));

解决方案 »

  1.   

    fr本身就是数据+参数生成的文件,要不你把该文件存到数据库中。
    顺便问一下,fr生成得.frf文件存到数据库中有何用处?
      

  2.   

    可以在SaveReport事件中写代码procedure TDesignForm.FRDesignerSaveReport(Report: TfrReport;
      var ReportName: String; SaveAs: Boolean; var Saved: Boolean);
    begin
      //判断名称是否相同,如果相同,则存入数据库
      if UpperCase(AdoQueryReport.FieldByName('ReportName').AsString)=UpperCase(ReportName) then
      begin
        AdoQueryReport.Edit;
        FRReport.SaveToBlobField(AdoQueryReport.FieldByName('Content'));
        AdoQueryReport.Post;
      end else
      begin
        //如果名称不相同,则根据条件是否另存一个文件
        if SaveAs then
        begin
          if OpenDlg.Execute then
            FRReport.SaveToFile(OpenDlg.FileName);
        end else
          FRReport.SaveToFile(ReportName);
      end;
    end;