【MotionBoard】から手入力→Dr.Sumへ登録できるボード作る!!「データベース入力」最低限設定

# 目的
データを画面から手入力→登録できるボード作る
（MotionBoardのボード上からDr.Sumのテーブルを更新する）

BIツールなのに入力画面が作れてしまう、それがMotionBoard!!

# 前提
テーブル：Dr.Sum
※私の環境がオンプレMotionBoard for Dr.Sumなので。

# 完成イメージ
マスタメンテ画面ぽいもの
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278265/5b9fe514-2b45-38d6-8eab-31df1720048f.png)

# 必要なもの
・データを入れるテーブル
・MotionBoardボード

# 確認すること／決めること
・【確認】全MotionBoardボードユーザのうち、誰が入力作業をする？
・【確認】入力作業をするユーザの所属グループ
・【決める】グループに対して「更新OK」の権限を付けるので、
　　　　　　当該グループ所属ユーザはみんな更新可能になるがOKか？
　　　　　　入力ユーザを限定的にしたい場合、新グループ作成がよさそう

# 作業のおおまかな流れ
（1）データソース設定
　　　→データ入れるテーブルのデータソース作成
（2）システム設定 → 外部接続での設定
　　　→Dr.Sumのスキーマ／テーブルに対して更新権限をつける


# 手順
## （1）データソースでの設定
データソースエディタで、拡張機能 → データベース設定をクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278265/c3da65e7-ba46-3d1f-b7c2-c1a8e49b5c15.png)


・追加・更新・削除、全部できるようチェックいれる
・更新の際にキーとなる項目の「更新キー」にチェックいれる
　　※更新キー：更新テーブルで、その項目が決まれば該当データをひとつに絞り込めるキー。複数の項目がキーになる場合も。
　　　例）社員マスタ：社員番号がわかれば該当ひとりに絞り込める→更新キーは社員番号
　　　　　売上伝票：　伝票番号・連番でひとつに絞り込める事が多い

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278265/35e4a771-ae34-27fb-fb7f-dd192b04f9d9.png)



## （2）システム設定 → 外部接続での設定
更新するユーザの所属グループに対し、更新権限を与える

※これしないと更新時にエラーになります、オフィシャル情報ご参照ください

【注意】対象のDBにも権限を与えることを忘れない！以下URLの2の①にあたるとこ。

https://cs.wingarc.com/ja/kb/000021862?keyword=%E6%98%8E%E7%B4%B0%E8%A1%A8%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E5%85%A5%E5%8A%9B%E3%81%AB%E3%81%A6%E3%80%8C%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%E3%81%AB%E6%9B%B4%E6%96%B0%E6%A8%A9%E9%99%90%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%80%8D%E3%81%8C%E8%A1%A8%E7%A4%BA%E3%81%95%E3%82%8C%E3%82%8B


明細表をつくります
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278265/ce6ceb4f-1c9c-727b-776e-fdfc22342629.png)

最初、こんな感じになりますね（テーブルにデータがない場合）。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278265/3c775eb8-f159-5bb1-50b1-f49f83c7f5ff.png)

1件、データを入れてみます。まずこのアイコン（新規レコード作成）をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278265/9d536537-8ee0-7477-ca12-91e9808e2dd4.png)

一行出ましたね、適当に値を入れていきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278265/a02b6ae2-474c-9ee9-9a79-754022341dfd.png)

データ更新ボタンを押します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278265/1f332c9f-955c-b8ad-96df-f169b530df7f.png)

Dr.Sum側で確認。データ入ってます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278265/0cb10bf6-1be1-35ad-23ea-bc2e36913953.png)

## （3）明細型からマスタメンテ画面ぽく変更
切替ボタンを押すと、見た目が変わります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278265/9e624632-b838-01c5-6385-21116bfc39a2.png)

## （4）入力の負荷減＆データ精度のためコンボボックスで値指定
ここまで、全項目を手入力するボードを作ってきましたが、
項目によっては「マスタからひっぱってきた値をリストの中から選びたい」があると思います。
リスト内から選ぶ事によって入力負荷の軽減・誤データ生成を防ぎます。
項目単位でデータソースを指定し、コンボボックスを出せます。

リストに出したい項目のデータソースを作ってから、アイテムプロパティ→データベース入力で設定

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278265/4c81b7fb-175d-29ad-2123-c3cf74842973.png)

# 最後に
私自身、データベース入力のボードでやりたい工夫したいことが沢山あります。
「入力アイテム」「ボタン」との連動や、入力データチェックも簡単に出来て、条件分岐もさまざまに組めます。

また、
－－－－－－－－－
地区コード：01　
地区コード名：広島
－－－－－－－－－
↑このようなマスタデータがあったとき、
入力画面上、地区のコンボには'広島'を出し、登録時はコード'01'を入れたい。
こんなのもよくあるパターンかなと思っています。
なんか、MotionBoardなら工夫すれば出来そうなんだけどな～。どうやったら出来るか考え中。


以上