SSRSとReportServerを使った帳票システムの導入と運用の流れ

システム開発
スポンサーリンク
スポンサーリンク

SQL Server Reporting Services(SSRS)は、SQL Server環境における強力な帳票基盤です。定型帳票の自動出力やスケジュール配信を実現でき、専用のReportServerデータベースでレポート定義やセキュリティ設定を一元管理できます。

本記事では、SSRSのインストールから初期構成、サンプルDBによる動作確認、Report Builderでの帳票作成、Webポータルへのデプロイ、ログ確認とエラー対応までを、初心者にも分かりやすく体系的に解説します。

1. SSRSとReportServerとは?基礎知識と役割を整理

まずはSSRSの全体像を理解するために、主要コンポーネントとReportServerの役割を整理します。

SSRSの主要コンポーネント

コンポーネント 役割 補足
Webポータル(/Reports) レポートの閲覧・管理用UI ブラウザ操作で閲覧・権限設定が可能
ReportServer DB レポート定義・スケジュール・配信設定を保存 .rdlファイルや実行履歴を保持
ReportServerTempDB 一時キャッシュや実行中データを保存 再起動でクリアされる一時領域

➡ ReportServerが中核となり、安定した帳票処理を支えています。

2. SSRSのインストール手順と初期構成

SSRSを利用するにはインストールと初期構成が必要です。このセクションでは、SQL Serverとの関係、インストール方法、構成マネージャーでの設定を解説します。

SQL Serverとの関係

  • 2016以降、SSRSはSQL Server本体と独立したスタンドアロン製品に変更
  • バージョン管理や導入の柔軟性が向上

インストール手順

  1. Microsoft公式サイト から最新版をダウンロード
  2. インストーラを実行 → SQL Serverインスタンスを指定
  3. 完了後「Reort Server Configuration Manager」で初期設定

構成マネージャーでの主要設定

  • WebサービスURLhttp://localhost:8080/ReportServer
  • データベース構成ReportServerReportServerTempDB を作成
  • WebポータルURLhttp://localhost:8080/Reports

💡 ローカルで検証する場合は「localhost」指定で外部公開を避けられます。

3. SSRSのアクセスURL「/Reports」と「/ReportServer」の違い

SSRSをインストールすると2種類のURLが利用可能になります。この章では、役割の違いと利用者層を解説します。

URL 主な用途 利用者
/Reports レポート閲覧・アップロード・権限管理 一般ユーザー・管理者
/ReportServer アプリ連携・自動処理・エクスポートAPI 開発者・外部システム

➡ 日常利用は /Reports、システム連携は /ReportServer を利用。

4. サンプルDBを作成してSSRSを動作確認

SSRSの動作確認を行うにはサンプルデータベースを用意するのが効果的です。ここではEmployeesとSalesテーブルを作成し、すぐに利用できるようにサンプルデータを登録します。

SampleDB作成とデータ登録例

CREATE DATABASE SampleDB;
GO
USE SampleDB;

-- Employeesテーブル作成
CREATE TABLE Employees (
  EmployeeID INT IDENTITY(1,1) PRIMARY KEY,
  FirstName NVARCHAR(50),
  LastName NVARCHAR(50),
  Department NVARCHAR(50),
  HireDate DATE,
  Salary DECIMAL(10,2)
);

-- Salesテーブル作成
CREATE TABLE Sales (
  SaleID INT IDENTITY(1,1) PRIMARY KEY,
  EmployeeID INT,
  Product NVARCHAR(100),
  Quantity INT,
  UnitPrice DECIMAL(10,2),
  SaleDate DATE,
  FOREIGN KEY (EmployeeID) REFERENCES Employees(EmployeeID)
);

-- Employeesにサンプルデータを挿入
INSERT INTO Employees (FirstName, LastName, Department, HireDate, Salary)
VALUES
(N'太郎', N'山田', N'営業', '2020-04-01', 350000),
(N'花子', N'田中', N'総務', '2019-07-15', 280000),
(N'次郎', N'佐藤', N'開発', '2021-01-10', 400000),
(N'真由美', N'鈴木', N'経理', '2018-11-30', 300000),
(N'健一', N'高橋', N'営業', '2022-03-05', 250000);

