はじめに
MotionBoardはデータソースを準備すれば容易にユーザ側でさまざまな作表ができる反面、管理ができていないと、「このボードのソースは何?」「このデータソースの権限はどうなってる?」と毎回毎回ボードから紐解いていかないとわからない状況であり、非効率な場面が多くなりました。
そこで私が考えるうる最も手間の少ないボード・データソース・権限の最新の一覧を半自動で実現する手順をまとめます。
構築時の前提
- ボード×データソースはGUIからの取得
- 権限(グループ)×データソースはDrSUMサーバコマンドからの取得
- ボード×データソース×権限は上記2データからクエリを組み合わせることで実現
※MotionBoardのCLIは残念ながら筆者調べではデータソースまでとってくることができなかったので、この部分だけは手動orRPAの組み合わせが必要となります。ここでRPAが使える環境でしたら完全自動化も可能です。
構築手順
MotionBoard
※個人環境がないため、テキストレベルでの紹介となります。ご了承ください。
- ボードメニューの[管理]-[システム設定]-[情報]-[データソース]を選択
- 検索対象を「ボード」を指定
- 「フォルダを指定する」にチェック
- 検索対象となる最上位フォルダを「参照」から選択する
- 検索ボタンをクリックする。結果が帰ってくるまで少々時間がかかります。
- CSVダウンロードをクリックする
DrSUMサーバ
コマンドを活用することで、タスクスケジューラで自動実行可能です。
以下のWinodowsバッチを作成してください。必要最低限ですがおそらく動きます。なおDrSUMのバージョンは5.5です。
@echo off
setlocal
rem ここはDr.Sumのバージョンに合わせてください。
set DWODS55_LANG=0
set "HOST=localhost"
set "PORT=6001"
set "UID=実行可能なユーザID"
set "PWD=実行するパスワード"
set "MODE=export"
rem 以下はグループ指定だが、user指定も可能
set "FORMAT=group"
rem 以下は出力パス・ファイル名を指定
set "BKPATH=D:\grouplist"
set "BKNAME=groupresult.csv"
set "BKSEP=,"
set "ENCODE=utf8"
set "ERROR_MODE=-1"
set "UPDATE_MODE=-1"
if not exist "%BKPATH%" mkdir "%BKPATH%"
set "DWCMD=%DWODS55_TOOLS_PATH%\bin\DWCMD"
"%DWCMD%" SYS_IMPORT "%HOST%" "%PORT%" "%UID%" "%PWD%" "%MODE%" "%TYPE%" "%FORMAT%" "%BKPATH%" "%BKNAME%" "%BKSEP%" "%ENCODE%" "%ERROR_MODE%" "%UPDATE_MODE%"
echo exitcode=%errorlevel%
exit /b %errorlevel%
上記実行より以下の値を取得できます。権限グループはPermissionsが該当し「|」で区切られてます。後はOralce、PostgreSQL、MySQL何度もいいので使いやすいRDBMSまたはDrSUMのテーブルに反映し、うまく調理してください。
| Group ID |
| Comments |
| Environment Variable 1 |
| Environment Variable 2 |
| Environment Variable 3 |
| Environment Variable 4 |
| Environment Variable 5 |
| Environment Variable 6 |
| Environment Variable 7 |
| Environment Variable 8 |
| Environment Variable 9 |
| Environment Variable 10 |
| System Permissions |
| Spare Permissions 1 |
| Spare Permissions 2 |
| Spare Permissions 3 |
| Permissions |
まとめ
以上で、『【MotionBoard×DrSUM】煩雑になりがちなボード×データソース×権限グループを半自動で紐づける手順』でした。
完全自動化には少々工夫はいりますが、かなりいい線いっていると思いますので、悩まれている方はぜひ参考にしてみてください。

