迫切需要高手的支持,该如何制作这样的报表(200分)

  • 主题发起人 主题发起人 zzjmail
  • 开始时间 开始时间
Z

zzjmail

Unregistered / Unconfirmed
GUEST, unregistred user!
使用fastreport制作主从报表,分别放置mastdata,detail data ,
可以实现如下结构的报表:
----------------------
主表记录1
从表记录1
从表记录2
从表记录3
.....
----------------------
主表记录2
从表记录1
从表记录2
从表记录3
...
---------------------
可是希望得到如下结构的报表,该怎么得到:
----------------------
主表记录1 | 从表记录(此处需要把跟主表记录1关联的所有从表记录合在一起)
----------------------
主表记录2 | 从表记录
----------------------
主表记录3 | 从表记录
----------------------
这样的报表该如何设计。。。。。急,急,急,迫切需要高手指点。。
 
可以啊!放一个主表band 上放“从表记录memo”
放一个从表band、从表把band visable设为false
在“从表band”的beforeprinnt写 从表记录memo:=从表记录memo+要合计的memo
 
[?]这样可以把跟主表关联的所有从表合在一起,并打印在主表记录的旁边(不是下边)吗?
 
从表记录memo:=从表记录memo+要合计的memo?
这个语句要怎么写?
比如:从表有姓名,年龄,性别:
memo1:=(姓名)memo2+(年龄)memo3+(性别)memo4;?这样
 
memo1.memo:=memo2.memo+memo3.memo+memo4.memo
我的意思就是让明细项不可见!
但是生成的时候一条条通过程序scrpit合并到主项的一个memo里!
完全实现你的要求!
 
同意 vmao, 我写的“机器故障”就是这样打印的。
 
是呀,同意
 
例如:从表有姓名,性别。
一般我们设计主从表的时候,只要放置从表的band,然后放置两个memo,那么如果
主表对应的从表记录有两条,那么就会在主表记录下面显示两条从表记录,
如果要实现从表的显示字段放在一个memo,vmao你那样是可以,可关键的
是我要的是从表的所有记录(跟主表对应的)放在一个memo,该怎么实现?
 
chnplzh, 你设计的报表能给兄弟看一下吗?
 
我搞不懂为什么你说不可以?
memo1放在主表band上!
memo2、memo3放在从表band上:
memo1和memo2、memo3不在一个band上就把所有记录累加了呀!
从表band beforeprint: memo1.memo:=memo2.memo+memo3.memo
可以实现的啊!
 
楼上的都有问题!
memo1.memo:=memo2.memo+memo3.memo...你知道有多少条记录?
应该用交叉表啊!同志们!
横与竖的主表/从表交叉,有多少条记录都不管......
 
