2011-09-01 114 views
2

我有這個漂亮的報告,顯示在我的網絡應用程序。到目前爲止非常好(雖然它已經是一個完全PITA到這裏)。報告查看器打印?

無論如何,我需要讓他們打印它。在設計模式中,我看到了小打印圖標。運行時沒有打印圖標。

就像我可以告訴它似乎它是控件的「本地模式」和「遠程模式」之間的區別;但我不是100%。

如何在世界中告訴控件顯示打印按鈕?我確實看到了名爲「ShowPrintButton」的報表查看器的屬性,並且它絕對被設置爲True。

想法?

回答

6

在服務器模式下,打印是通過一個活動的x插件完成的,因此打印只能在IE中使用,而不能在Firefox或其他瀏覽器中使用。打印按鈕是通過打印按鈕的可見性來控制的,但只能在IE或全局的ssrs配置中使用。 根據我的經驗,最好的選擇是鼓勵用戶導出到PDF並從那裏打印。

+0

Upvoted。你是對的。 – Icarus

+0

就是這樣。我在看Firefox中的報告,並沒有意識到打印功能在非IE瀏覽器中不支持。瘸。 – NotMe

+0

評論:如果報告設置爲在一頁中呈現報告HTML,您可以使用瀏覽器的打印功能,但PDF仍然是最安全的選擇。 – niktrs

1

克里斯,我們有一個不同的問題(我不記得具體是什麼),但我們最終不得不使用Javascript來從客戶端操縱reportviewer。 Have a look at this.並檢查您是否看到可幫助您的選項。

實際上,我剛剛注意到在使用報表查看器的一個web應用程序中,打印按鈕在與Internet Explorer不同的任何其他瀏覽器中不可用;只有「導出」按鈕存在。當你點擊「導出」按鈕時,它會提示你輸入打印機。

而這裏展示瞭如何操縱導出格式提供了一些示例:

function resetExportOptions() { 
     var exportlist = document.getElementById('report_viwer_id'); 
     if (exportlist != null) { 
      exportlist.length = 0; 
      var optn = document.createElement("OPTION"); 
      optn.value = "Select a format"; 
      optn.text = "Select a format"; 
      exportlist.options.add(optn); 
      optn = document.createElement("OPTION"); 
      optn.value = "PDF"; 
      optn.text = "Acrobat (PDF) file"; 
      exportlist.options.add(optn); 

      if ('-1' == 421) { 
      var optn2 = document.createElement("OPTION"); 
       optn2.value = "EXCEL"; 
       optn2.text = "Excel File"; 
       exportlist.options.add(optn2); 
      } 
     } 
    } 

    $(document).ready(function() { 
     resetExportOptions(); 
    });