2016-03-30 9 views
0

Crystal Reportsで問題が発生しました。レポートは開発環境で正常に機能しています。テストサーバーでは、私はCrystalViewerからこのプロンプトを取得:Crystal Reports、 '要求したレポートに詳細情報が必要です'は、開発中に正常に動作しており、テストサーバーでは機能しません。

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 

私は理由を理解していない:これは私がレポートへのログイン情報を渡すために使用しているコードがある

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

CrystalReportがDSNファイルを認識していない私がコードで指定したものです。 DNSファイルでは、パスワード、user_id、サーバー、データベースを保存しました。これは前にも述べたように、開発環境で動作しています。

誰かがこれを解決する方法を知っていれば、本当に役に立ちます。

ありがとうございました。

EDIT:また、プロンプトにパスワードを入力すると、ページを更新するだけで何も起こらず、プロンプトが再び表示されます。 Visual Studioで

答えて

0

、ソリューションエクスプローラで、あなたはCrystalReports.Shared、その後、参照をクリックする必要がありますし、次に示すようにプロパティを設定します。Falseに

CopyLocal True

設定埋め込み相互運用機能の種類とローカルにコピーローカル。

CrystalDecisions.Sharedは、CrystalReportsの接続クラス定義が格納されている場所です。 Visual Studio環境(またはこのライブラリが近くにあります)がサーバーにないと、これが原因でエラーが発生する可能性があります。

ソリューションを再ビルドし、新しい実行可能ファイルをサーバーに置くと正常に動作します。

+0

あなたの答えをありがとう、私はあなたが示唆したものをチェックしたが、問題を解決するようには見えない、私はこのエラーを与えているコードを介してパラメータを渡しているレポートです。それは私がパラメータを渡している方法と関係があると思いますか? – starLight

+0

パラメータは私にとってはうまく見えますが、サーバー上ではなく開発用コンピュータで動作するということは、サーバー上にプログラムがクラッシュする原因となるものがあることを示しています。私はいくつかチェックする必要があると思います:1.あなたの開発用コンピュータで設定したODBC DSNは、サーバー上でセットアップしたものと同じですか? 2.使用しているすべてのCrystalリファレンスでCopy Localをtrueに設定しようとしましたか? 3.サーバーに.NETがインストールされていますか(C:\ Windows \ Microsoft.NETを確認してください)4.ソリューションをリリースとしてビルドしていますか? – Dustin

関連する問題