slack

テクてく Lotus 技術者 Slack に参加しよう!

2009/12/24

XPages Tutorial Part 13: サイドバーに Location のリスティング


Listing The Locations In The Sidebar {Original Source}
新しいカスタムコントロールが完成されレイアウトに配置されましたので、バックエンドのドミノデータベースからデータを表示させたいと思います。
このロケーションのリストはアプリケーションのメインメニューとして OneUI のスタイルを適用しロケーションのリストを繰り返しコントロールを使用して実装したいと思います。

「sb_LocationsList」を再び開きます。記述したテキストを上書きで 3 つのパネルをそれぞれネストさせて配置します。そしてそれぞれに次のスタイルクラスを配置した順番に適用します: lotusMenu、lotusBottomCorner、lotusInnerのスタイルクラスを指定してください。
ソースタブで確認していただくとコードは下のようになります。

保存後、プリビューするとサイドバーに現れるメニューは下のようになります。

XPages の強力な機能のひとつ、繰り返しコントロールを使って実際のコンテンツを追加してみたいと思います。繰り返しコントロールは文字通りリピートコントロール内でいくつでも繰り返して処理を行うことができます。繰り返しコントロールの内部にひとつのコントロールを配置することもできますし、さらに複数のコントロールを設定することも可能です。
繰り返しコントロールを使うともう以前のドミノ Web 開発に戻ることができなくなります。ビューのデザイン、ロータススクリプト、そのデバッグなどなど数日かかっていたことがほんの数分で実現できるようになりました。

データベースに作成してあるビューのひとつから情報を取得し繰り返しに表示させたいので、XPage にどのデータから情報を取得するかを指定する必要があります。スクリーンの左側のアウトラインを見るとアウトラインの一つのエントリとしてカスタムコントロールがあることを確認してください。XPage への作業ではここが XPage となっているでしょう。基本的に同じことです。では「カスタムコントロール」をアウトラインで選択し XPage/コントロールのプロパティを見てください。



ここで Domino ビューの新しいデータソースを追加しましょう。
追加ボタンを押し Domino ビューを選択します。
そして使用するビューをプロパティボックスから選択します。

ここでは予め作成してある「lookup\location」ビューを選択します。そしてデータソース名として 「dominoView」を指定します。

次に右側のコントロールペインから繰り返しコントロールをドラッグアンドドロップで先ほど作成したパネルの中に配置します。さらに、この繰り返しコントロールの中に計算結果フィールドコントロールをドラッグアンドで配置します。

この計算結果フィールドコントロールを繰り返しとしてメニュースタイルの中でフィットさせる方法は次回に行います。

では繰り返しコントロールに戻り、プロパティを見てみましょう。
反復のオプションで、「単純データバインディング」を選択し、データバインディングのソースから先程指定したデータソース「dominoView」を指定します。
次にいくつかの追加のオプション設定を下のように設定してください。


コレクション名は文書を取得するための変数名を指定します。索引名は現在のエントリのカウントです。この繰り返しコントロールでは「rowData」と指定することにします。

では次に計算結果フィールドをクリックして値プロパティを見ていきましょう。
JavaScript を使用してデータをバインドします。JavaScript のラジオボタンを選択肢、エディターを立ち上げるボタンをクリックし、下のコードを書き込みます。
rowData.getColumnValue("Location")
「rowData」は繰り返しコントロールで指定したコレクション名で、getColumnValue はロータススクリプトでみる NotesViewEntry のメソッドのようなものです。

ではコーディングが完了したら保存後、ブラウザでページを再読み込みしてください。
そうするとデータベースのデータのようなものが表示されるのが確認できます。

データは表示されたもののまだ完成には至っていませんので次回に整えていきたいと思います。

0 件のコメント:

コメントを投稿