0

レポートを PDF にダウンロードする際に問題が発生しました。サーバー:前述のSSRS R2。

レポートは 1 つの ID に固有です。そのため、チャートは 1 つの ID に対して表示されます。サブレポート メソッドを使用して複数の ID をレポートに送信し、1 つのレポートで異なるページのグラフを取得しました。約 38 個の ID (レポートの 38 ページ) を送信すると、PDF にダウンロードするのに約 2 分かかり、比率は比例します (送信する最大数は約 90 個の ID で、約 5 分かかり、ユーザーの観点からは受け入れられません)。レポートは数秒でレンダリングできました。したがって、SQL DB からの問題はありません。SQL を徹底的に強化して最適なパフォーマンスを実現しました。Reportviewer は、数秒でレポートを表示できました。ただし、この問題は、そのレポートを pdf にダウンロードすることに非常に固有のものです。Excel のダウンロードも非常に高速で、数秒でダウンロードできます。

私はGoogleで多くの検索を行い、サーバーでウイルス対策を無効にするなどの多くのことを試し、子レポートとメインレポートからすべてのグローバルパラメーターを削除し、キャッシュを有効に保とうとしました. 最後に、大容量メモリ、サーバー上のマルチコア CPU、および十分なディスク容量があります。ssrs からの pdf のダウンロードは CPU を集中的に使用し、Excel は RAM を集中的に使用するため、調査しました。

返信ありがとうございます。これは、スタック オーバーフローに関する私の最初の投稿です。このサイトは私にとって何度も救世主でした。

4

1 に答える 1

0

私は2つのうちの1つを疑うでしょう。非常に多くのサブレポートをレンダリングしようとしており、何らかの理由でこれが PDF レンダラーの速度を低下させているという事実です。一部のサブレポートを無効にするか、一度だけレンダリングするように制限してみてください (それらが何らかの繰り返しオブジェクトにある場合)。それか、サブレポートを呼び出す必要がないようにレポートを作り直してください。

もう 1 つの可能性は、グラフが非常に大きいか複雑であるということです。PDF レンダラーで大きなサイズのグラフを生成するのに非常に時間がかかり、グラフを小さくするとパフォーマンスが向上したという話を聞いたことがあります。このような場合、どのように対処すればよいかわかりません。それはあなたの状況によって異なります。

レポートの一部を無効にして、それがレンダリング時間にどのように影響するかを確認して、原因を正確に突き止めます。

于 2013-10-04T04:54:18.217 に答える