raviprajapat Ответов: 5

Ошибка отчета Crystel в VS2010


При попытке показать Crystal Report появляется ошибка:
Could not load file or assembly 'file:///C:\Program Files\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86\dotnet1\crdb_adoplus.dll' or one of its dependencies. The system cannot find the file specified.

Код для галочки CrystelReport:
Dim rptInvoiceDt As New DataTable
        PrintReporObj = New DataAccessLayer
        rptInvoiceDt = PrintReporObj.Filldatatable("SELECT * FROM InvoiceReport WHERE JobListID=" & JobAndTrackingMDI.GetJobID & "")
        If rptInvoiceDt.Rows.Count = 0 Then
            KryptonMessageBox.Show("Record Not found")
        Else
            Dim Rpt As New ReportDocument
            Dim ReportPath As String = Application.StartupPath & "\Reports\rptInvoice.rpt"
            Rpt.Load(ReportPath)
            Rpt.SetDataSource(rptInvoiceDt) '<--When This Line execute the error occur -->
            CRVInvoice.ReportSource = Rpt
        End If

5 Ответов

Рейтинг:
44

raviprajapat

спасибо

Рейтинг:
28

aviatcogni

Попробуйте добавить следующий раздел в свой конфигурационный файл, и он должен решить эту проблему.

<startup uselegacyv2runtimeactivationpolicy="true">
  <supportedruntime version="v4.0" />
</startup>


Sanket Khadke

Идеальный..:)

connect ashish yadav

Работать на меня.
Спасибо.

Рейтинг:
2

degdag

в конфигурационном файле приложения измените этот раздел:

<pre lang="HTML">
< startup> & lt; supportedruntime version="v4.0" sku=".NETFramework, версия=v4. 0 " >


к

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


Рейтинг:
2

Tarun Mangukiya

Вы можете использовать этот код. Который работает в vs2005, так что это может быть работа в 2010 году.

Dim rpt As New ReportDocument()
Dim DPath As String = Application.StartupPath & "\MyData.mdb" 'Data File location
rpt.Load(Application.StartupPath & "\Reports\rptInvoice.rpt") 'Report Path
For Each connection As IConnectionInfo In rpt.DataSourceConnections
    'Changing Data Source
    rpt.DataSourceConnections(connection.ServerName, connection.DatabaseName).SetConnection(DPath, "", "", "")
Next
rpt.RecordSelectionFormula = "{InvoiceReport.JobListID}=" & JobAndTrackingMDI.GetJobID & ""
If (rpt.Rows.Count <= 0) Then
    MsgBox("Record does not Exists.")
    Exit Sub
End If
rpt.Refresh()
CRVInvoice.ReportSource = rpt


Это изменение местоположения базы данных на ваше местоположение DPath. Так что вы можете решить ошибку расположения базы данных. И реши свою проблему.

Спасибо.


raviprajapat

я использую базу данных на другом сервере.

Рейтинг:
0

divesh12

'file:///C:\Program Files\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86\dotnet1\crdb_adoplus.dll'


В этой ссылке какой символ " / "" \ " вы используете. До C: / и после C:\.