0

VS.NET 2005SQL Server 2005を使用しています。私の開発用コンピューターはWindows XP SP2を実行しています。SQL Server 2005 データベースおよびレポート サービスは、Windows 2003 Serverで実行されています。

私のビジネス要件は、データベース ( datatype = TEXT ) に格納されたリッチ テキスト ( RTF )を取得し、カスタム アセンブリを使用して実行時に画像に変換するレポートを開発およびデプロイすることです (ソースはhttp://blogs. digineer.com/blogs/jasons/archive/2006/10/03/520.aspx )。ReportManager Web インターフェイスとRenderメソッドの両方を使用して、RTF を含む動的画像をローカル (つまり、開発者) コンピューターで生成および表示できます。これをテスト サーバーにデプロイすると、リンク イメージが壊れてしまいます。

要約すると、私は次の手順を実行しました。

RTF をビットマップ イメージに変換する VS.NET 2005 を使用してカスタム アセンブリを作成しました。カスタム アセンブリには厳密な名前があります。

ローカル開発者マシン上

  1. カスタム アセンブリを C:\Program Files\Microsoft Visual Studio 8\Common7\IDE**PrivateAssemblies** にコピーしました。
  2. C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies**RSReportDesigner.config** を変更して、StrongNameMembership に基づいてカスタム アセンブリに FullTrust を付与する CodeGroup を含めます(: ReadMe.txtではエントリの追加について言及されていません)このファイルに)。
  3. C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies**RSPreviewPolicy.config** を変更して、StrongNameMembership に基づいてカスタム アセンブリに FullTrust を付与する CodeGroup を含めます(: ReadMe.txtでは、エントリの追加について言及されていません)このファイルに)。

次のように VS.NET 2005 を使用して修正されたレポート

  1. カスタム アセンブリと System.Drawing への参照を追加しました。
  2. type= Database、MimeType= image/bmp、Value = call to custom assembly methodのイメージ コントロールを追加しました。メソッドには、RTF を含むデータベース フィールドの値が渡されます。
  3. デプロイされたレポート。
  4. 出力形式として EXCEL を使用して、HTML と WebService の Render メソッドの両方を介してレポートを正常に表示しました。 画像の HTML

ローカルの開発者マシンとサーバー上

  1. カスタム アセンブリを C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin にコピーしました
  2. C:\Program Files\Microsoft SQL Server\ MSSQL.3 \Reporting Services\ReportServer**rssrvpolicy.config** を変更して、StrongNameMembership に基づいてカスタム アセンブリに FullTrust を付与する CodeGroup を含めました(:ソース コードは、ベースで権限を付与する必要があることを示していますUrlMembershipで )。
  3. デプロイされたレポート。
  4. 出力形式として EXCEL を使用して、HTML と WebService の Render メソッドの両方を介してレポートを表示できませんでした。画像の HTML

最初、Excel へのエクスポート時に「データがありません」というエラー メッセージが表示されましたが、これらは、ReadMe.txt に記載されていない .config ファイルで権限を付与することで解決されたようです。私はしようとするものがなくなってしまい、頭がおかしくなりました。これは私のコンピューターでは機能しますが、サーバーでは機能しないため、ソリューションはアクセス許可に関係していると確信しています。

ご意見やご提案をお寄せいただきありがとうございます。

よろしく、

明細書

4

1 に答える 1

0

テストサーバー上のDBにアクセスするために必要なアクセス許可をアセンブリに付与しましたか?(あなたがしたように見えます。)

その場合は、テストサーバーで実際にイメージを作成しているかどうかを確認してください。そうでない場合は、書き込み許可の問題です。作成されているのに表示できない場合は、読み取り権限の問題です。

于 2009-05-29T20:37:55.030 に答える