顯示具有 SSRS 標籤的文章。 顯示所有文章
顯示具有 SSRS 標籤的文章。 顯示所有文章

2014年4月30日 星期三

[SQL Server 2008R2][SSRS] 進階 URL Access

使用 URL Access 也可以使用搜尋功能,找到報表內某一關鍵字並跳至報表出現關鍵字的地方,利用參數設定可以提供更彈性、複雜的搜尋效果。在一般 SSRS 檢視報表中的上方也有提供搜尋的功能。


[SQL Server 2008R2][SSRS] URL Access 報表轉譯格式設定(三)

雖然報表被轉為 PDF ,還是有可能被修改 ( 微軟匯出的 PDF 格式並沒有加密 ) ,所以最終極的做法就是將報表轉換為圖檔。如果圖檔中有含條碼,那 DPI 要設定在 300 以上才比較沒有問題。
圖形轉譯屬性如下:

設  定
可用值
描   述
rc:ColorDepth 1
4
8
24
32
影像輸出的像表深度,預設值是 24。ColorDepth 只支援 TIFF 格式的輸出,其他格式輸出會忽略此設定值。
rc:Columns 建立圖形時的行數,此屬性可以覆寫原先報表設計階段之設定。
rc:ColumnSpacing 建立圖形時的行數間隔距離,此屬性可以覆寫原先報表設計階段之設定。
rc:DpiX X 軸的解析度,也就是在 X 軸上每一英吋有幾個點,預設值是 96。
rc:DpiY Y 軸的解析度,也就是在 X 軸上每一英吋有幾個點,預設值是 96。
rc:EndPage 輸出圖形的最後一頁。
rc:MarginBottom 英吋單位 建立圖形時的下方邊界寬度,以英吋為單位,輸入數字後必須包括英吋單位,如 2in,此屬性可以覆寫原先報表設計階段之設定。
rc:MarginLeft 英吋單位 建立圖形時的左方邊界寬度,以英吋為單位,輸入數字後必須包括英吋單位,如 2in,此屬性可以覆寫原先報表設計階段之設定。
rc:MarginRight 英吋單位 建立圖形時的右方邊界寬度,以英吋為單位,輸入數字後必須包括英吋單位,如 2in,此屬性可以覆寫原先報表設計階段之設定。
rc:MarginTop 英吋單位 建立圖形 時的上方邊界寬度,以英吋為單位,輸入數字後必須包括英吋單位,如 2in,此屬性可以覆寫原先報表設計階段之設定。
rc:OutputFormat BMP
EMF
GIF
JPEG
PNG
TIFF
輸出圖形格式。
rcPageHeight 英吋單位 輸出圖形的頁高,此屬性可以覆寫原先報表設計階段之設定。
rc:PageWidth 英吋單位 輸出 圖形的頁寬,此屬性可以覆寫原先報表設計階段之設定。
rc:StartPage 1/0 輸出圖形的第一頁,值為 0 表示每一頁都要輸出,預設值為 1。

2014年4月29日 星期二

[SQL Server 2008R2][SSRS] URL Access 報表轉譯格式設定(二)

雖然 SSRS 工具列提供了下拉選單,可以讓使用者自行將報表轉存為 EXCEL 格式,但在系統開發的層面上,還是很多使用者不想預覽報表而直接把報表轉存為 EXCEL 檔案。

EXCEL 轉譯
相關參數如下

設  定
可用值
描   述
rc:OmitDocumentMap True
False
指示是否要忽略文件地圖,如果為 True,Excel 檔案將不會包括文件地圖,預設值是 False。
rc:OmitFormulas True
False
指示是否要忽略公式,如果為 True,Excel 檔案將不會包括公式,預設值是 False。
rc:SimplePageHeaders True
False
指示報表的頁首輸出到 Excel 的頁首,假如設為False,表示會將報表的頁首部分輸出到Excel活頁簿的第一列,預設值是False。

[SQL Server 2008R2][SSRS] URL Access 報表轉譯格式設定(一)

