【データモデル】テーブルを書き込み可能にしてみる


Sharperlightの使用において、「お客様のデータソースには一切変更を加えない」ということが基本です。
しかしながらお客様からデータソースへの書き込みをご要望されるケースが多々あります。
そのご要望にお応えするため、書き込み機能も備わっています。しかし初期設定ではその機能はオフになっています。
書き込み機能にはセキュリティの観点から様々なレベルでの設定が存在します。
今回の記事では、最下層の設定であるテーブルに対する書き込みオプションの許可設定をみていきます。

書き込み許可の設定

対象となるデータモデルにおいて、テーブルが書き込み許可を持つ必要があります。
Sharperlightアプリケーションメニューからスタジオを選択します。

スタジオが起動したら、対象となるデータモデルを開きます。

データモデルが読み込まれたら、➀テーブルタブに移動、➁テーブル階層表示から書き込み許可を与えたいテーブルを選択します。
中央の領域に選択したテーブルの詳細が表示されるので、➂テーブル名を選択するとテーブルの属性一覧が右側の領域に表示されます。
Allow Table Writeback(テーブルの書き込み許可)属性をTRUE(真)に設定します。

テーブルのアイコンがオレンジに変化することを確認します。書き込みが許可されたテーブルを意味します。

これで今回の設定は終了です。データモデルの変更を保存して、スタジオを閉めます。
運転中のSharperlightサービスやその他の開いているSharperlightアプリケーションを全て閉じます。
Sharperlightサービスを開始したり、Sharperlightアプリケーションを再度開くことでデータモデルへの変更が反映されます。

書き込み許可を与えられたテーブルの確認

Sharperlightサービスが再起動された後、Sharperlightのインデックスページを開きます。
URLは、http://{YourServerName}/mdService1Rest/Indexです。
ページ左側のメニューから書き戻しを選択します。
プロンプトの製品コードで先ほど変更したデータモデルを選択します。[送信]ボタンを押すと書き込み許可を与えたテーブルの一覧が表示されます。今回は一つのみです。

このテーブルに関してはSharperlightの書き込み機能を利用して、データを挿入したり更新したりすることが可能になります。

Sharperlight