エンティティの定義
ここでは、エンティティの定義における3つの要素について確認します。
データ定義で設定する要素
データ定義では、アプリケーションで扱う情報を構造化するために、以下の要素を定義します。
- エンティティ:アプリケーションのデータ単位となる基本情報や、紐づくデータベースのテーブルを定義
- 辞書項目:エンティティを構成する各項目の属性(名前・型・制約など)を定義
- サブエンティティ:エンティティに階層的に紐づく補足情報や関連データを保持するための構造を定義
これらの設定は、アプリケーション内でのデータ処理や連携において重要な役割を果たします。
まずは、それぞれの概要を確認し、適切に設定していきましょう。
エンティティ
IM-Repositoryにおけるエンティティとは、アプリケーションで扱うデータ構造を定義したものです。エンティティは、複数の辞書項目(データ項目)を属性として持ち、主キーやその他の属性情報を含めて管理されます。
たとえば「顧客」というエンティティを定義する場合、「顧客コード」 「氏名」 「住所」など、顧客に関する辞書項目を抽出し、それらをエンティティに紐づけて構成します。
IM-Repositoryでは、こうして作成したエンティティ定義をもとに、対応するデータベースのテーブルを作成・管理しています。

エンティティの具体的な設定方法については、「intra-mart Developer Portal - 用途に応じたエンティティの設定とは?」を参照してください。
辞書項目
IM-Repositoryにおける辞書項目とは、アプリケーションで扱うデータ項目(カラム)を部品化したものです。「表示名」 「物理名」 「データ型」などの属性を定義し、エンティティで再利用できます。
辞書項目で設定するデータ型は、データベースにおけるカラムに相当します。カラムとは、テーブル内で特定の属性を表す縦の列のことで、各カラムには一貫したデータ型が設定されます。
IM-Repositoryでは、辞書項目に対応するテーブルのカラム(エンティティ項目)を作成し、データベースを一元的に管理しています。

辞書項目の具体的な設定方法については、「intra-mart Developer Portal - 辞書項目の設定を使い分けるコツ」を参照してください。
サブエンティティ
IM-Repositoryにおけるサブエンティティとは、メインとなるエンティティに紐づく、補助的なデータ構造を定義するためのものです。サブエンティティは、メインエンティティの詳細情報や関連情報を管理するために使用されます。
エンティティ同士の関連とは、データベースのリレーションシップに相当し、「1対1」 「1対多」などの多重度を設定することで、親子関係(メインエンティティとサブエンティティ)を表現できます。
たとえば、「顧客」エンティティに対して、「契約」 「担当者」 「対応履歴」などのサブエンティティを「1対多」で関連付けることにより、顧客ごとに契約や対応履歴といった複数の情報を持たせることが可能です。
また、これらの関係性は、この後に作成するビジネスロジックのタスクにも自動的に反映され、メインエンティティとサブエンティティのデータをまとめて扱うことができます。

サブエンティティを用いた関連項目の作成については、「intra-mart Developer Portal - 用途に応じたエンティティの設定とは」を参照してください。
次のステップへ:エンティティと辞書項目の設定
エンティティや辞書項目などの概念について理解できたら、実際にエンティティや辞書項目の設定に進みましょう。まず最初に「エンティティと辞書項目の設定」では、エンティティの基本情報や、エンティティに含まれる辞書項目の設定方法について説明しています。