マスタメンテナンステンプレートから作成したアプリケーションの主キーで採番定義を利用する手順

このCookBookでは、マスタメンテナンステンプレートから作成したアプリケーションで、intra-mart Accel Platform 2025 Springより追加された主キーを採番定義を利用する手順について説明します。

マスタメンテナンステンプレートとは

「マスタメンテナンス」テンプレートは、社内で利用される様々な製品や業務に関わる重要な基礎情報(マスタ情報)を一元的に管理するためのアプリケーションです。

このテンプレートを活用することで、マスタ情報の登録、編集、参照といった基本的な操作に加え、情報の品質向上、整合性確保、業務効率化を図ることができます。

このテンプレートは、マスタ情報を効果的に管理するために、以下のような機能を提供します。

  • 登録機能: 新しいマスタ情報をシステムに登録するための機能
  • 編集機能: 既存のマスタ情報を修正・更新するための機能
  • 参照機能: 登録されているマスタ情報を検索・閲覧するための機能
  • 検索機能: 目的の情報を迅速に見つけ出すための高度な検索機能

関連リンク

採番定義とは

採番定義は、登録される各種マスタ情報に一意の識別子(IDや番号)を付与するルールを定めるものです。

この採番定義を設定することで、マスタ情報の識別、管理、検索が容易になり、データの一貫性と正確性を保つことができます。

適切な採番定義は、マスタ情報を効果的に管理するために非常に重要です。その理由は以下の通りです。

  • 一意性の確保: 各マスタ情報に重複のない固有のコードを付与することで、正確な識別を可能にします。
  • 検索性の向上: 論理的な採番ルールに基づいたコードは、特定の情報を効率的に検索するのに役立ちます。
  • 分類・整理の容易化: コード体系に意味を持たせることで、マスタ情報を種類や属性ごとに分類・整理しやすくなります。
  • データ連携の円滑化: 他のシステムとの連携において、共通の識別子として機能し、データ交換をスムーズに行うことができます。
  • 誤登録の防止: 体系的な採番ルールは、人為的な誤登録を防ぐ効果があります。

自動採番機能の紹介

2025 Springよりマスタメンテナンステンプレート利用時に自動採番オプションを利用することが可能になりました。

この自動採番オプションを利用することで、アプリケーションやシステムにおいて、新しいデータ(レコード)が登録される際に、一意の識別子(IDや番号)を自動的に割り振ることができます。

手動でIDを入力する手間を省き、システム側で規則に従って自動的に採番することで、データの管理を効率化し、正確性を高めることを目的としています。

自動採番機能の一般的な例

自動採番機能は、様々な場面で利用されています。以下はその一例です。

  • 注文番号: ECサイトでの注文ごとに自動的に発行される番号
  • 会員ID: 会員制サービスで新規会員登録時に自動的に付与されるID
  • 製品コード: 製造業で製品ごとに自動的に割り振られるコード
  • 伝票番号: 会計システムで取引ごとに自動的に発行される番号
  • チケットID: イベントやサポートシステムで発行されるチケットの識別番号

自動採番オプションについて

この自動採番オプションでは、主キーとなるIDを生成する際に、「連番を使う方法」と「ランダムな文字列を使う方法」の2種類を提供しています。

これは、データの特性や利用目的に応じて、最適な採番方式を選択できるようにするためです。

それぞれのオプションは、以下のような異なるニーズに対応しています。

1. 連番を使うオプション

目的

IDの可読性や、データの作成順序を把握したい場合に適しています。シンプルな管理や運用を重視する場合にも有効です。

特徴
  • 編集・参照画面や一覧画面に表示される
  • 『00000001』から始まる連続した数字でIDが生成されます。
主な利用シーン
  • 社内管理システムにおける管理番号
  • 顧客向けの注文番号や会員ID
  • ログデータや履歴データ

2. ランダムな文字列を使うオプション

目的

IDを意識する必要のないアプリケーションの作成や、複数の独立したシステム間でIDの衝突を極力避けたい場合に有効です。

特徴
  • 登録・編集・参照画面および一覧画面に表示されない
  • intra-mart の Identifier API が使用して、重複する可能性が極めて低いランダムな英数字の組み合わせでIDが生成されます。
    • 詳細は以下のリンクを参照してください。