SSRS 預設是以 HTML 格式轉譯報表內容,使用者可透過瀏覽器來檢視報表內容,但使用者可能會有報表轉譯不同格式的需求,若想做進一步分析析統計,可能要轉譯為 EXCEL 格式,要防止報表內容被竄改,PDF或 TIFF 格式就比較適合做為保密類文件格式。
SSRS 提供多種報表轉譯格式:

  • HTML
  • EXCEL
  • WORD ( SSRS 2008 新增轉譯格式 )
  • XML
  • CSV
  • 影像檔案,預設為 TIFF
  • PDF
  • 網頁封存 ( MTHML 格式 )
  • ATOM RSS ( SSRS 2008 R2 新增轉譯格式 )
  • NULL ( 快取報表 )


2014年4月1日 星期二

[SQL Server 2008R2][SSRS] URL Access 概說

SSRS 可使用 URL Access 的方式,將報表嵌入應用程式之中,讓 SSRS 在開發有了延伸能力上的彈性。在 Resporting Services 2008 R2 提供了多種開發 API 之中,最簡便的一種稱之為「URL Access」,透過 URL 以 HTTP GET 以及 POST 的方式即可呼叫 SSRS,以取得指定的報表內容,並轉譯為所需要的報表格式。在應用程式整合報表服務時,只要利用程式直接組合出 URL 字串,即可存取對應的報表物件,甚至可以透過 Session 以及認證的管理,在實作單一登入整合的需求。
使用 URL Access 的優點:

  • 可自行客製化瀏覽報表介面,並與網頁程式整合
  • 語法直覺易懂
  • 屬性設定比傳統報表管理員介面更加豐富
  • 最節省開發人力成本的整合報表方案


2014年3月13日 星期四

[SQL Server 2008R2][SSRS] 報表伺服器資料庫使用狀況

ReportServer 和 ReportServerTempDB 資料庫是報表伺服器運作時不可或缺的部分,但也要適當管理磁碟空間資源。
ReportServer 資料庫不只是報表服務用來儲存報表的定義檔,其中還包含組態資料、安全設定及排程工作,而 ReportServerTempDB 資料庫只儲存暫時性的資料,像是 Session 及快取的資訊。在 ReportServer 資料庫中,除了 ChunkData 這個資料表外,多數的資料表並不會佔用太大的空間,ChunkData 資料表包含了快照集及歷程記錄,而這兩種報表都是以中繼資料表的方式儲存於資料庫中,因此比其他資料表耗用了更多的磁碟空間;而在 ReportServerTempDB 資料庫中的 ChunkData 資料表則是存放 Session 快取及快取報表,其中快取報表是以中繼報表格式儲存,因此也是非常佔用磁碟空間。

使用 SQL Server 所提供的工具,來檢視 ReportServer 及 ReportServerTempDB 資料庫的資料表空間使用狀況。

2014年3月12日 星期三

[SQL Server 2008R2][SSRS] SSRS 同時使用人數設定

SSRS 組態檔在 C:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer\ 目錄下的 rsreportserver.config 檔案,為 XML 格式的檔案,可以使用文字編輯器來修改其設定。

其中 MaxActiveReqForOneUser 的屬性是,指定一個使用者同時可以處理的報表最大數目。 一旦達到限制,系統就會拒絕進一步的報表處理要求。 有效值為 1 到最大整數。 預設值是 20。
請注意,大部分要求的處理速度很快,因此單一使用者不太可能同時擁有 20 個以上的開啟連接。 如果使用者同時開啟超過 15 個密集處理的報表,您可能需要增加此值。
以 SharePoint 整合模式執行的報表伺服器會忽略這項設定。

開啟 rsreportserver.config 檔案後,找到 MaxActiveReqForOneUser 位置,可以調整其值。



設定完成,將檔案儲存並關閉檔案;變更的組態設定會完整地併入目前的伺服器工作階段,所以不需要做停止及重啟服務的動作。

2014年3月11日 星期二

[SQL Server 2008R2][SSRS] 使用者基礎報表資料篩選

在企業報表中,為了達到報表減量,通常會採用參數化報表,但是,實務上不可能讓所有具有此報表讀取權限的使用者可以任意設定參數,以看到全公司的營運資訊,舉例來說,一家分店的店長,不應看到全公司或其他分店的營運報表,只能讀取到屬於自己分店的資訊。此時,必須要做到動態根據使用者身份以決定可以瀏覽的報表內容。

