Delphi+QuickReport, 請問動態切換印表機,同時列印倆種報表,後者不能列印 |
|
lingqingyun2
一般會員 發表:6 回覆:2 積分:1 註冊:2003-12-17 發送簡訊給我 |
各位大大:
小弟現在遇到現在一個難題:詳述如下:
我們的入庫系統要列印倆種報表,一種是連續報表紙打印的報表-->入庫單(211.6*139.70), 此種報表是用Epson1600KIII 的印表機.另一種是用HP LaserJet打印的A4報表;倆種報表的內容基本相同,只是後者是前者明細的條碼;
先需要自動列印這倆張報表.而每次列印時,入庫單能自動列印到指定的印表機,但那張A4的報表就無法輸出到指定的HP的印表機.我有測試過,發現如果不搞自動列印(即把QuickReportN.Print 改成QuickReportN.Preview),則倆報表的打印器都能自動切換,即入庫單默認的是-->Epson,A4報表默認的是-->HP;為甚麼我改成.Print後A4報表就不能列印出來呢?
代碼如下:
with Local_datamd.query1 do
begin
close;
ParamByName('plt').AsString :=plantNo;
try
open;
except
myshowmessage('Sql»y¥y°õ¦æ¥X¿ù');
end;
end;
Local_datamd.query1.First;
QRLabel3.Caption:= Label6.Caption;
QRLabel9.Caption:=Label17.Caption;
QRLabel10.Caption:=Label22.Caption;
QRLabel11.Caption:=Label21.Caption;
QRLabel12.Caption:=Label16.Caption;
QRLabel82.Caption:=Label41.Caption;
NowPrinter:=TPrinter.Create;
QuickRep1.PrinterSettings.PrinterIndex:=NowPrinter.Printers.IndexOf(epsonname);
NowPrinter.Free;
QuickRep1.Print; //列印入庫單 with qyFgp do
begin
close;
SQL.clear;
SQL.add('select * from iostock_fgp where ');
SQL.add(format('fgp_plt=''%s''',[plt]));
open;
first;
QRLabel55.Caption:=fieldbyname('FGP_ITM').AsString;//®Æ¸¹
QRLabel58.Caption:=fieldbyname('FGP_SHP').AsString;//¤u³æ
QRLabel60.Caption:=inttostr(RecordCount);//¼Æ¶q
end;
NowPrinter:=TPrinter.Create;
QuickRep3.PrinterSettings.PrinterIndex:=NowPrinter.Printers.IndexOf(hpname);
NowPrinter.Free;
QuickRep3.Print; //列印A4報表 請各位大大幫忙,謝謝!
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |