dm.Query2.Edit;
      frreport1.SaveToFile('tempfile1');
      dm.Query2.FieldByName('report_name').AsString:=ExtractFileName('tempfile1');
      Fs:=TFileStream.Create(pchar('tempfile1'), fmOpenRead or fmShareDenyWrite);
      Tmp:=dm.Query2.CreateBlobStream(dm.Query2.FieldByName('report_value'),bmReadWrite);
      Tmp.CopyFrom(fs,fs.Size);
      dm.Query2.Post;
      Tmp.free;
      fs.free;
出现Query2: Cannot modify a read-only dataset.错误
请各位高手指点一下

解决方案 »

  1.   

    我用以下语句实现直接打印
      frReport1.PrepareReport;
      frReport1.PrintPreparedReport('', 1, True, frAll);
    出现了List index out ofbounds(0)错误,有哪位好民的大哥可以帮帮我呀
      

  2.   

    procedure TFormLBReport.frDesigner1SaveReport(Report: TfrReport;var ReportName: String; SaveAs: Boolean; var Saved: Boolean);
    var
      pathfilename:string;
    begin
      pathfilename:=pvRootpath+'temp\'+临时文件名;  Report.SaveToFile(pathfilename);
      query1.close;
      query1.sql.clear;
      query1.sql.add('update reports set reportfile=:reportfile');
      query1.sql.add('where progname="'+pvProgname+'" and reportname=:reportname');
      query1.ParamByName('reportname').asstring:=QueryReports.fieldbyname('reportname').asstring;
      query1.parambyname('reportfile').LoadFromFile(pathfilename,ftBlob);
      query1.execsql;
    end;
      

  3.   

    还没搞定吗,我的办法一定行 ,reportfile是image型字段