Dynamicsポータルを作成して、ユーザ認証について理解したところで、いよいよポータルの構築に入っていきたいと思います。
ポータル構築の前に理解から
まずは、ポータルを構築するにあたり、簡単な構造理解から。
ポータルの1つ1つの画面はWebページというエンティティで管理されています。
ポータルはホーム画面をルートとした、ツリー構造とします。
Webページも同様にホーム画面のWebページがあり、そこから子画面をWebページエンティティのレコードを作成することによってページの親子関係を構築することはできます。
このWebページですが、実は2種類あります。
一つはInformationで、こちらにWebページの定義情報が記載されています。
定義情報というのは、具体的にはURLや親のWebページなど言語によらない情報のことを指します。
Webページのもう一つはContentです。
こちらは、Webページの内容、これ即ちHTMLの内容が記入されています。
なぜ、InformationとContentで分断されているかというと、多言語対応のためです。
日本語と英語のページを両方作りたい場合は、日本語用のHTMLと英語用のHTMLが必要です。
でも、それぞれページを分けてしまうと二重管理になってしまいますね。
Webページは多言語対応でも、同じURLでユーザに対応した言語が表示できるように設計されています。
Webページの定義情報はInformationに集約しますが、多言語対応が必要であればそれぞれでHTMLの記述が必要となるため、言語数分のContentが必要になります。
つまり、InformationとContentは1対Nの関係になります。
Webページについてはまだまだ細かいところはあるんですが、ひとまずはホームをルートとしてツリー構造と1つのInformationと複数のContentからなるという点を押さえておいてください。
簡単なWebページを作る
構造説明はこんなところで実際にWebページを作ってみましょう。
アプリのDynamics 365ポータルからWebページを選択。
Webページの新規レコードで以下のように入力します。
項目 | 値 |
---|---|
名前 | 任意の名前でOK |
Webサイト | デフォルトであれば「カスタムポータル」(ポータルを追加購入していなければ、1レコードしか作成されていないのでそれを指定) |
親ページ | 親となるWebページを指定、今回はホームの直下に作成するため「ホーム」を指定 |
部分URL | 任意英数字を指定 |
ページテンプレート | 適当でOK(実際はページの作りに合わせて適切なものを選択) |
公開状況 | 公開済み |
上記以外のものは未指定でOKです。
今作ったのが、InformationのWebページになります。
続いて、ContentのWebページを…と言いたいところですが、Informationを作ったところで自動的に作成されています。
ローカライズされたコンテンツに自動作成されたContentのWebページがあります。
画面は日本語しか対応していないので日本語のコンテンツしか作成されていない状態です。
コンテンツを編集してみましょう。
レコードを選択して、コピー(HTML)を入力します。
これで、簡単なWebページが完成です。
では、ポータルに表示されるかを確認しましょう。
ポータルサイトのURLにWebページで設定した部分URLを打ち込んでみます。
はい、出ました!
URLはホーム画面がポータルサイトのURLになります。
他のWebページはホームの子ページを辿っていって部分URLを繋ぎ合わせたものになります。
<ポータルのURL>/<web1の部分URL>/<web2の部分URL>
となります。
実際はURLを打ち込むなんてありえないので、次回は作ったWebページを画面遷移させる方法について取り上げたいと思います。
構造理解に苦しむ方は
ここまで、Webページについて構成から作り方までを説明していきましたが、構成としてはなかなか複雑です。
ここからさらに、エンティティリストやエンティティフォーム、Webロールなど新キャラが増えていきますので、よりややこしくなります。
そんな方はポータルの管理者メニューからWebページを作成するのがオススメです。
ポータルの管理者メニューは、ポータルに入った状態からWebページなどを直接編集できるため、プレビューで確認しながらページを組むことができます。
やり方は、ポータルの管理者でサインインすると…
このように、小窓が出現しますので、ここから編集なりを選択すればダイレクトにHTMLを編集することができる訳です。
管理者のユーザはポータルユーザ(Contact)から、Webロールに管理者を割り当てることで、ポータル管理者とすることができます。
厳密にはちょっと違いますが、詳しい話は別途Webロールの回で実施する予定です。
とりあえず管理者のWebロールを付与しておけば管理者ポータルになれる訳です。
コメント