このCookBookでは、intra-mart Accel Platform 2024 Springより追加された、データ起点で参照可能なマスタメンテナンステンプレートを使ったアプリを作成する手順について説明します。
データ起点とは
既存のデータから始める開発アプローチのことを指します。
従来のシステム開発では「要件定義→設計→開発→データ投入」という流れでしたが、データ起点では「既存データの分析→データ構造の把握→アプリケーション自動生成」という順序で進みます。
例えば、Excelなどの既存データファイルを入力として、そのデータ構造(列や型など)を自動的に解析し、その構造に合わせたアプリケーションを自動生成する、などが該当します。
このアプローチの利点は以下の通りです
メリット:
- 既存データがそのまま活用できる
- データ構造が実際のビジネスの実態に即している
- 開発時間の大幅な短縮
目標
本記事では、既存のExcelデータから参照機能付きのマスタメンテナンスアプリを作成する手順を解説します。
また、すでにマスタデータとトランザクションデータをテーブルとして環境に保持している場合は、以降の手順の1~3ステップはスキップいただけます。
本手順を実施する上でのサンプルデータは以下よりダウンロードしてください。
サンプルデータ:cookbook245019_samledata.zip 作成するアプリの完成版:cookbook245019_samleapp.zip
サンプルデータについて
商品マスタ.xlsx
この Excel ファイルは商品のデータを表していす。
各行が一つの商品を表し、以下の 6 つのカラム(列)で構成されています:
| 項目 | 説明 |
|---|---|
| 商品ID | 各商品を識別するための固有の番号やコード |
| 商品名 | 商品の名称や説明。顧客や社内で商品を識別するために使用されます |
| カテゴリー | 商品の分類や種類(例:家電、食品、衣類など) |
| 在庫数 | 現在保有している商品の数量 |
| 登録日 | 商品がシステムに登録された日付 |
| ステータス | 商品の現在の状態(例:販売中、在庫切れ、販売終了など) |

注文データ.xlsx
この Excel ファイルは注文のデータを表しています。
各行が一つの注文(または注文明細)を表し、以下の 8 つのカラム(列)で構成されています:
| 項目 | 説明 |
|---|---|
| 注文ID | 各注文を識別するための固有の番号やコード |
| 注文日 | 注文が行われた日付 |
| 顧客ID | 注文した顧客を識別するコード |
| 商品ID | 注文された商品を識別するコード |
| 数量 | 注文された商品の個数 |
| 合計金額 | その注文(または注文明細)の金額の合計 |
| 発送状態 | 注文の現在のステータス(例:処理中、発送済み、配達完了など) |
| 備考 | 注文に関する追加情報や特記事項 |

最終的には下図のようなアプリケーションが完成します。このアプリでは注文データを閲覧する際に、商品IDだけでなく商品名やカテゴリも同時に表示されるため、関連情報がすぐに把握でき、業務効率が大幅に向上します。
一覧画面

新規作成画面

編集画面

Excelデータから直接アプリケーションをビルドする方法
マスタデータのExcelをインポートしてマスタメンテナンスをビルド
手順の概要
- アプリケーションの作成を開始
- 商品マスタを使ったアプリの作成
- 注文データを使ったアプリの作成
- トランザクションデータのエンティティに参照設定の付与
- 参照付きアプリケーションの作成
1. アプリケーションの作成を開始
Accel Studioのアプリケーション管理画面を開きます。 任意のカテゴリを指定、または新しいカテゴリを作成後にそれを指定し、「アプリケーションを新規作成」をクリックします。

業務テンプレート一覧画面で、以下の順でクリックします。
- 「マスタメンテナンス」の「次へ」
- 「Excelファイルを利用」の「次へ」

2. 商品マスタを使ったアプリの作成
「商品マスタ.xlsx」ファイルをアップロードし、「アップロード」ボタンをクリックします。
「扱うデータの定義」内の「項目設定」に、アップロードしたファイルのカラム設定に応じた内容が表示されていることを確認します。

アプリケーションID、エンティティ名、エンティティID、テーブル名を「item_master」に変更し、インポートされて生成される各辞書項目の物理名を以下のように設定します。
| 表示名 | 物理名 |
|---|---|
| 連番 | item_unique_key |
| 商品ID | item_id |
| 商品名 | item_name |
| カテゴリー | item_category |
| 在庫数 | item_stock |
| 登録日 | item_registered_date |
| ステータス | item_status |

画面下部の「アプリケーション作成」ボタンをクリックし、ビルドを実行します。

