本帖最后由 yjdxboss 于 2011-06-26 14:54:13 编辑

解决方案 »

  1.   

    那是delphi的问题吗,是你的报表组件有问题吧
      

  2.   

    procedure TForm2.btn1Click(Sender: TObject);
    var
      s:string;
    begin
    if form1 = nil then
    begin
    form1 := TForm1.create(self);
    end;if Form1 <> nil then
    begin  s:='SELECT CMSMC.MC002,MB001,MB002,MB003,MB004,CMSMC.MC001 FROM INVMB,INVMC,CMSMC WHERE '+
          'INVMC.MC002=CMSMC.MC001 AND INVMB.MB001=INVMC.MC001 AND '+
          '  CMSMC.MC004='+'''1'''+'AND CMSMC.MC018='+'''Y'''+' AND'+
          '  CMSMC.MC005='+'''Y'''+'AND'+
          ' INVMC.MC007>0 AND INVMC.MC002='+''''+Trim(form2.cbb1.text)+''''+'ORDER BY INVMB.MB001 ASC';  with Form1.qry1 do
      begin
        Close;
        sql.Clear;
        SQL.Add(s);
        Open;
      end;
     Form1.qrdbtxtMC001.DataSet := form1.qry1;
     form1.qrdbtxtMC001.DataField := 'MC001';
     form1.qrlbl36.Caption:=edt2.Text;//盘点序号
     form1.qrlbl34.Caption:= DateToStr(dtp1.date);//盘点日期
     form1.qckrp1.Preview;
     FreeAndNil(Form1); end;
    end;
      

  3.   

    printer.getprinter(...)
    然后设定纸张大小