辞書項目の設定を使い分けるコツ
この記事では、IM-Repositoryの辞書項目について、用途別に使い分けるコツを紹介します。
辞書項目の設定では、用語やその属性情報(メタデータ)を定義します。これらのデータをアプリケーションでどのように利用するかによって、詳細な設定を追加します。IM-Repositoryでデータベースを作成する際は、まず辞書項目がベースとなりますので、正しく設定できるように必要な知識を身につけておきましょう。
辞書項目とは
辞書項目のデータ型はデータベースにおけるカラムに相当するものです。データベースにおけるカラムとは、テーブル内でデータの特定の属性を表す縦の列のことを指します。 各カラムは特定のデータ型を持ち、テーブル内の各レコード(横の行)に一貫したデータを格納します。IM-Repositoryの辞書項目を設定することで、テーブルのカラムを作成・管理できます。
辞書項目の設定では、データ型を適切に定義することが重要です。たとえば、数値データには数値型を、テキストデータには文字列型を指定します。データ型を正しく設定することで、エンティティを設定する際にデータベースのテーブルを作成・管理できるようになります。辞書項目とエンティティの関係についても押さえておきましょう。
辞書項目の設定一覧
辞書項目の設定に関する項目の一覧を確認できます。設定した辞書項目は、ツリー形式やリスト形式で表示できます。
用途に合わせた辞書項目の設定
辞書項目の設定は、アプリケーションでデータをどのように利用したいかによって異なります。たとえば、以下のような設定項目と用途が考えられます。
- 列挙型:辞書項目をあらかじめ特定の値のみに制限したい場合
- 制約:辞書項目にルールや条件を適用したい場合
- エイリアス:作成済みの辞書項目を別名で利用したい場合
ここでは、それぞれの設定方法について紹介していきます。
辞書項目を列挙型として利用する
辞書項目の値をあらかじめ特定の値のみに制限したい場合、列挙型を利用できます。列挙型とは、ラベル(表示名)とvalue(データベースに登録される値)を含むデータ型のことです。
たとえばプルダウンメニューのように、選択肢があるUIを作成する場合に列挙型を使用します。辞書項目に列挙型を紐づけることで、列挙型で定義した値が定数として定義されます。 その項目を利用すると、プルダウンメニューの選択肢としてそのまま利用できます。
列挙型の設定は、まず列挙情報を登録してから、次に辞書項目で列挙型を指定するという手順が必要となります。辞書項目で列挙型を指定すると、制約は列挙型に定義している値に上書きされます。
列挙型の作成
列挙型を作成する前に、登録先となるカテゴリについて検討します。既存カテゴリを選択するか、新規カテゴリを作成するかを決めておくと良いでしょう。
辞書項目に制約を設定する
辞書項目の値に以下のような制限を適用したい場合、制約を設定します。制約を用いることで、データの整合性・正確性・一貫性などが確保されます。
- 入力する値を制限したい場合(桁数・バイト数・数値・アルファベットなど)
- 特定のルールを強制したい場合(メールアドレス・URLなど)
- 特定の条件を適用したい場合(日付時刻・ID・ユーザコードなど)
たとえば電話番号の最大桁数を10に制限することで、10文字以上の入力は登録できないといった入力内容のチェック(バリデーション)を簡単に設定できます。
制約の設定では、標準で用意している設定項目以外 にも、正規表現を使って自由に定義することが可能です。
制約の種類と設定
辞書項目に対する制約の種類と設定項目について確認できます。制約は複数設定することが可能です。
辞書項目を使ってエイリアスを作成する
作成済みの辞書項目を利用して別の名前で使用したい場合、エイリアスを作成します。エイリアスとは、もとの辞書項目を参照しながら、別名を付与することを指します。
たとえば「ID」という辞書項目を使いたいが、特定のアプリケーションで使用する際に名称を変更したい場合、エイリアスとして別名を付与することで、元の辞書項目と同じデータ型や制約などを反映させることができます。
エイリアスを作成すると、参照先の辞書項目の設定画面に「エイリアス一覧」として表示されます。
エイリアスの作成
エイリアスIDは必ず一意でなければなりません。そのため、同じ辞書項目内でエイリアスが重複しないように注意してください。
まとめ
IM-Repository におけるアプリケーションのデータベース作成では、辞書項目の利用目的に応じて設定が異なります。一見難しそうに思える設定でも、IM-Repositoryを使用すれば、画面の項目に従って進めることができるため、初心者でも取り組みやすいという利点があります。効率的に開発を進めるためにも、IM-Repositoryの辞書項目について理解を深めておきましょう。
intra-martでは、IM-Repositoryや各ローコード開発ツールを使ったアプリケーションの開発に役立つコンテンツなどを豊富にご用意しています。intra-martの機能を最大限に発揮させるためにも、ぜひご活用ください。