要完成此種設定必須使用兩種技術:

  • 使用內建欄位 User!UserID,從傳回的「網域\登錄帳號」或是「電腦名稱\登入帳號」格式中取出登入帳號以進行篩選。
  • 根據取出的使用者帳號帶入篩選條件中,並使用資料集的篩選功能,將登入者帳號作為參數來限制他所能讀取到的資料範圍。

2014年3月6日 星期四

[SQL Server 2008R2][SSRS] 啓用我的報表

「我的報表」 資料夾是個人的工作空間,可以用來儲存和使用您所擁有的報表。 其他報表伺服器資料夾都是公開的,通常使用者必須具備進階權限才可以加入或修改資料夾內容。 相對地,「我的報表」資料夾是使用者自行管理的工作空間。 您可以加入或移除報表和資料夾,以及使用個人化的設定來儲存連結報表。

在概念上,「我的報表資料夾類似於 Windows 檔案系統的「我的文件」 資料夾。 雖然每一位使用者都有稱為 「我的報表」 的資料夾,但每一位使用者存取的資料夾與其他人都不相同。 除了報表伺服器管理員之外,其他使用者都無法存取屬於您的「我的報表」 資料夾的內容

2014年3月5日 星期三

[SQL Server 2008R2][SSRS] 報表管理員登出

在 SSRS 預設的認證方式 ( Windows 整合驗證 ) 在報表管理員登入後,瀏覽器會記住所登錄的認證資料,當要切換不同身份進報表管理員時,會發現怎麼沒有「登出」的功能,即使瀏覽器關閉後重啟,還是以先前的身份連線,並不會再出現帳密輸入的認證視窗。


要如何切換至不同的使用者身份,來檢視不同權限的功能?

[SQL Server 2008R2][SSRS] 修改報表伺服器網站名稱

當我們進入報表管理員時,畫面左上角會出會報表伺服器網站名稱,預設值為 SQL Server Reporting Services。這個名稱是可以修改的。

2014年3月2日 星期日

[SQL Server 2008R2][SSRS] 列印控制項

從瀏覽器列印的頁面會包括網頁上的所有視覺化元素,以及識別網頁或網站的頁首和頁尾資訊。 從瀏覽器列印時會列印現行視窗的內容。 若為多頁報表.瀏覽器最多只會列印第一頁,如果報表頁面延伸到列印頁面範圍之外,則列印出來的可能更少。

使用 SQL Server Reporting Services 中提供的用戶端列印功能。 用戶端列印功能提供標準的 [列印] 對話方塊,可以用來選取印表機、指定頁面和邊界,以及在列印之前先預覽報表。 用戶端列印功能就是要用來代替瀏覽器 [檔案] 功能表上的 [列印] 命令。 使用用戶端列印功能時,報表會像原來設計那樣列印出來,而不會有您在網頁輸出中所看到的多餘元素。

預設有提供用戶端列印功能,在查閱報表時,會有列表機的圖示,供列印功能。


2014年3月1日 星期六

[SQL Server 2008R2][SSRS] 設定報表產生器的存取

報表產生器是一個隨選報表工具,可以供進階的使用者,自行設計報表以減少資訊人員煩重的工作。但在某些情況下 ( 安全性及管理上的考量或使用者並不俱備自行設計的能力 ),並不想讓使用者可以使用報表產生器。

報表產生器的存取權會因下列因素而異:

  • 決定是否可以在報表伺服器上使用報表產生器的伺服器屬性。
  • 可將報表產生器提供給個別使用者或群組使用的角色指派或權限。
  • 驗證設定,可判斷使用者認證是否可以傳遞給報表伺服器,或是在應用程式檔案上設定匿名存取。
若使用報表產生器,必須具有要使用的已發行報表模型。

2014年2月28日 星期五

[SQL Server 2008R2][SSRS] 報表安全性設定(系統層級安全角色)

在 SSRS 中,除了對報表目錄架構內的各項物件設定項目層級安全性角色外,有些安全性管理工作卻不在這些目錄架構中,此時,必須透過系統層級安全性角色來進行管理。
在 SSRS 中,伺服器管理物件包括了報表伺服器本體、執行、事件、作業、共用排程以及角色。系統層級角色主要是針對這些物件進行新增、刪除、修改與管理。

