技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。
今回は、ローコード開発をテーマにしている第2ユニットです。
今回のテーマ:『BootStrapによるデータ移行の紹介』
BootStrapとは?
BootStrapとはOutSystemsのExcelファイルからOutSystemのEntityへ取り込みを行うことができる標準機能です。
本機能は難しい手順を踏むことなく実行できるため、お勧めできる機能になっています。
本記事では、ExcelファイルからOutSystemのEntityへデータ取り込みを行う手順をご紹介します。
データ移行準備①:移行先のEntity作成
移行先のEntityを移行したいデータ構成で作成します。
データ構成で気を付けるべき点としては下記となります。
・OutSystem上のIdentiferはサロゲートIDとして必ず作成しておくこと。
・取り込みたいデータタイプをAttributeに設定しておくこと。
※定数などの項目も併せてStaticEntityで作成
データ移行準備②:移行元データ(Excelファイル)の用意
移行したいデータが入力されたExcelファイルを用意します。
その際、以下の注意点に留意してください。
・ファイル名は、全角文字を入力すると取り込み時アンダーバー「_」に置換されるため、半角英数字を入力してください。
・シート名は、移行先のEntity名と一致させてください。
・入力データは、次の画像のように見出し+データの形式で設定し、見出しはデータ準備①で作成したEntityのNameと一致させてください。
・移行先Entityのデータタイプが数値やIdentiferの場合に取込を行う情報にブランクが含まれる場合、強制的にデータタイプが文字列型に変換されてしまう。
※数値型で取込みたい場合はブランクを0に置換してすべて数値に変換してください。
以上で準備は完了となります。
データ取込処理①:移行ロジックの生成
移行先Entity・データ移行元ファイルの準備が完了したら移行ロジックの生成を行います。
移行先Entityを右クリック→Advanced→Create Action to BootStrap Data form Excelの順に選択します。
そしてデータ移行準備②のExcelファイルを選択すると、下記の画面が表示されるので移行元の項目名と移行先のAttributesが一致していることを確認してProceedを選択します。
以上の手順によって移行に必要なオブジェクトが作成されます。
作成されるオブジェクト
〇Timer
・処理の実行タイミングの設定が行われます。
・初期設定ではPublish時に実行されるよう指定されており、月毎・週毎・日毎等選択できます。
〇Logic
・ExcelからEntityへ取り込むLogicが作成されます。
内容については以下の記述がされています。
①移行先のEntityが空かを判断する。
②Entityが空ならExcelの情報を読み込み全件登録を行う。
〇Structure
・Excelファイルの情報を格納するデータ型の入れ物です。
データ取込処理②:Publishを実行
最後にServiceStudioにてPublishを実行します。
Publish完了後データ取り込みが実行され今回準備したEntityへデータが登録されます。
余談・取り込み処理のアレンジ
以下に筆者が本機能を利用するにあたって手を加えた内容を簡単に記載します。
- Timerでの決まったタイミングでの実行ではなく画面に用意したボタンにLogicを設定して実行する。
→実装経緯:Publishを実行時以外に動作確認をするために画面上のボタンに割り振れば任意のタイミングで実行できるため実装した。 - LogicのEntityが空なら実行する判断を全件削除してから実行する処理に変更する。
→実装経緯:重複登録を避けるための判断だが移行結果を確認したかったため変更を加えた。
まとめ
BootStrapを利用してExcelファイルからOutSystemのEntityへデータの移行を行う手順を紹介いたしました。
データ移行だけでなくExcel出力を行っておけばバックアップとして取り込む場合やテスト時にデータを取り込む場合にも活用できるため有用な機能かと思います。
準備・実行ともに簡易ですので実際に作成してみてはいかがでしょうか?