2011-07-07 12 views
5

Mam aplikację systemu Windows, która używa Crystal Reports 2008 jako narzędzia raportowania. To działa dobrze przez bardzo długi okres czasu, ale wczoraj, gdy starałem się załadować dowolny raport, mam ten błąd:Niespodziewany błąd Crystal Report (nieznany błąd mechanizmu kwerendy)

CrystalDecisions.CrystalReports.Engine.DataSourceException: Unknown Query Engine Error 
Error in File C:\Users\Magdy\AppData\Local\Temp\rpt_Stock_Cost {DC276D4F-79F4-43B9-8168-24E6B7BF490A}.rpt: 
Unknown Query Engine Error ---> System.Runtime.InteropServices.COMException: Unknown Query Engine Error 
Error in File C:\Users\Magdy\AppData\Local\Temp\rpt_Stock_Cost {DC276D4F-79F4-43B9-8168-24E6B7BF490A}.rpt: 
Unknown Query Engine Error 
    at CrystalDecisions.ReportAppServer.Controllers.DatabaseControllerClass.ReplaceConnection(Object oldConnection, Object newConnection, Object parameterFields, Object crDBOptionUseDefault) 
    at CrystalDecisions.CrystalReports.Engine.Table.SetDataSource(Object val, Type type) 
    at CrystalDecisions.CrystalReports.Engine.ReportDocument.SetDataSourceInternal(Object val, Type type) 
    --- End of inner exception stack trace --- 
    at CrystalDecisions.ReportAppServer.ConvertDotNetToErom.ThrowDotNetException(Exception e) 
    at CrystalDecisions.CrystalReports.Engine.ReportDocument.SetDataSourceInternal(Object val, Type type) 
    at CrystalDecisions.CrystalReports.Engine.ReportDocument.SetDataSource(DataSet dataSet) 
    at Diamonds.UIL.Forms.frm_ReportViewer.Load_Report(String File_FullPath, DataSet DS) in E:\Development\Bitco\Diamond\Project\Diamond 2.0.1\Diamonds\UIL\Reports\Forms\Viewer\frm_ReportViewer.cs:line 256 

Oto kod użyłem do załadowania i przypisać źródło danych dla raportu:

DataSet ds = new DataSet(); 
reportDocument_.Load(File_FullPath); 
reportDocument_.SetDataSource(ds); 

Gdzie ds może być typowym zbiorem danych.

Po pewnym przeszukaniu go znalazłem wyniki, które mówią, że powinienem mieć Usługi sieciowe, folder użytkownika w folderach tymczasowych. Chociaż myślę, że dotyczy to aplikacji internetowych, a nie okien. Próbowałem go zarówno dla folderu tymczasowego, jak i powyższego folderu w wyjątku, ale nie pomógł.

Używam Visual Studio 2010, C# 4.0, Windows Application

Jakieś pomysły co może być nie tak?

+4

Dzięki chłopaki, znalazłem tutaj rozwiązanie http://devshed.us/Blogs/tabid/227/EntryId/314/Crystal-Reports-error-after-upgrading-to-NET-Framework-4-0 .aspx –

Odpowiedz

10

Jeśli skompilować w VS2010 (lub VS2012) na komputerze z Win7, spróbuj dodać następujące do app.config:

<startup useLegacyV2RuntimeActivationPolicy="true"> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> 
</startup> 

Jeśli to nie zadziała (tak jak na moim komputerze), spróbuj skompilować w VS2010 na komputerze WinXP.

+0

działa w vs2015 win10 – Hamid

+0

Praca w VS2017 z aplikacją famework 4.5.2. – Muffun

Powiązane problemy