Delphi FastReport4.0&引用;“未找到Claas TfrxReport”;异常(RAD STUDIO XE2)
亲爱的Stackoverflow用户。我急需帮助。我一直在与Embarcadero XE2 RAD studio版FastReport 4.0中的嵌入式软件进行斗争。更具体地说,我一次又一次地遇到同样的错误,即错误严重的“类TfrxReport Not found”错误。下面我将提交导致问题的部分代码Delphi FastReport4.0&引用;“未找到Claas TfrxReport”;异常(RAD STUDIO XE2),delphi,exception,fastreport,Delphi,Exception,Fastreport,亲爱的Stackoverflow用户。我急需帮助。我一直在与Embarcadero XE2 RAD studio版FastReport 4.0中的嵌入式软件进行斗争。更具体地说,我一次又一次地遇到同样的错误,即错误严重的“类TfrxReport Not found”错误。下面我将提交导致问题的部分代码 procedure TForm1.buildReport(Sender: TObject); var DevicePic, SymbolPic: TfrxPictureView; TitleE
procedure TForm1.buildReport(Sender: TObject);
var
DevicePic, SymbolPic: TfrxPictureView;
TitleEntry, xmlField: TfrxMemoView;
MasterDataBand: TfrxMasterData;
begin
if not ADOConnection1.Connected then
ShowMessage('Cannot build Report! Please, connect to the DB!')
else
try
//this is where the Class Not Found Exception is Thrown
frxReport1.LoadFromFile('LibreportTemplate.fr3',True);
// frxReport1.LoadFromFile('helloInfineonThree.fr3',True);
if (frxDBDataset1 = nil) then frxDBDataset1 := TfrxDBDataset.Create(Self);
// connect the report to the DATA
frxDBDataset1.DataSource := DataSource1;
frxReport1.DataSet := frxDBDataset1;
except
ShowMessage('Error has Occured! Report Template File Not Found!');
// exit from this procedure!
Exit;
end;
// If no errors have occured, go on building ur report by actually filling it up with data!
// attach dataSet to the masterdata band of the report.
MasterDataBand := frxReport1.FindObject('MasterData1') as TfrxMasterData;
MasterDataBand.DataSet := frxDBDataset1;
// prepare textfields
TitleEntry := frxReport1.FindObject('TitleEntry') as TfrxMemoView;
TitleEntry.DataSet := frxDBDataset1;
TitleEntry.DataField := 'LibFName';
xmlField := frxReport1.FindObject('xmlField') as TfrxMemoView;
// stretch the field if text too big.
xmlField.StretchMode := TfrxStretchMode.smActualHeight;
//get the XML DATA FROM THE DB.
xmlField.DataSet := frxDBDataset1;
xmlField.DataField := 'LibFXML';
// prepare images
DevicePic := frxReport1.FindObject('ImageEntry') as TfrxPictureView;
DevicePic.DataSet := frxDBDataset1;
DevicePic.DataField := 'LIBFIMAGE';
SymbolPic := frxReport1.FindObject('SymbolEntry') as TfrxPictureView;
SymbolPic.DataSet := frxDBDataset1;
SymbolPic.DataField := 'LibFSymbol';
// build and display report
frxReport1.PrepareReport();
frxReport1.ShowPreparedReport;
end;
构建和运行程序时,我收到以下错误消息“找不到类TfrxReport”,在调试模式下,我收到以下警告:
项目“MyProject.exe”引发异常类EClassNotFound,消息为“未找到类TfrxReport”
如上面代码中所述,当执行frxReport1.LoadFromFile('LibreportTemplate.fr3',True)时会引发所讨论的异常;指挥部
我尝试了许多不同的方法来解决这个问题,包括在线搜索解决方案。以下是我所做的:
在表单OnCreate和OnClose期间手动创建和销毁frxReport1对象-错误仍然存在
正如FastReport中所建议的(我无法在上面发布链接,原因是“抱歉,帖子不能包含该内容。”错误)论坛线程,替换FastReport 4\LibD16文件夹中的文件。-错误依然存在
重新编译FastReport 4 RAD STUDIO 32位版本-错误依然存在
重新编译FastReport 4 RAD STUDIO 64位版本-错误依然存在
重新安装Embarcadero RAD Studio和FastReport 4-错误依然存在
在STACKOVERFLOW中提问-
从fast reports论坛的帖子来看,问题和相应的解决方案应该是(我引用):
此错误由groupgroundswith(TfrxReport,TControl)引起;代码。
由于某些原因,此代码会对FireMonkey隐藏TfrxReport
在运行时找不到TfrxReport类的“FindClass”函数
正在加载报告(仅在IDE中)。如果您无法加载报告或获得类似结果
“找不到TfrxReport”消息出错,请将此“链接到文件”
文件要“快”
Report\LibD16“dir(全部替换)
然而,建议的方法并不能解决问题!我该怎么办?有人知道吗?我先从
一,
注册表类(TfrxReport)代码>程序启动时的某个地方。或者,就在引起错误的那一行之前。只是一个想法
添加注册表类(TfrxReport)代码>程序启动时的某个地方。或者,就在引起错误的那一行之前。不确定您是否得到了这个问题的答案。。。但在Rad Studio XE4中,使用Fast Reports 4.0 Pro时,我遇到了同样的问题
我把我的报告放在一个数据模块中,我可以在需要时创建/销毁它,数据集也可以在那里找到。我可以在报表设计器中放置条形码元素,但是,当运行应用程序时,我会得到“找不到类TfrxBarCodeView”
搜索C:\Program Files(X86)\Fast Reports\Source\n中的源文件夹后,我打开了一个名为frxBarcode.pas的源文件,其中包含类“TfrxBarCodeView”的创建
我只是简单地将frxBarCode添加到我的使用列表中,所有的工作都非常完美 不确定你是否得到了这个问题的答案。。。但在Rad Studio XE4中,使用Fast Reports 4.0 Pro时,我遇到了同样的问题
我把我的报告放在一个数据模块中,我可以在需要时创建/销毁它,数据集也可以在那里找到。我可以在报表设计器中放置条形码元素,但是,当运行应用程序时,我会得到“找不到类TfrxBarCodeView”
搜索C:\Program Files(X86)\Fast Reports\Source\n中的源文件夹后,我打开了一个名为frxBarcode.pas的源文件,其中包含类“TfrxBarCodeView”的创建
我只是简单地将frxBarCode添加到我的使用列表中,所有的工作都非常完美 我也面对过这个问题,我通过这样做解决了这个问题
- 创建一个新的ProjectGroup并添加适合您的delphi版本的DPK(我使用XE6)。
您将看到BPL将分为运行时和设计
- 开始编译运行时fsX(X表示版本)、fqbX等。如果你在顺序上出错,你会注意到的。
某些包需要添加搜索路径$(BSDCOMMONDIR)/DCP
- 编译并安装设计包,您将看到TfrxReport李>
一旦安装了设计包,您就看不到结果了,我已经重新启动了IDE,它运行得很好;)
2年后,我希望这能有所帮助 我也面对过这个问题,我通过这样做解决了这个问题
- 创建一个新的ProjectGroup并添加适合您的delphi版本的DPK(我使用XE6)。
您将看到BPL将分为运行时和设计
- 开始编译运行时fsX(X表示版本)、fqbX等。如果你在顺序上出错,你会注意到的。
某些包需要添加搜索路径$(BSDCOMMONDIR)/DCP
- 编译并安装设计包,您将看到TfrxReport李>
一旦安装了设计包,您就看不到结果了,我已经重新启动了IDE,它运行得很好;)
2年后,我希望这能有所帮助 我知道这很古老,但对某些人来说可能有用。
我只是遇到了类似的问题。我从来没有想到有一个
快速报告调色板上名为frxReportTableObject的组件。
把它放在有问题的表格上就行了 我知道这很古老,但对某些人来说可能是