-- Salesにサンプルデータを挿入
INSERT INTO Sales (EmployeeID, Product, Quantity, UnitPrice, SaleDate)
VALUES
(1, N'ノートPC', 2, 120000, '2023-04-01'),
(2, N'プリンタ', 1, 25000, '2023-04-03'),
(3, N'マウス', 5, 1500, '2023-04-05'),
(4, N'ディスプレイ', 2, 30000, '2023-04-10'),
(5, N'キーボード', 3, 4000, '2023-04-12');

➡ このDBを使って「社員別売上レポート」を作成すると動作確認がスムーズです。

5. Report Builderを使ったSSRSレポート作成チュートリアル

Report Builderを利用すると、GUIベースで直感的に帳票を設計できます。この章では、サンプルDBを使った基本的なレポート作成手順を解説します。

基本手順

  1. Report Builder起動 → 「テーブル/マトリックス ウィザード」
  2. データソース接続localhost\\\\SQLEXPRESS;Initial Catalog=SampleDB;
  3. クエリ登録
SELECT
 (e.LastName + N' ' + e.FirstName) AS FullName,
 e.Department,
 s.Product, s.Quantity, s.UnitPrice,
 (s.Quantity * s.UnitPrice) AS TotalAmount,
 s.SaleDate
FROM Sales s
INNER JOIN Employees e ON s.EmployeeID = e.EmployeeID;

  1. テーブル配置FullName を行、TotalAmount を値に設定
  2. プレビュー実行 → 表示確認
  3. 保存と発行.rdl をWebポータルへ

応用例

  • 部署別・月別集計
  • パラメータ(期間や部署指定)追加
  • グラフ挿入でビジュアル化

6. 作成したレポートをWebポータルにデプロイ

レポート作成後はWebポータルにアップロードして共有できます。この章ではアップロード手順と権限管理のベストプラクティスを紹介します。

アップロード方法

  1. http://localhost:8080/Reports にアクセス
  2. フォルダを選択または新規作成
  3. アップロード ボタンから .rdl を追加

権限設定のベストプラクティス

  • フォルダを業務単位で分割(営業/経理/製造など)
  • ロールベースでアクセス制御
    • Browser:閲覧のみ
    • Publisher:アップロード可
    • Content Manager:全権限

7. SSRSのログ確認方法とUnauthorizedAccessException対処

エラー発生時にはSSRS専用ログを確認する必要があります。この章ではログの場所と、典型的なアクセス拒否エラーの原因と解決方法を紹介します。

ログファイルの場所

C:\\\\Program Files\\\\Microsoft SQL Server\\\\MSRSXX.MSSQLSERVER\\\\Reporting Services\\\\LogFiles

  • 例: ReportServerService__YYYYMMDD.log

よくあるエラー

UnauthorizedAccessException

'D:\\\\...\\\\RSTempFiles\\\\~AspAccessCheck.tmp' へのアクセスが拒否されました

原因: サービスアカウントにフォルダ権限が不足

対処:

  1. services.msc でサービスアカウントを確認
  2. RSTempFiles変更(Modify)権限 を付与
  3. 一時ファイルを削除 → サービス再起動

➡ エラー調査は「発生時刻控え → ログ検索 → 設定修正」の流れが鉄則です。

8. まとめ:導入から運用・エラー対応までの流れ

最後に記事全体を振り返ります。この章では導入から運用・エラー対応までの流れを整理し、学習と実運用のポイントをまとめます。

  • インストール:SSRSはSQL Serverと独立導入
  • 構成:WebサービスURL・ReportServer DB・Webポータルを設定
  • 利用:/Reportsは管理用、/ReportServerはシステム連携用
  • 検証:SampleDBで動作確認
  • レポート作成:Report Builderで直感的に設計
  • 運用:Webポータルでデプロイ+権限管理
  • エラー対応:ログ確認が第一歩

学習目的ではローカル構築、本番利用時はSSLやAD認証を含めた運用設計を行うのがおすすめです。

システム開発
スポンサーリンク
tobotoboをフォローする

コメント

タイトルとURLをコピーしました