SSブログ

SQL Server Report Service の構成

SQL Server のインストール時に、Reporting Service をインストールしなかった場合、

スタート > Microsoft SQL Server 2008 R2 > 構成ツール > SQL Server インストールセンター 

から追加インストールを行う
インストール後、Reporting Services 構成マネージャーで構成する必要がある

スタート > Microsoft SQL Server 2008 R2 > 構成ツール > Reporting Services 構成マネージャー

サーバ、インスタンスの確認後 [接続]  > サービスが開始されていなければ「開始」

サービスアカウント
   デフォルトで "NETWORK Service" が選択されている

Web サービス URL
   仮想ディレクトリは、デフォルトで "ReportServer" なので、このまま「適用」
   "URL は正常に予約されました。" と表示されれば成功

データベース
   [データベースの変更] > "新しいレポート サーバー データベースを作成する" を選択して [次へ] >
   サーバー名のデフォルト表示を確認して、[接続テスト] で接続確認をして [次へ] >
   データベース名のデフォルト表示を確認して [次へ] >
   認証の種類が "サービス資格情報" であることを確認して [次へ] >
   概要を確認して [次へ]  --->  データベースが構成される > [完了]

レポート マネージャ URL
   仮想ディレクトリは、デフォルトで "Reports" になっているので、このまま [適用] 
   "URL は正常に予約されました。" と表示されれば成功

暗号化キー
   キーをバックアップしておく
 
 
参考:
 
 
(Windows Server 2008 R2、 SQL Server 2008 R2、 Reporting Service) 
 

SQL Server Reporting Service と ReportBuilder で Report を作成する

SQL Server 2008 R2 の Reporting Service を Setup した後に、Report を作成する手順は、以下のようになる。

レポートマネージャで
ロールを作成
データソースの設定
ReportBuilder で
データセットの作成
Reportの作成
レポートを公開
Internet Explorer で
レポートにアクセス


レポートマネージャでロールを作成する
   管理者権限で Internet Explorer を起動し Reportsサーバへアクセスする 
    (※UAC機能により、"ユーザーXX\XXXX に必要なアクセス許可がありません" となるため) 
 
      http://ServerHost/Reports_SQLinstance/   (インスタンスが切ってある場合)

   ホーム > プロパティ もしくは サイトの設定 > セキュリティ
     [新しいロールの割り当て]  名称 と ロール(権限)を指定し [OK]

   ここで作成した ロール を Reports へのアクセス制御に使用する


データソースの設定
   レポートに埋め込まれた接続 = Report Builder で作成
   共有接続 = レポートマネージャ で作成

レポートマネージャでデータソースの作成
   ホーム > コンテンツ > "新しいデータソース" 
     名前:DSdefinition
        "リストビューで非表示にする" をチェック
     データ ソースの種類:  Microsoft SQL server
     接続文字列:
        Data Source=ServerHost;Initial Catalog=DBname
     接続に使用する認証:
        "レポート サーバーに保存され、セキュリティで保護された資格情報" を選択
        ユーザ名 と パスワード を設定
     [OK]

ReportBuilder でデータソースの作成
   ReportBuilder の 新規 > データソース
    > 標準
     名前:DSdefinition
        "レポートに埋め込まれた接続を使用する"
     接続の種類の選択:  Microsoft SQL server
     接続文字列:
        Data Source=ServerHost;Initial Catalog=DBname
    > 資格情報
     "次のユーザ名とパスワードを使用" を選択
        ユーザ名 と パスワード を設定
     [OK]

   ※ 接続文字列 と 資格情報 は、[ビルド] ボタンから指定してもよい

ReportBuilder でデータセットの作成
   ReportBuilder の 新規 > データセット
     名前:DatasetName (接続先のDB名と同じがいいかも)

    レポート埋め込みのデータソースを使用する場合
     データーソース:作成したデータソースを選択

    共有接続のデータソースを使用する場合
     データーソース:
        新規 > 参照 > データソースの選択
           検索対象欄に Reportsサーバ http://ServerHost/Reports/ を指定
           一覧から作成したデータソースを選択 > [開く] > 
           名前 (データソースに付ける名称) を指定して > [OK]

     [クエリデザイナ] > ID/PW 入力 > 
        テーブル/ビュー 一覧から、対象を選択して [テキストとして編集]
        SQL文を "!" で実行結果を見ながら完成させる
        Where区でパラメータ指定したい場合、以下のように記述する
        
           WHERE  Field1 = @P1 and Field2 > @P2 and Field3 like @P3

        [OK] > [OK]

ReportBuilder でReportの作成
   ReportBuilder の 挿入 > テーブル > テーブルの挿入 として
     任意の場所に テーブル を配置する
     後は、必要な項目を Drug & Drop で配置していく

ReportBuilder からレポートを保存(公開)する
   [保存] > "最近使ったサイトとサーバ" で Reportsサーバ を選択、
            名前を付けて [保存]  -->  Reportsサーバに公開される

   [保存] > "マイコンピュータ" で、任意のフォルダに .rdl ファイルを
            バックアップとして [保存] しておく

Internet Explorer で公開したレポートにアクセスする
   
   にアクセスして ホーム からレポートを辿るほか、
   URL でパラメータ渡しにより、直接、絞込み結果をレポートできる


   この場合の注意点として、
   日本語の部分は url エンコードの結果で置き換える必要がある

   例えば、
   http://ServerHost/ReportServer?/FolderName/年間&rc:Parameters=False&p1=<Value>
   は以下のようにする


(Windows Server 2008 R2, SQL Server 2008R2, Report Builder 2.0/3.0)

タグ:SQL

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。