ゼロからの Aras Innovator 第8回 〜 やってみよう①:その1 データモデルの実装 〜

今回からは新シリーズです。
これまで数回に渡りご紹介してきたArasフレームワークの構成要素を実際に組み合わせて、簡単なシステムを構築してみたいと思います。
ご紹介してきた内容のイメージアップに繋がれば何よりです。

ゼロからの Aras Innovator 掲載予定

 


何を作るか

挑戦するお題は、ユーザが思い思いのネタを投稿して構成するタイプの 「簡易ナレッジベース」 です。
以下の機能を実現します。

  • 記事の投稿
  • 記事へのファイル添付やタグ付け
  • 記事の公開範囲の設定
  • 投稿された記事に対する後追い記事投稿
  • 後追い記事の元記事投稿者への通知
  • 投稿された記事への「いいね!」投票

簡易ナレッジベースイメージ

 


データモデル

まずはデータモデルを考えます。
ただ、データモデルは抽象概念を扱いますので、最初はかなり敷居が高いかもしれません。
慣れない内はぜひ、Aras Innovatorの画面をイメージしましょう。画面イメージがそのままデータモデルに相当しますので、具体的に考え易くなるはずです。

画面イメージで考えるデータモデル

 

これを、Aras Innovator上に実装するアイテムタイプやリレーションシップの形に置き換えると・・・

ERモデル

 

さらに、画面に配置する入力欄やグリッドに表示する項目をイメージしながら、必要となるプロパティを挙げていきます。

プロパティ付きERモデル

 

データモデルがある程度出来上がったら、いよいよAras Innovatorへ実装します。

※ 実際のプロジェクトにおいても、データモデルが「ある程度」出来上がった段階でさっさとプロトタイプを作ってしまうのがオススメです。具体化してみてはじめて気付く不整合も多いですし、ユーザからのフィードバックも何十倍も有意義なものになるはずです。データモデルのお絵描きをどれだけ工夫したところで、結局は「抽象概念」ですので。


アイテムタイプの実装

・・・とその前に、Aras Innovatorのセットアップをお忘れなく。
今回は、

  • Aras Innovator 9.4.0
  • 1台のWindows7 PC上にInnovatorサーバ、Vaultサーバ(及びVault領域)、DBサーバを詰め込んだ「オール・イン・ワン」構成
  • メール通知も使いたいので、SMTPサーバもセットアップ

でいきます。
この辺りの設定方法については、インストールガイド をご参照ください。

さて、いよいよ実装です。

  1. まずはログインID「admin」(= ユーザ「Innovator Admin」のアカウント)でログインします。
  2. TOCの「アドミニストレータ」フォルダを開いて「アイテムタイプ」を選択し、「新規作成」を実行。まずは中心となるアイテムタイプ「記事」を作成します。
  3. アイテムタイプ新規作成画面の上半分を「記事」の設定内容で埋めて保存 → システムプロパティが自動作成されて下半分に現れます。

    アイテムタイプ定義1

     

  4. 「プロパティ」タブ内に、「記事」のプロパティを追加し、再度保存。

    アイテムタイプ定義2

     

  5. 「ビュー」タブ内のフォームを選択し、右クリックからフォームをリビルド。この操作でプロパティの内容がフォームに自動反映されます。レイアウトをいじりたい場合はこの後フォームを編集しますが、今回はスキップします。

    アイテムタイプ定義3

     

  6. TOCに表示できるように、「TOCアクセス」タブも設定します。現時点ではとりあえずどのフォルダにも入れず、かつ誰でもアクセスできるようにしておきます。

    アイテムタイプ定義4

     

  7. 「新規登録権限」タブで新規登録権限を設定します。現時点ではとりあえず誰でも新規登録できるようにしておきます。

    アイテムタイプ定義5

     

  8. 「パーミッション」タブでデフォルトパーミッションを設定します。現時点ではあまり深く考えず、既定で用意されているパーミッションを割り当てておきます。

    アイテムタイプ定義6

     

    ※ ここまでの6~8の作業で、アイテムタイプ「記事」に対するアクセス権を設定していることになります。アクセス権には、メニュー表示権限(TOCアクセス)、新規登録権限、登録されたアイテムの参照・操作権限(パーミッション)の3段階があったことを思い出してください。

  9. アイテムタイプ「記事」を保存した後 アンロックし、画面を閉じます。
  10. 同様に、アイテムタイプ「タグ」も作成します。なお、「ファイル」と「ユーザ」はAras Innovatorに標準で備わっているアイテムタイプをそのまま使いますので、新規に作成する必要はありません。

    アイテムタイプ定義7

     


リレーションシップの実装

次にリレーションシップを設定します。前述したデータモデルを眺めると、設定が必要なリレーションシップは以下の4つだということが分かります(青色の六角形で表していたやつです)。

  • 付与タグ (記事→タグ)
  • 添付ファイル (記事→ファイル)
  • 後追い記事 (記事→記事)
  • いいね! (記事→ユーザ)

以下、それらを設定していきます。

  1. アイテムタイプ「記事」の画面を開いてロックした後、「リレーションシップタイプ」タブを選択。
  2. 「リレーションシップタイプ」タブ内の新規作成ボタンを押す。リレーション先のアイテムタイプを選択するダイアログが現れるので、「タグ」を選択してダイアログを閉じます。
  3. タブラベルに「付与タグ」を、リレーションシップ名称に「KM_Article Tag」を設定。

    リレーションシップ定義1

     

  4. アイテムタイプ「記事」を保存。
  5. 今作成した「リレーションシップタイプ」タブ内の行を選択し、右クリックからリレーションシップタイプを開きます。
  6. リレーションシップタイプ「付与タグ」の画面でロックをし、「リレーティッド必須」をチェック。特殊なリレーションシップを除いて、このオプションはチェックするものとお考えください。

    リレーションシップ定義2

     

  7. リレーションシップタイプ「付与タグ」を保存・アンロックし、画面を閉じます。
  8. アイテムタイプ「記事」を保存。
  9. 同様に、残りのリレーションシップについても作成します。

    リレーションシップ定義3

     

    なお、リレーションシップタイプ「添付ファイル」の新規リレーティッドオプションは、「作成(Create Related)」を選択します。一方「いいね!」は、「選択(Pick Related)」にしておきます。

  10. リレーションシップタイプの設定が完了したら、アイテムタイプ「記事」を保存・アンロックし、画面を閉じます。

動作確認

ここまででデータモデルは一通り実装完了です。
画面レイアウトや細かい機能の実装はまだですが、新規登録や検索などを実際に動かしてみることが可能ですので、簡単に動作確認してみましょう。データ間の繋がりがイメージ通りかなど、具体的に検証できるかと思います。

動作確認

 
※ 今回はここまでです。データモデルは機能の「背骨」に相当する部分と言えるかもしれません。次回はパーミッションやライフサイクルの設定など、今回作成した「背骨」に対し、機能の「骨格」を形作っていきたいと思います。是非ご期待ください。
それでは、また次回。

(アラスジャパン 宮内一也)

広告