如何传递一个变量给FastReport 作表头?(50分)

  • 主题发起人 主题发起人 xf163
  • 开始时间 开始时间
X

xf163

Unregistered / Unconfirmed
GUEST, unregistred user!

主窗体有二个datetimepicker,让用户选择起始日期后,筛选记录,在DBGRID中显示,
打印用fr,如何将此日期范围传递给fr做表头?
我用 frreport1.Tilte:=datetostr(datetimepicker1.date)+'---'+datetostr(datetimepicker2.date)+'统计表' 之类
不行。
 
或者是应该问FastReport表中如何自定义变量?!
 
参考这个
var
t: TfrMemoView;
begin
Screen.Cursor := crHourGlass;
MasterAdoDataSet.Parameters.ParamByName('rknd').Value := UpDown1.Position;
MasterAdoDataSet.Parameters.ParamByName('lb').Value := Trim(Combobox1.Text);
MasterAdoDataSet.Open;
//*******载入相应报表文件*********************
if not MainReport.LoadFromFile(ReportsPath + GetReportFile(LOCALDATASETNAME)) then
begin
Application.MessageBox('找不到相应的报表格式文件或者无法识别的报表格式', '错误', mb_iconwarning);
Screen.Cursor := crDefault;
Exit;
end;
//********************************************
//在这里可以插入本张报表的特殊初始化代码.
t := TfrMemoView(MainReport.FindObject('Memo1'));
if t <> nil then
begin
t.Memo.Text := Edit1.Text + '年度' + Trim(Combobox1.Text) + '供我省邮品情况表';
ShowReport(MainReport);
end;
Screen.cursor := crDefault;
 
shangshang 是对的!
 
我是fastreport的,也碰到你提的问题,下面是我自己程序中用的代码
fastreport是通过这个函数传递数据的,示例:在memo中内容为[dtod],在fastreport的方法中(如下)
procedure TmjdtbbForm.frReport2GetValue(const ParName: string;
var ParValue: Variant);
begin
if parname = 'dtod' then
parvalue := dateedit4.Text + '至' + dateedit5.text;
end;
 
shangshang的代码确实能实现!
 
非常感谢!
 
后退
顶部