初めに
やはり、ページを動かすとなると、DBとの連携が欲しいですね。
今回はDB接続ができることを目標に記事を書きたいと思います。
繋いでみる
Database connectionというのをMendix App Storeから
ダウンロードしてきます。
インストールしたら、次にpostgreSQLと接続設定をします。
データを取得してみる
- 画面の表示項目を作成
ダウンロードしたDatabase connectionに
Domain Modelがあります。そこにテーブルを作成します。
右のtoolBoxからEntityとAnnotationを持ってきましょう。
EntityはDBのエンティティ、Annotationは何のエンティティにするかのメモです。
中身はこのように作りました。
簡単なユーザ情報を持ってるとイメージしたテーブルです。
userId | ユーザID | String |
UserName | ユーザ名 | String |
UserPossitionCode | 所蔵コード | Integer |
こちら、pgAdminのuserInfoテーブルです。
先ほど、Mendixで設定したものは、こちらのテーブルに合わせて
設定をしてください。
- DBを通してデータを取ってくるマイクロフローを作成
前回作ったリストページ01を開くためのマイクロフローに
CreateObjectでNewUserInfoというオブジェクトを追加します。
SELECTからUserInfoエンティティを選択してください。
次に実際にデータを取得するマイクロフローを作成します。
処理としては以下の通りです。
1;ログを出力(任意)
2:空オブジェクトを作成(userInfoテーブル)
3:SQLを実施。
4:実行結果を作成した空オブジェクトに入れる
※空オブジェクトの作り方は前画像の
オブジェクトを作った時と同様です。
3~4のExecute queryでは、
SQL(当環境はpostgresで実施しています)に必要な環境と
SQL文を直接書いて必要なデータを取ってきます。
これら、手入力をしていますが、関数みたいな形で
入れる方が何度も利用する的な意味では便利です。
実際にデータを取得して表示してみたいと思います。
こちらが前回作った画面ページです。
以下のように作成したいと思います。
1:data Viewを使ってData sourceにuserInfoを呼び出します。
2:Edit Data Grid にUserInfoテーブルのカラムを設定します。
3:1,2を設定した画面が以下の画像の通りになります。
動作確認
では、実際にここまで作ってみて動作確認をしてみます!
まとめ
今回はpostgreSQLを使ってデータの取得をして
それを画面に表示する処理を作ってみました。
最初は時間がかかるかもしれませんが、
慣れれば意外と簡単にデータを取得することができることが分かりました。
使用環境
postgreSQL
Mendix Studio Pro