主な利用シーン
  • IDを意識する必要のないアプリケーション
  • 順序性が重要でないデータ
  • 複数の独立したシステム間でIDの衝突を極力避けたい場合

目標

本記事では、Accel Studioのテンプレートと自動採番機能を使ったアプリの作成する手順を解説します。

今回は「連番を使う」自動採番機能を使った商品管理システムと、「ランダムな文字列を使う」自動採番機能を使った顧客管理システムの二種類を作成します。

商品管理システム

このシステムは、会社で取り扱う商品の情報を登録・管理するためのアプリケーションです。

商品名、商品コード、在庫数、価格などの情報を一元的に管理し、在庫状況の把握や販売管理に活用することを目的としています。

主な機能:
- 商品登録: 新しい商品情報を登録する機能
- 商品一覧: 登録されている商品を一覧表示する機能
- 商品情報詳細: 特定の商品の詳細情報を確認・編集する機能

顧客管理システム

このシステムは、顧客の基本的な情報を登録・管理するためのアプリケーションです。

顧客名、連絡先、メールアドレスなどの情報を一元的に管理し、顧客対応やマーケティング活動に活用することを目的としています。

主な機能:
- 顧客登録: 新しい顧客情報を登録する機能
- 顧客情報一覧: 登録されている顧客情報を一覧表示する機能
- 顧客情報詳細: 特定の顧客の詳細情報を確認・編集する機能

連番で自動採番を使った商品管理システムをビルドする方法

1. アプリケーションの作成を開始

連番で自動採番機能を活用した商品管理システムを作成していきます。

こちらは顧客管理システムとは異なり、連番で生成される商品IDを画面上で確認できるようにします。

まずはAccel Studioのアプリケーション管理画面を開きます。

任意のカテゴリを指定し、「アプリケーションを新規作成」をクリックして開始します。

業務テンプレート一覧画面で、以下の順でクリックします。

  1. 「マスタメンテナンス」の「次へ」
  2. 「新しくエンティティを作成(初めての方はこちら) 」の「次へ」

2. アプリケーションのビルド

アプリケーション情報を以下のように入力します。

  • アプリケーションID:sell_item_management
  • アプリケーション名:商品管理システム

次に、扱うデータの定義を入力します。

商品管理に必要な項目を設定します。

  • エンティティ名:sell_item_management
  • エンティティに紐づくテーブル名:sell_item_management
カラム名 物理名 データ型 必須 検索条件
商品ID sell_item_management_primary_key - - -
商品名 sell_item_management_name 文字列
ジャンル sell_item_management_genre 文字列
在庫数 sell_item_management_stock 整数
価格 sell_item_management_price 整数
登録日 sell_item_management_applied_date 日付

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

ビルド完了後、アプリケーション一覧から「商品管理システム」をクリックし、一覧画面のURLを取得してアクセスします。

作成された商品管理システムが表示されます。

顧客管理システムと同様に、実際にデータを登録して動作を確認してみましょう。

右上の新規作成ボタンを押します。

表示される登録画面で、商品の情報(商品名、ジャンル、在庫数、価格、登録日)を入力し、登録ボタンを押します。

登録後の画面を確認すると、顧客管理システムとは異なり、商品IDが画面上に表示されています

これが「連番を使う」自動採番オプションの特徴的な挙動です。

さらにもう一件、異なる商品データを追加してみます。

2件目のデータを登録後、一覧画面を確認すると、商品IDが「00000001」と「00000002」と順番に増加していることがわかります。

このように、連番で自動採番機能を利用した場合は、「00000001」から始まる連続した番号が自動的に採番され、画面上でもその値が確認できるという特徴があります。

これは商品コードなど、業務上IDを直接参照する必要がある場合に適した設計です。

3. 連番設定の変更

中には、この二つの設定では要求を満たさないことがあると思います。

そういった場合には採番設定の変更を行いましょう。

再度、商品管理システムのアプリケーション管理画面を開きます。

その中で「商品管理システム主キー登録値採番」というのをクリックします。

そうすると連番設定を変更するための画面が開きます。

この画面の中の「採番形式設定 」という箇所で、採番ルールを変更することができます。

