5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

生成AI活用 MESCIUS ActiveReports.NET 18(試用版)のページレポートの項目一覧を取得する

Last updated at Posted at 2025-12-20

概要

普段の実務でActiveReportsを使用していますが、なかなか生成AIを活用できていないため、本記事で検証してみました。

注意事項・免責事項

本記事について

  • 本記事は個人の検証プロジェクトです
  • ActiveReports試用版を使用しています
  • 商用利用時は正式ライセンスが必要です
  • メシウス社の公式見解ではありません
  • あくまで個人的な試みであり、推奨される開発手法とは限りません
  • 生成AIによる出力結果は必ず手動で確認してください

メシウス社について

本記事で使用しているActiveReportsは、株式会社メシウス(MESCIUS inc.)が開発・販売する優れた.NET帳票コンポーネントです。

公式サイト: https://developer.mescius.jp/activereports

より詳しい情報や正式な開発ガイドは、公式ドキュメントをご参照ください。

背景と課題

ActiveReportsのコントロール確認において、以下の課題がありました。

  • Visual Studioのデザイナーで各コントロールを一つずつクリックして確認する必要がある
  • コントロールのプロパティチェックに時間がかかり、確認作業の負担が大きい

開発環境

名称 バージョン 説明
Windows 10 OS
Visual Studio Community 2022 ActiveReportsのプレビュー表示用
VS Code latest 生成AI(Claude, GitHub Copilot)の利用
.NET Framework 4.8 Windows Formsのフレームワーク

アーキテクチャ図

GitHub Copilot利用時のフロー

従来のActiveReportを使う方法

導入手順

ActiveReportsのサンプルを用意

メシウス社が公開しているサンプルプロジェクトを使用します。

image.png

GitHub Copilotの設定

プロジェクトのルートディレクトリに以下のファイルを配置します。

.github/copilot-instructions.md

GitHub Copilotのカスタム指示ファイルです。ここでカスタムコマンド /getReportConrolList を定義します。

主要な設定内容(クリックで展開)
## カスタムコマンド

### /getReportConrolList

ActiveReports の .rdlx ファイルからコントロールリストを抽出し、一覧表示するコマンドです。

#### 使用方法
/getReportConrolList <帳票ファイル名.rdlx>

#### 機能
1. rdlxファイル解析
   - 指定されたレポートファイルを読み込み
   - 主要コントロール要素を抽出(TextBox, Table, Image, Line等)
   - 各コントロールの属性情報を取得

2. 出力内容
   - コントロール名、タイプ、位置、サイズ
   - データバインディング(Value/式)
   - スタイル情報(色、フォント等)

3. 出力形式
   - Markdown表形式で整形
   - `<ファイル名>_controllist.md` として自動保存

.github/activereports-design-guide.md

rdlxファイルの解析方法とActiveReportsの設計ガイドラインを記述します。

主要な内容(クリックで展開)
## rdlx解析のポイント

### 主要タグ
- <dd:Name>: 帳票名
- <DataSetName>: データソース
- <Top>, <Left>: 位置
- <Width>, <Height>: サイズ
- <Value>: 値/式
- <Style>: スタイル定義(背景色、文字色、フォント等)

### データフィールド
パターン: Fields!【FieldName】.Value

### 計算式
- Sum(): 集計
- IIF(): 条件分岐
- RowNumber(): 行番号

.github/report-design-template.md

生成される設計書のテンプレートです。このテンプレートに基づいてAIがコントロール情報を自動入力します。

実際にレビューを実行

レビュー対象

サンプルレポートには、テキストボックスやテーブルなどのコントロールが含まれています。
一部のコントロールは、フォント、背景色、高さなどがカスタム命令で規定したルールと異なる場合があります。

GitHub Copilotでコントロールリストを生成

/getReportConrolList ActiveReport/Report/Invoice_bluegray.rdlx

結果

GitHub Copilotが以下のような情報を自動的に抽出してMarkdown形式で出力してくれました。

主な出力内容:

  • コントロール一覧(タイプ、位置、サイズ、データバインディング、スタイル情報)
  • テーブル構造の詳細(ヘッダー行、詳細行の情報)
  • 計算式の一覧
  • カラーパレット
  • データフィールド一覧
  • レポート設定(用紙サイズ、余白など)
生成されたコントロールリストの一部(クリックで展開)
## コントロール一覧

| No | コントロール名 | タイプ | Top | Left | Width | Height | データバインディング/値 | スタイル概要 |
|----|---------------|--------|-----|------|-------|--------|------------------------|------------|
| 1 | TextBox1 | Textbox | 0.383667cm | 0cm | 6.299212in | 2.3495cm | 請求書 | 背景色:#697683, 文字色:#efedea, フォント:IPAゴシック 36pt, 中央揃え |
| 2 | TextBox2 | Textbox | 3.939666cm | 0cm | 6.7381cm | 0.75cm | =Fields!CustomerName.Value+" 御中" | 文字色:#505050, フォント:IPAゴシック 14pt, 下線:#697683 |
...(省略)...

## カラーパレット

| 色コード | 用途 |
|---------|------|
| #697683 | ヘッダー背景色, 線色, 枠線色 |
| #efedea | ヘッダー文字色 |
| #505050 | 本文文字色, 枠線色 |
| #E6E2DD | テーブル交互行背景色 |

生成されたコントロールリストの確認

以下の画像は生成されたコントロールリストの一部です。

image.png

コントロールの詳細情報が表形式で整理されており、確認しやすくなっています。

image.png

効果

導入の容易性

VS CodeとGitHub Copilotの環境があれば、すぐに試すことができます。
カスタム指示ファイルをプロジェクトのルールに合わせて作成するだけで利用可能です。

導入工数

ほぼゼロ。既存の環境にカスタム指示ファイルを配置するのみです。

削減効果

プロパティチェックにかかる時間:1回あたり約15分の削減(個人の検証環境での測定結果)

まとめと所感

生成AIとの親和性

ページレポート(.rdlx)はXML形式で記述されているため、生成AIとの親和性が高いです。ActiveReportsの過去のバージョンでも、同様の手法で生成AIを活用できる可能性があります。

今回の取り組みについて

今回はGitHub Copilotのカスタム指示機能を活用しましたが、Claudeのスラッシュコマンドなど、他の生成AIツールにも応用できると考えています。

留意点

生成AIによるコントロールリストの自動生成は、初期確認や一覧化の作業を大幅に効率化できます。ただし、生成AIは開発を支援する補助ツールとして位置づけ、最終的な品質確認はActiveReportsデザイナーでの確認と併用することを推奨します。

重要: 本記事で紹介した手法は、あくまで個人の検証プロジェクトでの試みです。実際のプロジェクトに適用する際は、組織のコーディング規約や品質基準に従い、十分なテストと確認を行ってください。

今後の展開

今後は以下のような取り組みを検討しています。

  • 作成した帳票が共通設計ルールに準拠しているか自動レビューする仕組みの構築
  • GitHub Copilot Agentモードを活用した、より高度な自動編集機能の実装

参考

ActiveReports公式リソース

製品ページ: https://developer.mescius.jp/activereports

公式ドキュメント: https://docs.mescius.jp/help/activereports-18/#overview.html

サンプル集: https://github.com/MESCIUSJP/ActiveReports-Invoice-Reports-Sample

技術ブログ: https://devlog.mescius.jp/category/activereports/

GitHub Copilot - カスタム指示

github差分

5
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?