p>¡¡¡¡Óû§ÔÚʹÓÃÊý¾Ý¿âÓ¦ÓóÌÐòʱ¾³£ÒªÉú³É±¨±í£¬ÀûÓÃDelphi 4µÄQReport ²¿¼þ£¬¿ÉÒÔ°ïÖúÎÒÃÇ¿ìËÙ·½±ãµØÉú³É±¨±í¡£ÕâÀïÒÔÒ»¸öÉ豸¹ÜÀí±¨±íΪÀý˵Ã÷ÈçºÎÓÃQReport²¿¼þÓëQuery²¿¼þÉè¼Æ´Ó¶à¸öÊý¾Ý±íÖÐÉú³É±¨±í¡£
Ò»¡¢ ËùÓÃÊý¾Ý¿â
¡¡¡¡ÕâÀïÓõ½Èý¸öFoxproÊý¾Ý±í£¬DLBMK£¨É豸´óÀà±àÂ룩¡¢SBXHK£¨É豸Ðͺż°ÅäÖã©¡¢BMSBK£¨É豸ËùÔÚ²¿ÃÅ£©£¬´æ·ÅÔÚD£º\SBĿ¼Ï¡£Æä¿â½á¹¹ÈçÏ£º
£¨Ò»£© DLBMK
| ×Ö¶ÎÃû³Æ |
×Ö¶ÎÀàÐÍ |
½âÊÍ |
| 1 |
DLBH N3 |
É豸´óÀàµÄ±àºÅ |
| 2 |
DLMC C20 |
É豸´óÀàµÄÃû³Æ |
£¨¶þ£©SBXHK
| ×Ö¶ÎÃû³Æ |
×Ö¶ÎÀàÐÍ |
½âÊÍ |
| 1 |
XHBM N3 |
É豸ÐͺŵıàÂë |
| 2 |
DLBH N3 |
ͬDLBMKÖеÄDLBH×Ö¶Î |
| 3 |
SBXH C30 |
É豸ÐͺŠ|
| 4 |
SBPZ C30 |
É豸ÅäÖà |
| 5 |
SBSL N3 |
É豸ÊýÁ¿ |
£¨Èý£©BMSBK
| ×Ö¶ÎÃû³Æ |
×Ö¶ÎÀàÐÍ |
½âÊÍ |
| 1 |
BMMC C20 |
²¿ÃÅÃû³Æ |
| 2 |
XHBM N3 |
ͬSBXHKÖеÄXHBM×Ö¶Î |
| 3 |
SL N3 |
ÊýÁ¿ |
¡¡¡¡ÀûÓÃÕâÈý¸öÊý¾Ý±í£¬ÒªÉú³ÉÒ»¸öÖ»ÓеçÄÔ²¿ÓжøÆäËû²¿ÃÅûÓеÄÉ豸ÐͺŵÄÇé¿ö¡£
¶þ¡ ÌÐòÖеIJ¿¼þ¼°ÊôÐÔ
¡¡¡¡³ÌÐòÖÐÓÐÁ½¸ö´°Ì壺Ö÷´°ÌåmainFormÓ뱨±í´°ÌårepForm¡£Ö÷´°ÌåmainFormÖÐÓÐÁ½¸öTButton²¿¼þ£¬ÉèÖÃÈçÏ£º
²¿¼þ ÊôÐÔ¼°ÊôÐÔÖµ
PreviewBtn:TButton Caption:Ô¤ÀÀ
PrintBtn: TButton Caption:´òÓ¡
¡¡¡¡±¨±í´°ÌårepFormÖеIJ¿¼þ¼°ÊôÐÔÉèÖÃÈçÏ£º
²¿¼þ ÊôÐÔ¼°ÊôÐÔÖµ
Query1:
TQuery DatabaseName:d:\sb
Active:
True
Qrep1:
TQuickrep Dataset:query1
TitleBand1: TQRBand
BandType:rbTitle
HeadBand1: TQRBand
BandType:rbColumnHeader
DrawLeft : True
DrawRight : True
DrawTop : True
DrawBottom : True
DetailBand1: TQRBand
BandType:rbDetail
DrawLeft : True
DrawRight : True
DrawTop : True
DrawBottom : True
ChildBand1: TQRChildBand
ParentBand:DetailBand1
DrawLeft : True
DrawRight : True
DrawTop : True
DrawBottom : True
TitleLabel: TQRLabel
Caption:É豸ͳ¼Æ±í
DlmcLabel: TQRLabel
Caption:Àà±ð
SbxhLabel: TQRLabel
Caption:ÐͺÅ
SbpzLabel: TQRLabel
Caption:ÅäÖÃ
SbslLabel: TQRLabel
Caption:ÊýÁ¿
DlmcDBText: TQRDBText
Dataset:Query1
Datafield: dlmc
SbxhDBText: TQRDBText
Dataset:Query1
Datafield: sbxh
SbpzDBText: TQRDBText
Dataset:Query1
Datafield: sbpz
SbslDBText: TQRDBtext
Dataset:Query1
Datafield: sbsl
Shape1¡«9: TQRShape
Shape:qrsVertline
Top:0
Width:1
Query1µÄSQLÊôÐÔÉèÖÃΪ£º
select a.dlbh,a.dlmc,b.sbxh,b.sbpz,b.sbsl
from dlbmk a,sbxhk b
where a.dlbh=b.dlbh and b.xhbm not in
(select xhbm from bmsbk where trim(bmmc)$#@60;$#@62;¡¯µçÄÔ²¿¡¯)
order by a.dlbh
¡¡¡¡ ÉèÖü¸¸öTQRband²¿¼þµÄDrawLeft¡¢DrawRight¡¢DrawTop¡¢DrawBottomÊôÐÔֵΪTrue,ÊÇΪÁË´òÓ¡±í¸ñ±ß¿ò¼°ºáÏß¡£ÀûÓÃTQRShape²¿¼þ£¬ÊÇΪÁË´òÓ¡³ö±í¸ñÊúÏß¡£DlmcDBText·ÅÖÃÔÚDetailBand1ÉÏ£¬ÆäËü¼¸¸öTQRDBText²¿¼þ·ÅÖÃÔÚChildBand1ÉÏ£¬Shape1¡«3·ÅÖÃÔÚHeadBand1ÉÏ£¬Shape4¡«6·ÅÖÃÔÚDetailBand1ÉÏ,Shape7¡«9·ÅÖÃÔÚChildBand1ÉÏ¡£
Èý¡¢ Ϊ³ÌÐòÔö¼Ó´úÂë
1£®mainForm´°ÌåÖеÄÁ½¸ö°´Å¥Ê¼þ
procedure TmainForm.PreviewBtnClick(Sender : TObject)
begin
repForm.Qrep1.Preview;
end;
procedure TmainFormPrintBtnClick(Sender : TObject)
begin
repForm.Qrep1.Print;
end;
2£®HeadBand1¡¢DetailBand1¼°ChildBand1µÄBeforePrintʼþ
procedure TrepForm.HeadBand1BeforePrint(Sender : TQRCustomBand;
Var PrintBand : Boolean)
Begin
Shape1.Height:=HeadBand1.Height;
Shape2.Height:=HeadBand1.Height;
Shape3.Height:=HeadBand1.Height;
End;
procedure TrepForm.DetailBand1BeforePrint(Sender : TQRCustomBand;
Var PrintBand : Boolean)
begin
PrintBand:=bh$#@60; $#@62;Query1[¡®dlbh¡¯];
if PrintBand then
begin
bh:=Query1[¡®dlbh¡¯];
Shape4.Height:=DetailBand1.Height;
Shape5.Height:=DetailBand1.Height;
Shape6.Height:=DetailBand1.Height;
end
end;
procedure TrepForm.ChildBand1BeforePrint(Sender : TQRCustomBand;
Var PrintBand : Boolean)
Begin
Shape7.Height:=ChildBand1.Height;
Shape8.Height:=ChildBand1.Height;
Shape9.Height:=ChildBand1.Height;
End;
¡¡¡¡bhÓ¦ÔÚ±äÁ¿¶¨Ò岿·Ö¶¨Ò壺
Var bh : shortint=0;
¡¡¡¡¼¸¸öTQRShape²¿¼þµÄ¸ß¶È(Height)ÓëËùÔÚTQRBand ²¿¼þ±£³ÖÒ»Ö£¬Ê¹ÊúÏß´òÓ¡µÃÕûÆë¡£Èç¹ûÔÚÉè¼Æ½×¶Îµ÷ÕûÁËTQRBand²¿¼þµÄ¸ß¶È£¬Ò²²»»á³öÏÖÊúÏß¶ÏÏß»ò¹ý³¤µÄÇé¿ö¡£
¡¡¡¡ÔÚDetailBand1µÄBeforePrintʼþÖÐÓÃPrintBand½øÐпØÖÆ£¬¿Éʹÿ¸öÉ豸´óÀàÃû³ÆÖ»Ðè´òÓ¡Ò»´Î£¬¶ø²»ÊÇÿ¸öÐͺŶ¼¶ÔÓ¦´òÓ¡Ò»´Î´óÀàÃû³Æ¡£ÒòΪdlbh×ֶεÄÖµ¶¼´óÓÚ0£¬bh³õÖµÉèΪ0ʹËüÓëÈÎÒ»¼Ç¼µÄdlbh×ֶεÄÖµ¶¼²»Í¬£¬ÒÔÈ·±£µÚÒ»¸ö´óÀàÃû³Æ±»´òÓ¡¡£ÕâÑù¾ÍÉú³ÉÁËÒ»¸ö´Ó¶à¸öÊý¾Ý±íÖÐÌáÈ¡Êý¾Ý£¬²¢´øÓбí¸ñÏßµÄÊý¾Ý±¨±í¡£
¡¡¡¡×¢£º±¾Àý¹¤³ÌÎļþΪsbgl.dpr£¬Ô³ÌÐòÎļþΪmain.pasºÍsbrep.pas£¬ÈôÒª²âÊÔÇ뽫dlbmk.dbf¡¢sbxhk.dbf¡¢bmsbk.dbfÈý¸öÎļþ·ÅÔÚd:\sbĿ¼Ï¡£