今回は、以下の採番形式に変更後、更新ボタンをクリックします。
- 文字列:item
- 区切り文字:-
- 日付形式:YYYYMMDD
- 区切り文字:-
- 連番:
- 表示桁数:4
- 増分値:1

一覧画面で改めて新しいデータを登録すると以下のように新しい採番形式に沿ってデータが登録されます。

しかし、これまで登録したデータについては採番されたIDは変わらないので注意する必要があります。

ランダムな文字列で自動採番を使った顧客管理システムをビルドする方法

1. アプリケーションの作成を開始

さっそく、ランダムな文字列で自動採番機能を活用した顧客管理システムを作りましょう。

まずはAccel Studioのアプリケーション管理画面を開きます。

任意のカテゴリを指定、または新しいカテゴリを作成後にそれを指定し、「アプリケーションを新規作成」をクリックします。

業務テンプレート一覧画面で、以下の順でクリックします。

  1. 「マスタメンテナンス」の「次へ」
  2. 「新しくエンティティを作成(初めての方はこちら) 」の「次へ」

2. アプリケーションのビルド

以下の画像の通り「アプリケーション情報」を入力します。

  • アプリケーションID:customer_management
  • アプリケーション名:顧客管理システム

以下の画像の通り「扱うデータの定義」を入力します

  • エンティティ名:customer_management
  • エンティティに紐づくテーブル名:customer_management
カラム名 物理名 データ型 必須 検索条件
顧客ID customer_management_primary_key - - -
customer_management_last_name 文字列
customer_management_first_name 文字列
メールアドレス customer_management_email 文字列
登録日 customer_management_applied_date 日付

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

完了後、アプリケーション一覧から「顧客管理システム」をクリックし、一覧画面のURLを取得してアクセスします。

以下のようなアプリケーションが作成できていることが確認できます。

実際にデータを登録してみましょう。

右上の新規作成ボタンを押します。

その後、このような登録画面ができるので任意の情報を入力して登録ボタンを押します。

そうするとさきほどとは違い、データが表示されます。

しかし、よく見ると採番されているはずの主キーが表示されていません。

「ランダムな文字列」を使った自動採番の場合、生成されるアプリのユーザーインターフェース上では主キーが表示されない仕様になっています。

これは、主キーがシステム内部で利用されるもので、ユーザーが日常的に意識する必要がない場合に適した設計です。

データ上は存在するので今度はそちらの確認をしてみましょう。

3. データの確認

サイトマップから「テーブル一覧」をクリックし、テーブル一覧画面で「customer_management」と検索をし、customer_managementテーブルを開いてみます。

そうすると以下のような画面が表示され、青柳というユーザーに主キーが自動で付与されていることがわかります。

上記の手順により、「ランダムな文字列を使う」自動採番機能が、ユーザーインターフェース上では意識させない形で、しっかりとデータの一意性を維持しながらデータ登録ができました。

まとめ:自動採番機能の使い分け

本記事では、Accel Studioのマスタメンテナンステンプレートを使用して2種類の自動採番機能を実装したアプリケーションの作成方法を紹介しました。

改めてそれぞれの自動採番機能の特徴と使い分けを紹介します。

連番を使った自動採番

  • 基本の特徴

    • 画面上に主キーが表示される
    • 「00000001」から始まる連番が自動生成される
    • データの作成順序が一目でわかる
  • 適したユースケース

    • 商品管理システムのように、IDを直接参照する必要があるケース
    • 受付番号や発注番号など、順序性が重要な情報
    • 業務上、コードの体系に意味を持たせたいケース

ランダムな文字列を使った自動採番

  • 特徴

    • 画面上に主キーが表示されない
    • データの一意性を高い確率で保証
  • 適したユースケース

    • 顧客管理システムのように、ユーザーがIDを日常的に参照する必要がないケース
    • 複数システム間でのデータ連携時にID衝突を避けたいケース

適切な採番方式を選択することで、データの整合性を維持しつつ、業務効率と使いやすさを向上させることができます。

以上が自動採番機能を利用したアプリケーションの作成でした。
intra-mart Accel Platform 2025 Spring以降のマスタメンテナンステンプレートでは、これらの機能をぜひ活用してください。