主窗体的报表查询按钮脚本:
 FormRepHzData_fgs := TFormRepHzData_fgs.Create(Self);    /* 报表窗体创建*/
 With FormRepHzData_fgs do                
    begin 
      With QryHz_FgsjfAll do                              /* 报表窗体上的qurey 查询*/
      begin
        if active then close;
        Prepare;
        Open;
      end;      QuickRep1.Preview;                                   /*报表显示*/
   
  end;在执行第一次查询的事件时,qurey 查询及QuickRep1.Preview速较快,
但第二次查询的事件时,执行qurey 查询速度正常,QuickRep1.Preview事件很慢,这是为什么?如何优化?

解决方案 »

  1.   

    你最后要把窗体释放掉的,在重新创建
    try
      FormRepHzData_fgs := TFormRepHzData_fgs.Create(Self);    /* 报表窗体创建*/
      With FormRepHzData_fgs do                
        begin 
          With QryHz_FgsjfAll do                              /* 报表窗体上的qurey 查询*/
          begin
            if active then close;
            Prepare;
            Open;
          end;      QuickRep1.Preview;                                   /*报表显示*/
       
      end;
    finally
      QuickRep1.Destroy;
    end;