2016-03-30 4 views
0

Ich habe ein Problem mit Crystal Reports, die Berichte funktionieren in der Entwicklungsumgebung, aber, wenn die Anwendung ausgeführt wird in dem Testserver erhalte ich diese Aufforderung vom CrystalViewer:Crystal Reports, 'Der von Ihnen angeforderte Bericht erfordert weitere Informationen' funktioniert in der Entwicklung, funktioniert nicht im Testserver

Server name: *Here's the absolute path of the report in the development server* 
Database name: *Correctly filled* 
User name: *Correctly filled* 
Password: *Empty* 

Dies ist der Code, den ich verwende die Anmeldeinformationen zum Bericht übergeben:

Try 
     rptDoc = New ReportDocument 
     rptPath = Server.MapPath(rutaReporte) 
     Dim conInfo As New ConnectionInfo 
     conInfo.ServerName = Server.MapPath("~/reportes.dsn") 
     conInfo.DatabaseName = "database" 
     conInfo.UserID = "reportUser" 
     conInfo.Password = "password" 
     rptDoc.Load(rptPath) 
     setInicioReportes(conInfo, rptDoc) 
     CrystalReportViewer1.ReportSource = rptPath 
    Catch ex As Exception 
     'Show error message 
    End Try 

ich verstehe nicht, warum CrystalReport erkennt die DSN-Datei nicht das habe ich im Code angegeben. Und in der DNS-Datei habe ich das Passwort, user_id, Server und Datenbank gespeichert, was, wie ich schon sagte, in der Entwicklungsumgebung funktioniert.

Wenn jemand weiß, wie man das löst, wird es sehr hilfreich sein.

Danke an alle.

BEARBEITEN: Auch wenn ich das Passwort in der Eingabeaufforderung eingeben versuche, Log in die Seite nur aktualisiert und nichts passiert, erscheint die Aufforderung erneut.

Antwort

0

in Visual Studio in Ihrer Lösung Explorer, müssen Sie auf Referenzen klicken, dann CrystalReports.Shared, und legen Sie die Eigenschaften wie folgt:

CopyLocal True

auf False Interop-Typen Set einbetten und die lokale Kopie auf True.

In CrystalDecisions.Shared werden Ihre Verbindungsklassendefinitionen für CrystalReports gespeichert. Ohne eine Visual Studio-Umgebung (oder diese Bibliothek in der Nähe) auf Ihrem Server ist dies wahrscheinlich der Grund, warum Sie Ihren Fehler erhalten.

Re-Build Ihre Lösung und legte die neue ausführbare Datei auf Ihrem Server und es sollte funktionieren!

+0

Danke für Ihre Antwort, ich habe überprüft, was Sie vorgeschlagen, aber es scheint nicht das Problem zu lösen, erkannte ich, dass nur die Berichte, die ich Parameter durch Code übergeben, die mir diesen Fehler geben, tun Sie Ich denke, es hat etwas damit zu tun, wie ich die Parameter übertrage. – starLight

+0

Die Parameter sehen gut aus, und die Tatsache, dass sie auf dem Entwicklungscomputer und nicht auf dem Server funktioniert, zeigt an, dass etwas auf dem Server ist, das Ihr Programm zum Absturz bringt. Ich kann mir Folgendes überlegen: 1. Ist der ODBC-DSN, den Sie auf Ihrem Entwicklungscomputer eingerichtet haben, identisch mit dem, den Sie auf dem Server eingerichtet haben? 2. Haben Sie versucht, für alle verwendeten Crystal-Referenzen "Local kopieren" auf "true" zu setzen? 3. Ist auf dem Server .NET installiert (Check C: \ Windows \ Microsoft.NET) 4. Bauen Sie die Lösung als Release (und nicht Debug) auf? – Dustin