我们目前正在使用 Delphi 2006,但我们现在已经准备好继续使用 Delphi 2010。
问题在于我们的 Rave 报告,不过……
在使用 Rave 8 运行报告时,我们会遇到很多字符串错误。而且它们没有任何意义。(报告编译没有错误,我们甚至可以在 Rave 6 中运行它们而没有任何错误。)
更新: 错误发生在报告本身的事件脚本中。这些错误与字符串和字符串连接有关。
例如:
//This event causes access violation (in rtl140.bpl) at run time
{ Event for Page1.OnBeforeReport }
function Page1_OnBeforeReport(Self: TRavePage);
var
s: String;
begin
s := 'My text in param';
s := s + ' and som more text';
s := copy(s,1,length(s)) + ' and then some more'; //<-- This line causes AV
RaveProject.SetParam('MyTestParam', s);
end OnBeforeReport;
//This event works OK
{ Event for Page1.OnBeforeReport }
function Page1_OnBeforeReport(Self: TRavePage);
var
s: String;
begin
s := 'My text in param';
s := s + ' and som more text';
s := copy(s,1,length(s)); //<-- This line is OK
RaveProject.SetParam('MyTestParam', s);
end OnBeforeReport;
//This event works OK too
{ Event for Page1.OnBeforeReport }
function Page1_OnBeforeReport(Self: TRavePage);
var
s: String;
begin
s := 'My text in param';
s := s + ' and som more text';
s := copy(s,1,length(s)) + s; //<-- This line is OK
RaveProject.SetParam('MyTestParam', s);
end OnBeforeReport;
我们真的很想坚持使用 Rave,因为我们有很多报告(150 多个)具有很多功能(sql 语句、事件等)。此外,我们的客户也设计了自己的自定义报告。
有人知道这些错误的原因吗?
这些问题是否有任何解决方案或解决方法?