0

現在、asp.netとC#を使用しています。
システムでのレポートにActiveReportsを使用しています。
プレビューを表示してレポートを印刷しようとしました(つまり、WebViewerを使用してレポートをプレビューせず、レポートを直接印刷します)。

MyAR1    rptMyreport = new MyAR1();    
DataTable dtMydata = new DataTable();    
//add some data in dtMydata    
rptMyreport .DataSource = dtMydata;
if (rptMyreport .Document.Printer.PrinterSettings.IsValid)
{
   try
   {
      rptMyreport .Run();
      rptMyreport .Document.Print(false, false, false);
   }
   catch (Exception)
   {
   // do something
   }    
}      
else  
{  
    //show Error Message  
}  

私の問題は...
このレポートを印刷すると、サーバーサイトのプリンターでは機能し、クライアントサイトのプリンターでは機能しません。すなわち(私は4階で働いており、サーバーは10階にあります。レポートを印刷するとき。10階のサーバーサイトプリンターで印刷されます。)クライアントPCであるプリンターでレポートを印刷するにはどうすればよいですか。接続されています。

よろしく、

4

1 に答える 1

1

上記で実行しているC#コードは実際にはサーバー上で実行されているため、サーバーのプリンターが印刷ジョブを受信します。ただし、クライアントマシン(Webブラウザを搭載したマシン)に印刷ジョブを受信させる必要があります。これを行うためにいくつかのオプションを提供していますが、最良のオプションは、ヘルプトピック「WebViewer(Pro Edition)でのワンタッチ印刷の提供」のドキュメントに段階的に説明されています。これにより、サーバーではなくWebブラウザを使用しているマシンから印刷が行われます。

Flash以外の他の種類のビューアを使用することもできますが、ブラウザによって制限があり、印刷ダイアログが強制的に表示されます(Webページが同意なしにランダムに印刷されるのを防ぐため)。使用可能なオプションと制限の詳細については、ヘルプトピック「Webビューアの印刷オプション」を参照してください。

于 2012-07-10T18:17:24.573 に答える