看来我是得不到这200分了:(
 
噢,还是黄老兄明白呀,那要怎么做交叉表
 
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB, Grids, DBGrids, QuickRpt, QRCtrls, ExtCtrls;
type
TForm1 = class(TForm)
ADODataSet1: TADODataSet;
Button1: TButton;
ADODataSet2: TADODataSet;
DBGrid1: TDBGrid;
DBGrid2: TDBGrid;
DataSource1: TDataSource;
DataSource2: TDataSource;
QuickRep1: TQuickRep;
DetailBand1: TQRBand;
QRSubDetail1: TQRSubDetail;
QRDBText1: TQRDBText;
QRDBText2: TQRDBText;
QRLabel1: TQRLabel;
QRDBText3: TQRDBText;
QRDBText4: TQRDBText;
QRDBText5: TQRDBText;
QRDBText6: TQRDBText;
procedure ADODataSet1AfterScroll(DataSet: TDataSet);
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure QRDBText1Print(sender: TObject;
var Value: string);
procedure QRLabel1Print(sender: TObject;
var Value: string);
procedure QRDBText2Print(sender: TObject;
var Value: string);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ADODataSet1AfterScroll(DataSet: TDataSet);
begin
ADODataSet2.Filtered := false;
ADODataSet2.Filter := 'A=''' + DataSet.FieldByName('A').AsString + '''';
ADODataSet2.Filtered := true;
end;

procedure TForm1.FormCreate(Sender: TObject);
var
i, j, m: integer;
begin

ADODataSet2.AfterScroll := nil;
ADODataSet1.FieldDefs.Clear;
ADODataSet1.FieldDefs.Add('A', ftstring, 20, false);
ADODataSet1.CreateDataSet;
ADODataSet1.Open;
ADODataSet1.Append;
for i := 1 to 3do
begin
ADODataSet1.Append;
ADODataSet1.Fields[0].AsString := format('%d', );
end;
ADODataSet1.Post;
ADODataSet1.First;
ADODataSet2.FieldDefs.Clear;
ADODataSet2.FieldDefs.Add('A', ftstring, 20, false);
ADODataSet2.FieldDefs.Add('B', ftstring, 20, false);
ADODataSet2.CreateDataSet;
ADODataSet2.Open;
ADODataSet2.Append;
for m := 1 to 3do
for i := 0 to 3*Mdo
begin
ADODataSet2.Append;
ADODataSet2.Fields[0].AsString := format('%d', [m]);
ADODataSet2.Fields[1].AsString := format('%d_%d', [m, i]);
end;
ADODataSet2.Post;
ADODataSet2.First;
ADODataSet1.AfterScroll := ADODataSet1AfterScroll;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
QuickRep1.Preview;
end;

procedure TForm1.QRDBText1Print(sender: TObject;
var Value: string);
begin
QRLabel1.Caption := Value;
end;

procedure TForm1.QRLabel1Print(sender: TObject;
var Value: string);
begin
Value := QRLabel1.Caption;
if Value <> '' then
QRLabel1.Caption := '';
end;

procedure TForm1.QRDBText2Print(sender: TObject;
var Value: string);
begin

if QRDBText2.DataSet.Eof then
Value := ''
else
QRDBText2.DataSet.Next;
end;

end.

object Form1: TForm1
Left = 192
Top = 107
Width = 543
Height = 375
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
Scaled = False
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object Button1: TButton
Left = 32
Top = 16
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 0
OnClick = Button1Click
end
object DBGrid1: TDBGrid
Left = 40
Top = 112
Width = 320
Height = 120
DataSource = DataSource1
TabOrder = 1
TitleFont.Charset = DEFAULT_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'MS Sans Serif'
TitleFont.Style = []
end
object DBGrid2: TDBGrid
Left = 40
Top = 240
Width = 320
Height = 120
DataSource = DataSource2
TabOrder = 2
TitleFont.Charset = DEFAULT_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'MS Sans Serif'
TitleFont.Style = []
end
object QuickRep1: TQuickRep
Left = 136
Top = 112
Width = 794
Height = 1123
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
DataSet = ADODataSet1
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -13
Font.Name = 'Arial'
Font.Style = []
Functions.Strings = (
'PAGENUMBER'
'COLUMNNUMBER'
'REPORTTITLE')
Functions.DATA = (
'0'
'0'
'''''')
Options = [FirstPageHeader, LastPageFooter]
Page.Columns = 1
Page.Orientation = poPortrait
Page.PaperSize = A4
Page.Values = (
100
2970
100
2100
100
100
0)
PrinterSettings.Copies = 1
PrinterSettings.Duplex = False
PrinterSettings.FirstPage = 0
PrinterSettings.LastPage = 0
PrinterSettings.OutputBin = Auto
PrintIfEmpty = True
SnapToGrid = True
Units = MM
Zoom = 100
object DetailBand1: TQRBand
Left = 38
Top = 38
Width = 718
Height = 3
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
AlignToBottom = False
Color = clWhite
ForceNewColumn = False
ForceNewPage = False
Size.Values = (
7.9375
1899.70833333333)
BandType = rbDetail
object QRDBText1: TQRDBText
Left = 8
Top = 0
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
21.1666666666667
0
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet1
DataField = 'a'
OnPrint = QRDBText1Print
Transparent = False
WordWrap = True
FontSize = 10
end
end
object QRSubDetail1: TQRSubDetail
Left = 38
Top = 41
Width = 718
Height = 23
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
AlignToBottom = False
Color = clWhite
ForceNewColumn = False
ForceNewPage = False
Size.Values = (
60.8541666666667
1899.70833333333)
Master = QuickRep1
DataSet = ADODataSet2
PrintBefore = False
PrintIfEmpty = True
object QRDBText2: TQRDBText
Left = 128
Top = 3
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
338.666666666667
7.9375
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet2
DataField = 'b'
OnPrint = QRDBText2Print
Transparent = False
WordWrap = True
FontSize = 10
end
object QRLabel1: TQRLabel
Left = 24
Top = 3
Width = 58
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
63.5
7.9375
153.458333333333)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Caption = 'QRLabel1'
Color = clWhite
OnPrint = QRLabel1Print
Transparent = False
WordWrap = True
FontSize = 10
end
object QRDBText3: TQRDBText
Left = 200
Top = 3
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
529.166666666667
7.9375
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet2
DataField = 'b'
OnPrint = QRDBText2Print
Transparent = False
WordWrap = True
FontSize = 10
end
object QRDBText4: TQRDBText
Left = 264
Top = 3
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
698.5
7.9375
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet2
DataField = 'b'
OnPrint = QRDBText2Print
Transparent = False
WordWrap = True
FontSize = 10
end
object QRDBText5: TQRDBText
Left = 336
Top = 3
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
889
7.9375
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet2
DataField = 'b'
OnPrint = QRDBText2Print
Transparent = False
WordWrap = True
FontSize = 10
end
object QRDBText6: TQRDBText
Left = 416
Top = 3
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
1100.66666666667
7.9375
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet2
DataField = 'b'
OnPrint = QRDBText2Print
Transparent = False
WordWrap = True
FontSize = 10
end
end
end
object ADODataSet1: TADODataSet
AfterScroll = ADODataSet1AfterScroll
Parameters = <>
Left = 144
Top = 16
end
object ADODataSet2: TADODataSet
Parameters = <>
Left = 144
Top = 56
end
object DataSource1: TDataSource
DataSet = ADODataSet1
Left = 200
Top = 16
end
object DataSource2: TDataSource
DataSet = ADODataSet2
Left = 200
Top = 56
end
end

 
sorry 写漏了一处
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB, Grids, DBGrids, QuickRpt, QRCtrls, ExtCtrls;
type
TForm1 = class(TForm)
ADODataSet1: TADODataSet;
Button1: TButton;
ADODataSet2: TADODataSet;
DBGrid1: TDBGrid;
DBGrid2: TDBGrid;
DataSource1: TDataSource;
DataSource2: TDataSource;
QuickRep1: TQuickRep;
DetailBand1: TQRBand;
QRSubDetail1: TQRSubDetail;
QRDBText1: TQRDBText;
QRDBText2: TQRDBText;
QRLabel1: TQRLabel;
QRDBText3: TQRDBText;
QRDBText4: TQRDBText;
QRDBText5: TQRDBText;
QRDBText6: TQRDBText;
procedure ADODataSet1AfterScroll(DataSet: TDataSet);
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure QRDBText1Print(sender: TObject;
var Value: string);
procedure QRLabel1Print(sender: TObject;
var Value: string);
procedure QRDBText3Print(sender: TObject;
var Value: string);
procedure QRDBText6Print(sender: TObject;
var Value: String);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ADODataSet1AfterScroll(DataSet: TDataSet);
begin
ADODataSet2.Filtered := false;
ADODataSet2.Filter := 'A=''' + DataSet.FieldByName('A').AsString + '''';
ADODataSet2.Filtered := true;
end;

procedure TForm1.FormCreate(Sender: TObject);
var
i, j, m: integer;
begin

ADODataSet2.AfterScroll := nil;
ADODataSet1.FieldDefs.Clear;
ADODataSet1.FieldDefs.Add('A', ftstring, 20, false);
ADODataSet1.CreateDataSet;
ADODataSet1.Open;
ADODataSet1.Append;
for i := 1 to 3do
begin
ADODataSet1.Append;
ADODataSet1.Fields[0].AsString := format('%d', );
end;
ADODataSet1.Post;
ADODataSet1.First;
ADODataSet2.FieldDefs.Clear;
ADODataSet2.FieldDefs.Add('A', ftstring, 20, false);
ADODataSet2.FieldDefs.Add('B', ftstring, 20, false);
ADODataSet2.CreateDataSet;
ADODataSet2.Open;
ADODataSet2.Append;
for m := 1 to 3do
for i := 1 to 3 * Mdo
begin
ADODataSet2.Append;
ADODataSet2.Fields[0].AsString := format('%d', [m]);
ADODataSet2.Fields[1].AsString := format('%d_%d', [m, i]);
end;
ADODataSet2.Post;
ADODataSet2.First;
ADODataSet1.AfterScroll := ADODataSet1AfterScroll;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
QuickRep1.Preview;
end;

procedure TForm1.QRDBText1Print(sender: TObject;
var Value: string);
begin
QRLabel1.Caption := Value;
end;

procedure TForm1.QRLabel1Print(sender: TObject;
var Value: string);
begin
Value := QRLabel1.Caption;
if Value <> '' then
QRLabel1.Caption := '';
end;

procedure TForm1.QRDBText3Print(sender: TObject;
var Value: string);
begin
if QRDBText2.DataSet.Eof then
Value := ''
else
QRDBText2.DataSet.Next;
end;

procedure TForm1.QRDBText6Print(sender: TObject;
var Value: String);
begin
if QRDBText2.DataSet.Eof then
Value := ''
end;

end.

object Form1: TForm1
Left = 192
Top = 107
Width = 543
Height = 375
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
Scaled = False
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object Button1: TButton
Left = 32
Top = 16
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 0
OnClick = Button1Click
end
object DBGrid1: TDBGrid
Left = 40
Top = 112
Width = 320
Height = 120
DataSource = DataSource1
TabOrder = 1
TitleFont.Charset = DEFAULT_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'MS Sans Serif'
TitleFont.Style = []
end
object DBGrid2: TDBGrid
Left = 40
Top = 240
Width = 320
Height = 120
DataSource = DataSource2
TabOrder = 2
TitleFont.Charset = DEFAULT_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'MS Sans Serif'
TitleFont.Style = []
end
object QuickRep1: TQuickRep
Left = 136
Top = 112
Width = 794
Height = 1123
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
DataSet = ADODataSet1
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -13
Font.Name = 'Arial'
Font.Style = []
Functions.Strings = (
'PAGENUMBER'
'COLUMNNUMBER'
'REPORTTITLE')
Functions.DATA = (
'0'
'0'
'''''')
Options = [FirstPageHeader, LastPageFooter]
Page.Columns = 1
Page.Orientation = poPortrait
Page.PaperSize = A4
Page.Values = (
100
2970
100
2100
100
100
0)
PrinterSettings.Copies = 1
PrinterSettings.Duplex = False
PrinterSettings.FirstPage = 0
PrinterSettings.LastPage = 0
PrinterSettings.OutputBin = Auto
PrintIfEmpty = True
SnapToGrid = True
Units = MM
Zoom = 100
object DetailBand1: TQRBand
Left = 38
Top = 38
Width = 718
Height = 3
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
AlignToBottom = False
Color = clWhite
ForceNewColumn = False
ForceNewPage = False
Size.Values = (
7.9375
1899.70833333333)
BandType = rbDetail
object QRDBText1: TQRDBText
Left = 8
Top = 0
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
21.1666666666667
0
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet1
DataField = 'a'
OnPrint = QRDBText1Print
Transparent = False
WordWrap = True
FontSize = 10
end
end
object QRSubDetail1: TQRSubDetail
Left = 38
Top = 41
Width = 718
Height = 23
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
AlignToBottom = False
Color = clWhite
ForceNewColumn = False
ForceNewPage = False
Size.Values = (
60.8541666666667
1899.70833333333)
Master = QuickRep1
DataSet = ADODataSet2
PrintBefore = False
PrintIfEmpty = True
object QRDBText2: TQRDBText
Left = 128
Top = 3
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
338.666666666667
7.9375
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet2
DataField = 'b'
OnPrint = QRDBText3Print
Transparent = False
WordWrap = True
FontSize = 10
end
object QRLabel1: TQRLabel
Left = 24
Top = 3
Width = 58
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
63.5
7.9375
153.458333333333)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Caption = 'QRLabel1'
Color = clWhite
OnPrint = QRLabel1Print
Transparent = False
WordWrap = True
FontSize = 10
end
object QRDBText3: TQRDBText
Left = 200
Top = 3
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
529.166666666667
7.9375
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet2
DataField = 'b'
OnPrint = QRDBText3Print
Transparent = False
WordWrap = True
FontSize = 10
end
object QRDBText4: TQRDBText
Left = 264
Top = 3
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
698.5
7.9375
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet2
DataField = 'b'
OnPrint = QRDBText3Print
Transparent = False
WordWrap = True
FontSize = 10
end
object QRDBText5: TQRDBText
Left = 336
Top = 3
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
889
7.9375
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet2
DataField = 'b'
OnPrint = QRDBText3Print
Transparent = False
WordWrap = True
FontSize = 10
end
object QRDBText6: TQRDBText
Left = 416
Top = 3
Width = 8
Height = 17
Frame.Color = clBlack
Frame.DrawTop = False
Frame.DrawBottom = False
Frame.DrawLeft = False
Frame.DrawRight = False
Size.Values = (
44.9791666666667
1100.66666666667
7.9375
21.1666666666667)
Alignment = taLeftJustify
AlignToBand = False
AutoSize = True
AutoStretch = False
Color = clWhite
DataSet = ADODataSet2
DataField = 'b'
OnPrint = QRDBText6Print
Transparent = False
WordWrap = True
FontSize = 10
end
end
end
object ADODataSet1: TADODataSet
AfterScroll = ADODataSet1AfterScroll
Parameters = <>
Left = 144
Top = 16
end
object ADODataSet2: TADODataSet
Parameters = <>
Left = 144
Top = 56
end
object DataSource1: TDataSource
DataSet = ADODataSet1
Left = 200
Top = 16
end
object DataSource2: TDataSource
DataSet = ADODataSet2
Left = 200
Top = 56
end
end
 
[:(]看不懂代码。。。能解释一下思路吗?
 
运行
设断点
 
拜托,我不是菜鸟呀,能不能说说思路呀,减少浪费时间!!!
 
同意vmao,
放一个主表band 上放“从表记录memo”
放一个从表band、从表把band visable设为false
在“从表band”的beforeprinnt写 从表记录memo:=从表记录memo+要合计的memo
 
后退
顶部