关于FastReport的使用,调用[DialogForm.Query_Data."jddm"],如果字段jddm是个变量如何调用(100分)

  • 主题发起人 主题发起人 ping_hua
  • 开始时间 开始时间
P

ping_hua

Unregistered / Unconfirmed
GUEST, unregistred user!
高手请调关于FastReport的使用
[DialogForm.Query_Data."jddm"],字段jddm如果是变量如何调用,在DELPHI中可用
v:='jddm';
Query_Data.fieldbyname(v);
但在FastReport不知有没有方法调用。
 
刚做了一个打印成绩单的程序,里面的打印科目是可选的,所以各项全部是动态创建的,
现找了两段送上,不知是不是你需要的部分
frReport1.Pages.Clear;
frReport1.Pages.Add;
// create page
Page := frReport1.Pages[0];
Page.Caption := '打印成绩单';
....
v := TfrMemoView.Create;
// create data field
v.SetBounds(20, 60, 200, 16);
v.Memo.Add('[QrySelect."Z1005"]');
TfrMemoView(v).FrameTyp := 15;
TfrMemoView(v).Alignment := 2;
Page.Objects.Add(v);
 
glasses你好
关于这个问题我再说明一下,你的 [QrySelect."Z1005"] 中字段是可知的,但我的字段名称是动态的, 即我的字段是通过另一张表查询出来的 也就是说如果你的字段 Z1005 如果是个变量的话,该如何调用 谢谢指教.
 
[QrySelect."Z1005"] 在程序里就是一个字符串,你想怎么改它就怎么改
var
temField : string;
begin
temField := DataSetQry.FieldByName('...').AsString;
v := TfrMemoView.Create;

v.SetBounds(20, 60, 200, 16);
v.Memo.Add('[QrySelect."'+temField+'"]');
TfrMemoView(v).FrameTyp := 15;
TfrMemoView(v).Alignment := 2;
Page.Objects.Add(v);
end;
 
glasses你好
再问一下,你这段代码是在DELPHI环境下写的吧,如果是在FastReport的脚本下怎么写呢.
 
例如:
[vars]
begin
v1:='';
v1:=[DialogForm.Query_JC."JDDM"];
//v1 为表Query_JC 中字段JDDM的值, 这个值是Query_Data中的一个字段
//vars:=[DialogForm.Query_Data."[v1]"] 就是这句话该怎么写 这样写肯定不对
end
 
动态改变的部分可写成一个变量,在程序里对变量附值。
frVariables['[v1]'] := 'JDDM';
 
给我发邮件,shuigou@163.com,我这里有一个fastreport的中文开发文档
 
glasses:
动态改变的部分可写成一个变量,在程序里对变量附值。
frVariables['[v1]'] := 'JDDM';
对你的这段代码我不太明白.
能不能告诉我vars:=[DialogForm.Query_Data."[v1]"]
这段代码该怎么改?
 
我要走了,对于你提的是什么问题,我还是不太清楚,
留下你的EMail,明天我给你发一份开发指南。应该可以找到答案
 
glasses:
我想问题你应该明白了, 下面这段代码要写在FastReport的frMemoView脚本中:
v1:=[DialogForm.Query_JC."JDDM"];
//v1 为表Query_JC 中字段JDDM的值, 这个值Query_Data中的一个字段,现在我要显示Query_Data中字段名为v1(v1的值)这个字段的值.
//vars:=[DialogForm.Query_Data."[v1]"] 就是这句话该怎么写 这样写肯定不对
不知道我的意思表达清楚没有,留下我的QQ号吧10577459
邮件已经发给你了.
 
后退
顶部