Delphi FastReport4.0&引用;“未找到Claas TfrxReport”;异常(RAD STUDIO XE2)

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

亲爱的Stackoverflow用户。我急需帮助。我一直在与Embarcadero XE2 RAD studio版FastReport 4.0中的嵌入式软件进行斗争。更具体地说,我一次又一次地遇到同样的错误,即错误严重的“类TfrxReport Not found”错误。下面我将提交导致问题的部分代码

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(全部替换)

然而,建议的方法并不能解决问题!我该怎么办?有人知道吗?

我先从 一,

  • 放置fr3文件的绝对完整路径,以及
  • 将其放在用户的文档目录中
  • 只是为了排除文件访问问题。你有FastReport的源代码吗?

    我先从 一,

  • 放置fr3文件的绝对完整路径,以及
  • 将其放在用户的文档目录中
  • 只是为了排除文件访问问题。您有FastReport的源代码吗?

    只是一个想法

    添加
    注册表类(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的组件。
    把它放在有问题的表格上就行了

    我知道这很古老,但对某些人来说可能是