fastreport打印本期合计的大写金额(50分)

  • 主题发起人 主题发起人 shaken
  • 开始时间 开始时间
S

shaken

Unregistered / Unconfirmed
GUEST, unregistred user!
我用fastreport做了一个本期合计的小写,没有用任何代码,直接在[报表合计]类型band上添加了一个memo,memo的内容是用sum函数求和,直接显示。现在想打印该合计的大写金额,但不知道怎么获得该值,然后进行转换,转换大小写的函数知道了。请不要再回复。谢谢!
answer1:在报表的onbeforePrint事件中对这个memo中的值进行转换. frVariables[memo的name]=转换好后的值
answer2:frVariables[memo的name]=转换好后的值
转换好后的值-----这个不知道怎么获得啊 ,就用你的frVariables好像获取不了值。
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1503655
 
procedure TForm1.frReport1UserFunction(const Name: String;
p1, p2, p3: Variant;
var val: Variant);
begin

try
if AnsiCompareText('ntoc', Name) = 0 then
val :=ntoc(p1);
if AnsiCompareText('numtoc', Name) = 0 then
val := numtoc(p1);
if AnsiCompareText('change', Name) = 0 then
val := change(p1);
except
end;
end;

// 说明;
const Name 就是你的函数名 fastreport 判断查找出来的
p1,p2,p3就是参数。
val 就是返回值;
如果其中一个函数是delphi自带的,但fastreport没有该函数,要怎么使用?
 
建议你使用RM,大写金额转换非常的方便.
 
不想用太多非自带空件,一个就够了,太多以后不方便程序移植什么的!
 
其实这个问题很简单的.
你已经有了转换的函数了,只要在设计时添加一计算字段,在该query的计算事件中使用函数
计算出来.在打印时只要取该计算字段的值就可以了.
 
我的合计是这样的,也可以用计算字段吗?
a b c
1 2 3
1 2 3
合计: 2 4 6
 
没有办法,只有自己用query的合计,然后传递值给frreport解决了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
I
回复
0
查看
794
import
I
后退
顶部