再びエンティティリストの回。
エンティティフォームを作って、エンティティフォームの設定をし、エンティティフォームメタデータで入力内容を設定したところで今度はエンティティリストからエンティティフォームを呼び出してみます。
エンティティフォームからエンティティフォームを呼び出す方法
エンティティリストからエンティティフォームを呼び出す方法は2通りあります。
1つは画面遷移によりWebページごと遷移させてしまう方法、もう1つはエンティティフォーム部分だけを呼び出す方法になります。
前者はWebページからWebページへの画面遷移となります。
後者は呼び出し元のWebページは維持したまま、エンティティフォームがサブウィンドウとして開きます。
エンティティリストの設定
エンティティリストからエンティティフォームを呼ぶための設定をします。
まずは、ポータル管理からエンティティリストを開きます。
エンティティリストの[オプション]タブからグリッド構成セクションの[作成]をクリック。
[作成]は複数個作れるので、ここでは比較のため画面遷移パターンとサブウィンドウ表示パターンの両方を作ってみます。
エンティティリストはこのように入力します。
赤枠が画面遷移パターン。
「対象の種類」に「Webページ」を選択し、エンティティフォームが埋め込まれたWebページを指定します。
(ボタンの名前は「画面遷移」としておきます)
青枠が画面遷移パターン。
「対象の種類」に「エンティティフォーム」を選択し、エンティティフォームをダイレクトに指定します。
(ボタンの名前は「サブウィンドウ」としておきます)
設定反映後の画面はこのように表示されます。
「画面遷移」ボタンを押せば、Webページが移動します。
「サブウィンドウ」ボタンを押せば、Webページが移動します。
どちらを使ったほうがよいのか?
このように画面遷移させる方法とサブウィンドウで表示させる方法があることが分かりました。
果たしてどちらを使うべきなのでしょうか?
どちらのパターンでも設定できるということは、どちらのパターンにもデリメリがあるわけです。
要は要件に応じて使い分けよと言う事です。
画面遷移パターンのデリメリ
青字がメリット、赤字がデメリットです。
- 作成処理などの完了画面が出せる
- 作成処理終了後に一覧表示する時に再度画面遷移が必要になる
- 作成権限とWebページの読み取り権限の両方が必要
3点目については権限の設定の仕方について整理する必要があります。
エンティティリストの「作成」ボタンを表示するのは、あくまでエンティティのアクセス許可で「作成」権限が付与されたポータルユーザになります。
エンティティのアクセス制御で「作成」権限が付与されていないと、
このように「作成」に関するボタンが表示されません。
その先のWebページが開けるか否かは、そのWebページについてWebページのアクセス制御ルールで権限が付与されているユーザになります。
Webページのアクセス制御ルールで権限が割り当てられていないと、
ボタンを押した時に…
「アクセスが拒否されました」画面が出てしまいます。
つまり、この2つの権限が噛み合っていないと、「作成」のボタンとしては機能しないため、2重の権限設定が必要になることを注意しておきましょう。
(今回は作成についての例なので、作成前提で話を進めましたが、詳細や編集も同じような考え方なので適宜読み替えてください。)
サブウィンドウパターンのデリメリ
青字がメリット、赤字がデメリットです。
ほぼ画面遷移パターンの裏をとった感じですね。
- 処理終了後に呼び出し元のエンティティリストに内容が反映される
- 作成処理などの完了画面が出せない
- サブウィンドウ表示なので表示領域が狭い(複数列配置には向かない)
こちらは作成権限が付与されていればエンティティフォームを開くことが可能です。
権限がなければボタンも出ないので、アクセス拒否されるようなミスマッチは起こりません。
サブウィンドウ内で作成処理が行われている関係上、完了メッセージが表示されることはなく、処理が終了するとサブウィンドウが閉じられ完了画面が表示されません。
コメント