VS.NET 2005とSQL 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 を使用してカスタム アセンブリを作成しました。カスタム アセンブリには厳密な名前があります。
ローカル開発者マシン上
- カスタム アセンブリを C:\Program Files\Microsoft Visual Studio 8\Common7\IDE**PrivateAssemblies** にコピーしました。
- C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies**RSReportDesigner.config** を変更して、StrongNameMembership に基づいてカスタム アセンブリに FullTrust を付与する CodeGroup を含めます(注: ReadMe.txtでは、エントリの追加について言及されていません)このファイルに)。
- C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies**RSPreviewPolicy.config** を変更して、StrongNameMembership に基づいてカスタム アセンブリに FullTrust を付与する CodeGroup を含めます(注: ReadMe.txtでは、エントリの追加について言及されていません)このファイルに)。
次のように VS.NET 2005 を使用して修正されたレポート
- カスタム アセンブリと System.Drawing への参照を追加しました。
- type= Database、MimeType= image/bmp、Value = call to custom assembly methodのイメージ コントロールを追加しました。メソッドには、RTF を含むデータベース フィールドの値が渡されます。
- デプロイされたレポート。
- 出力形式として EXCEL を使用して、HTML と WebService の Render メソッドの両方を介してレポートを正常に表示しました。 画像の HTML
ローカルの開発者マシンとサーバー上
- カスタム アセンブリを C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin にコピーしました
- C:\Program Files\Microsoft SQL Server\ MSSQL.3 \Reporting Services\ReportServer**rssrvpolicy.config** を変更して、StrongNameMembership に基づいてカスタム アセンブリに FullTrust を付与する CodeGroup を含めました(注:ソース コードは、ベースで権限を付与する必要があることを示していますUrlMembershipで )。
- デプロイされたレポート。
- 出力形式として EXCEL を使用して、HTML と WebService の Render メソッドの両方を介してレポートを表示できませんでした。画像の HTML
最初、Excel へのエクスポート時に「データがありません」というエラー メッセージが表示されましたが、これらは、ReadMe.txt に記載されていない .config ファイルで権限を付与することで解決されたようです。私はしようとするものがなくなってしまい、頭がおかしくなりました。これは私のコンピューターでは機能しますが、サーバーでは機能しないため、ソリューションはアクセス許可に関係していると確信しています。
ご意見やご提案をお寄せいただきありがとうございます。
よろしく、
明細書