ビルドが完了すると、上記のような画面が表示されます。
3. 注文データを使ったアプリの作成
「1. アプリケーションの作成を開始」と同じ手順で、アプリケーション作成画面を開きます。
「注文データ.xlsx」ファイルをアップロードし、「アップロード」ボタンをクリックします。
「扱うデータの定義」内の「項目設定」に、アップロードしたファイルのカラム設定に応じた内容が表示されていることを確認します。

アプリケーション名を「注文データ」に変更します。
アプリケーションID、エンティティ名、エンティティID、テーブル名を「order_data」に変更し、インポートされて生成される各辞書項目の物理名を以下のように設定します。
| 表示名 | 物理名 |
|---|---|
| 連番 | order_unique_key |
| 注文ID | order_id |
| 注文日 | order_date |
| 顧客ID | order_customer_id |
| 商品ID | order_item_id |
| 数量 | order_item_amount |
| 合計金額 | order_cost |
| 発送状態 | order_status |
| 備考 | order_comment |

画面下部の「アプリケーション作成」ボタンをクリックし、ビルドを実行します。
完了後、アプリケーション一覧から「参照付き注文管理アプリ」をクリックし、一覧画面のURLを取得してアクセスします。

このようなアプリができますが、この状態では注文ごとの商品IDが表示されていて、商品名が表示されていなくて分かりづらいです。

この状態を改善するために、次のステップでは参照機能を付与します。
4. トランザクションデータのエンティティに参照設定を付与
サイトマップからIM-Repository配下のエンティティ一覧画面を開きます。

その後、左部のエンティティ一覧から「order_data」を選択します。
エンティティ項目の「エンティティ項目編集」ボタンをクリックし、左部のツリーから商品マスタの商品名、カテゴリを追加し、「決定」ボタンをクリックします。


上部のデータ定義タブをクリックし、定義情報の「編集」ボタンをクリックします。

参照項目設定の「参照項目設定を追加」ボタンをクリックします。

以下の設定を行います:
- 参照先を選択:テーブルを参照する
- 参照先テーブル名:item_master
- 参照項目
- 「参照項目を追加」をクリック後
- 参照元エンティティ項目:商品名
- 参照先カラム名:item_name
- 再度「参照項目を追加」をクリック後
- 参照元エンティティ項目:カテゴリ
- 参照先カラム名:item_category
- 「参照項目を追加」をクリック後
- 結合条件:
- 参照元エンティティ項目:商品ID
- 参照先カラム名:item_id
- 抽出方法:一致

「設定」ボタンをクリックし、「次へ」ボタンを2回クリックして、最後に「反映」ボタンをクリックします。
「影響範囲確認」ボタンをクリックし、任意のコメントを入力後、「適用」ボタンをクリックします。


次の最終ステップでは、この修正を加えたエンティティを使ってアプリケーションを作成します。
5. 参照付きアプリケーションの作成
Accel Studioのアプリケーション管理画面を開きます。 任意のカテゴリを指定、または新しいカテゴリを作成後にそれを指定し、「アプリケーションを新規作成」をクリックします。
業務テンプレート一覧画面で、以下の順でクリックします。
- 「マスタメンテナンス」の「次へ」
- 「エンティティを選択」の「次へ」

アプリケーションIDに「ref_order_app」と入力します。
アプリケーション名に「参照付き注文管理アプリ」と入力します。

「エンティティを選択」ボタンをクリックし、「order_data」を選択してから「決定」ボタンをクリックします。

画面下部の「アプリケーション作成」ボタンをクリックし、ビルドを実行します。
完了後、アプリケーション一覧から「参照付き注文管理アプリ」をクリックし、一覧画面のURLを取得してアクセスします。

以下のようなアプリが完成します。
一覧画面

新規作成画面

編集画面

本記事では、Accel Studioを使って既存のExcelデータからマスタメンテナンスアプリを作成し、さらに参照機能を追加する手順を解説しました。
改めての説明になりますが、データ起点のアプローチには以下のメリットがあります。
メリット:
- 既存データがそのまま活用できる
- データ構造が実際のビジネスの実態に即している
- 開発時間の大幅な短縮
特に参照機能を追加することで、複数のデータ間の関係性を明確にし、より使いやすく情報量の多いアプリケーションを短時間で構築できます。
データ起点の開発手法とAccel Studioを組み合わせることで、ビジネスニーズに素早く対応するアプリケーション開発が実現できるでしょう。
ぜひ、手元にある既存のExcelデータを活用して、マスタメンテナンスアプリを作成してみてください。
わずか数ステップで、業務効率を大幅に向上させるアプリケーションが完成します!
