使用fastreport的控件Tfrxreport,设置ONgetvalue事件,其中参数VarName是设计在报表中的一个变量名。
procedure TPreviewSetForm.frxReport1GetValue(const VarName: String;
var Value: Variant);
var
qry:TADOQuery;
CHinamoney:string;
begin
qry:=TADOQuery.Create(nil);;
qry.Connection := MainForm.KJCon;
with qry do
begin
close;
SQL.Clear;
SQL.Add('select money from KJ_Consumer_Detail where SeqNo =:SeqNo');
Parameters.ParamByName('SeqNo').Value := Edit1.Text;
open;
CHinamoney := Chinesemoney(fieldbyname('money').AsFloat);
if not isempty then
begin
if VarName='Vary' then Value:=CHinamoney;
end
else
begin
showmessage('找不到记录');
end;
end;
qry.Free;
end;
该篇博客详细介绍了如何在FastReport的TfrxReport控件中设置ONgetvalue事件,通过TADOQuery连接数据库查询特定字段,并将查询结果转换为中文货币格式,再将结果赋值给报表中的变量。在代码示例中,当SeqNo匹配时,从KJ_Consumer_Detail表中获取money字段,经过Chinesemoney函数转换后,若非空则将结果赋给变量Vary。若未找到对应记录,则显示错误信息。

2635

被折叠的 条评论
为什么被折叠?