系統層級角色的工作
工  作
描   述
管理角色 建立、檢視、修改和刪除角色定義。
管理報表伺服器安全性 檢視和修改全系統的角色指派。
檢視報表伺服器屬性 檢視套用到報表伺服器的屬性。
管理報表伺服器屬性 檢視和修改套用到報表伺服器及由其所管理的項目的屬性。
檢視共用排程 檢視已提供一般用途的預先定義排程。
管理共用排程 建立、檢視、修改和刪除用來執行報表或重新整理報表的共用排程。
產生事件 提供能夠在報表伺服器命名空間內產生事件的應用程式。
管理作業 檢視和取消正在執行的作業。
執行報表定義 從報表定義開始執行,不將它發行至報表伺服器。

[SQL Server 2008R2][SSRS] 報表安全性設定(項目層級安全角色)

所謂角色基礎管理是將使用者的權限進行分類,針對每個分類賦預一系列安全性角色的組合,再將使用者及使用者群組指派適當的分類中,以進行安全性管理。
SSRS 提供的安全性工作內容如下表:

2014年2月27日 星期四

[SQL Server 2008R2][SSRS] 報表安全性設定(報表產生器安全性)

報表產生器是很便利的隨選報表查詢工具,可以讓使用者自行至預先定義好的報表模型拖拉產生報表,但方便的同時,更要注意到安全性的考量。
當使用者使用報表產生器,希望能夠同時新增、儲存、修改利用報表產生器所產生的報表時,必須設定系統層級以及項目層級的安全性角色指派。

2014年2月26日 星期三

[SQL Server 2008R2][SSRS] 報表安全性設定(身份認證模式)

在身份驗證方面,除了與 Windows 帳號驗證緊密結合之外,SSRS 2008 中也提供了彈性的自訂驗證設定;至於權限授權方面則是採取角色基礎的安全管理模式,可將安全性角色以及報表物件作彈性的結合。

目前 SSRS 內建兩種驗證模組,分別是 Windows 驗證延伸模組以及自訂延伸模組。其中 Windows 驗證延伸模組可支援多種驗證類型,包含:RSWindowsNegotiate、RSWindowsKerberos、RSWindowsNTLM 及 RSWindowsBasic,每一個驗證類型都可以個別開啟或關閉,因此,報表伺服器可以開啟複數種 Windows 驗證類型。

參考:
http://technet.microsoft.com/zh-tw/library/bb283249.aspx

2014年2月24日 星期一

[SQL Server 2008R2][SSRS] 報表訂閱與派送(前置作業)

將設計好的報表透過最便利的方式傳遞到報表使用者手上,從主管立場考量,最好是有人可以每天把他們要看的報表依照所要設定的參數條件事先處理完成,無須等待直接將內容寄到電子信箱中,最好已轉成 Excel 檔,以便開啟瀏覽。這些需求正是報表訂閱與派送的重點。
SSRS 2008 R2 提供兩種報表傳遞途徑:

  • 電子郵件遞送
  • 分享資料夾遞送

訂閱的方式也有兩種:

  • 標準訂閱:每次設定獨立的訂閱條件。
  • 資料導向訂閱:設計大批客製化訂閱,必須 SSRS 企業版以上方能提供此功能。
訂閱的精神在於利用排程的方式預先將報表處理完成,再透過傳遞途徑將報表送到報表使用者的手中。

[SQL Server 2008R2][SSRS] 連結報表

參數化報表的最重要功能在於利用動態的參數輸入將同類型的報表合併,以有效減少報表數量。對於同一個分析者而言,所需要輸入的參數是固定的,如果每次都需要輸入參數值還是會造成很多麻煩。因此「報表減量」及「方便使用者」這兩個需求下,連結報表 ( Linked Report ) 就是最好的解決方案。
連結報表是一種虛擬的報表對應,它可以繼承一張參數化報表的報表定義,再搭配參數的設定即可構成連結報表。連結報表格式完全與所連結的參數化報表相同,但是卻可以設定獨立的權限、訂閱、排程。例如,一張報表要提供給 10 位主管使用,那麼每位主管可以將這份報表輸入自己的參數值以構成屬於自己的連結報表,並將這個連結報表儲存在「我的報表」區域供自己使用。如此一來,每位主管只要點選自己的連結報表就可以省下輸入參數的麻煩,而且當報表改版時,只要重新部署原有的參數報表,那麼 10 張連結報表內容也會自動更新。