notes 技術者のためのはじめての xpages 講座 (xpagesday 2015)

46
Notes 技技技技技技技 技技技技技 XPages 技技 2015 技 11 技 17 技 ( 技 ) 技技技技技技技技技技 技技 技技

Upload: takeshi-yoshida

Post on 26-Jan-2017

2.647 views

Category:

Software


24 download

TRANSCRIPT

Notes 技術者のためのはじめての XPages 講座2015 年 11 月 17 日 ( 火 )

株式会社ソルクシーズ吉田 武司

特記事項• 本資料の掲載内容は、できる限り正確を期するよう に努めてはおりますが、いかなる明示または暗黙の 保証も責任も負いかねます。 • 本資料の情報は、使用先の責任において使用され るべきものであることを、あらかじめご了承ください。 • 掲載情報は不定期に変更されることもあります。他 のメディア等に無断で転載する事はご遠慮下さい。 • 当資料をコピー等で複製することは、執筆者の承諾 なしではできません。• IBM®、Lotus®、WebSphere® は、 International Business Machines Corporation の米国およびその他の国における商標です。• Google および Google ロゴ、Android および Android ロゴ、Gmail、YouTube および YouTube ロゴ、Picasa、

Google Play とそのロゴ、Chrome、Chrome OS、Chromebook、Chromebooks for Work、Chromebox for meetings、Chrome Management Console は、Google Inc の商標または登録商標です。

• Microsoft, Encarta, MSN, および Windows は、米国 Microsoft Corporation の、米国およびその他の国における登録商標または商標です。• Salesforce 、Chatter、Sales Cloud、Service Cloud、Marketing Cloud 、Salesforce

Work.com、AppExchange、Salesforce Platform、および関連する全てのロゴは、salesforce.com,inc. の商標です。• Oracleと JavaはOracle Corporation およびその関連企業の登録商標です。• Twilio は Twilio, Inc. の登録商標あるいは商標です。• Cloud Shared Office、CSO は株式会社ソルクシーズの登録商標です。• 当資料に掲載された製品名または会社名は それぞれの各社の商標または登録商標です。• 一部イラストは、「ピクト缶」様を利用させて頂きました。

ピクト缶ではシンプルなベクターイラストを無料で配布しています。(http://www.pictcan.com/)

自己紹介株式会社ソルクシーズ 吉田武司Notes/Domino 一筋 20 年今年、 Salesforce 認定デベロッパーを取得趣味は PC の自作、プラモデルの製作最近は、 Bluemix が気になっている資料は後ほど公開します従来の Notes/Domino アプリケーション開発は知っているけれど、 XPages はまだ使ったことがない方に XPages に興味を持って頂けるセッションになればと思います。

アジェンダステップ1:物は試し。掲示板アプリを素早く作ってみよう!ステップ2:機能追加する際のポイントステップ3: XPages と IBM Bluemix を組み合わせた例

始める前に・・・• デザインについて

• 本来ならば CSS で行った方が変更やレスポンシブル化にはよいのですが、最初からすべてを覚える(気を付ける)のは大変なので今回はテーブルレイアウトを使っています。慣れてきたら、 CSS でデザインしてみてください。• フォームでの計算について

• 文書オープンや保存時のフィールドの計算は、• 従来のフォームのフィールドでの計算( ComputeWithForm ? )• XPagesの 2 パターンがあります。こちらも最初は極力簡単にするために前者で説明しています。慣れてきたら、 XPages 側で計算した方がデバックもし易く作りやすいです。

環境• IBM Notes/Domino 9.0.1• スタンダード版クライアントのローカルで作成、閲覧

• デモで使用する掲示板 DB の構成• フォーム :掲示板• ビュー :カテゴリ別、作成者別、作成日順

設計要素の構成(今までのノーツでは)フレームセット

ページアウトライン

フォーム

ビュービュービュー

ビューの切り替えフォームの表示

カスタムコントロール(フレームセット)カスタムコントロール(ページ、アウトライン)

カスタムコントロール(ビュー)

XPage(作成者別ビュー用)

設計要素の構成( 今回の XPages では)XPage(フォーム)

XPage(作成日順ビュー用)カスタムコントロール(フレームセット)

カスタムコントロール(ページ、アウトライン)

カスタムコントロール(ビュー)

XPage(カテゴリ別ビュー用)カスタムコントロール(フレームセット)

カスタムコントロール(ページ、アウトライン)

カスタムコントロール(ビュー)

XPage (ビュー用) の切り替え

XPage (フォーム用)の表示

フォーム画面• 各コントロールを配置して画面の作成• フォームのフィールドに紐付ける

ビュー画面• 部品の作成(カスタムコントロール)• メニュー• ビュー• フレームセット

• XPage(ビュー用 × 3)

XPage

 フレームセットメニュー  ビュー

ビューメニュー

  フレームセットメニュー 編集可能領域

別のカスタムコントロールを配置可能

イメージとしてはサブフォーム?

動作確認•ノーツクライアントで動作を確認

デモ

エラーの表示• アプリケーション構成 - X sp プロパティ• エラー処理 - Xpage 実行時エラーページを表示

• 「標準サーバーエラーページ」を指定しておくとデバックし易い

デバックの詳しい情報は・・・• 1 日目 15:00 〜• 誰も教えてくれなかった XPages のデバッグ方法。

• 加藤満

ボタン(編集、保存、削除)• シンプル

ボタン(新規作成)

コントロールの表示 / 非表示•可視に条件を記述

注意点従来の非表示式とは逆でTrue の時表示される

フォームを開くときの Xpages の指定• 2 パターン

• フォームのプロパティ• ビューパネルの設定

• ビューパネルの設定の方がよいけれど、複数のフォームが含まれる場合は、フォームのプロパティがよい場合もあり

添付ファイル• コアコントロール

• ファイルのアップロード• ファイルのダウンロード

• データ – データバインディング でバインド先のフィールを指定•注意:

• ノーツクライアントのようにリッチテキストフィールドの好きな場所に添付ファイルを貼り付けることはできません。• 本文とは別に添付ファイル用の別フィールドを用意してください。

添付ファイル• 連続で複数の添付ファイルをアップロードできるようにするために、1ファイルを選択する毎に画面を更新します。

DB を開いた時に表示する Xpage の指定• データベースプロパティで指定

入力チェック• コントロール – 検証• 必須フィールド

サーバーでデータベースを稼働させている場合は、サーバーサイドで入力チェックをすることもできます。

名前の Common Name 表示例

漢字名の表示例• お馴染みの @DBLookup, @Name を使って、ドミノディレクトリから取得

注意:サーバー上に配置されている想定です。

保存時にまとめて計算したい場合• データソースに対応した querySaveDocument イベントでシンプルアクションまたは

JavaScript が記述できます

ビューの展開/省略

省略の場合

展開の場合

未読マークの表示• viewPanel - 表示• 未読マークの表示

未読マークのスタイルの変更(1)• リソース• スタイルシート

• XPage またはカスタムコントロールへのリソース登録

未読マークのスタイルの変更(2)• ViewPanel - スタイル - unreadMarkClass

アイコンの表示• リソース – イメージ に登録

•ビューの列のプロパティ – 表示 – アイコン• 列のイメージで指定

検索機能(その一例)• ビューの結果の表示で検索にスコープ変数を設定します。

• 編集ボックスをスコープ変数と結びつけます

注意:全文索引を作成するのを忘れないようにしてください

他にも URL パラメータで検索キーワードを受け渡しする方法もあります

サイトデザインについて•拡張ライブラリのアプリケーションレイアウト( OneUI )を使う• Bootstrap などデザインテンプレートを使う• ノーツコンソーシアムホームページも Xpages +

Bootstrap で作られています。

拡張ライブラリのアプリケーションレイアウトを使用したデザイン例

※ 画像は 8.5.3 で開発したものです。

Bootstrap を使ったデザイン例 レスポンシブルデザインへも対応し易い

Bootstrap などでデザインを行う場合の事前準備•空のテーマを作成• リソース – テーマ

• アプリケーションのテーマとして設定• アプリケーション構成 – Xsp プロパティ

• テーマのデフォルト – アプリケーションのテーマ注意点リッチテキストコントロールなどのデザインに問題がでる場合があります。その時は個別に

CSS を調整する必要があります

Bootstrap & Xpages の詳しい情報は・・・• 2 日目 10:30 〜• Bootstrap と @ 式で作る簡単 &Cool な XPages アプリ

• 「 Notes アプリは簡単に作れたのに XPages アプリは何でこんなに面倒なんだ!?」と思っているあなた。「 @ 式が使えないなんて Notes じゃないやい!!」と思っているあなた。Bootstrap と @ 式で簡単に Cool な XPages アプリが作れます。Bootstrap を使えばレスポンシブなマルチデバイス対応アプリも作れます。今、必要なのは、開発が楽しいって想いと、あなたの創意工夫です。

• 林哲司

作ったのはいいが、動かすサーバーがない・・・• 今なら IBM Bluemix の Xpages on Bluemix で動かせます。• 使い方は、海老原さんのブログが参考になります。

• Domino/XPages on Bluemix にデプロイしてみた (1)• http://

take-the-xpages.blogspot.jp/2015/07/xpagesdomino-on-blumix1.html

• 最新の Domino 環境が使え、公開できるのがいいですね!正式サービスが楽しみです。

XPages on Bluemix の詳しい情報は・・・• 2 日目 13:30 〜• 実践! XPages on Bluemix

• Bluemix 上で XPages を動かしてみましょう! DB の作成から、 Bluemix 上へのデプロイをセミナー内で実際に行います。その際、 Bluemix 独自のオブジェクトや設定などについても解説したいと思います。• 海老原 賢次

Notes/Domino 以外のサービスとの連携については・・・• 1 日目 13:30 〜• REST の総復習

• REST の使い方をおさらいしましょう!これで、あなたも REST マスターになれる!?• 御代政彦

XPage の今後の動向については・・・• 2 日目 15:05 〜(オフ会第 2 部)• 【オフ会第 2 部】今年も!? どこよりも早い

XPages 最新情報• 来年の前半にリリースが予定されている IBM

Notes/Domino 9.0.2 ですが、その中には、もちろん XPages に関する新機能も含まれています。新機能の中から XPages を中心にアプリケーション開発環境に関する部分を切り出して、できる限り多くのデモを交えながら紹介をします。

• 佐藤 淳

お知らせノーツパートナーソリューションセミナーH1-3 15:05 〜XPagesDay オフ会【第 1 部】XPages on Bluemix で IoT を実感!XPages でドローンを制御、モニタリング

緊急告知Youtube で配信予定

https://youtu.be/GTFO35fsdZA

XPagesDay ホームページのセッションページにもリンクがあります

参考資料(1)• 一週間で学ぶ XPages 開発入門 ( 初級編 )

• http://www.ibm.com/developerworks/jp/lotus/education/xpages-1week/

• XPages 開発「⻁の巻」• https://

www.ibm.com/developerworks/community/files/basic/anonymous/api/library/f587597b-ebfb-40e0-9f96-4c6f61ff738d/document/869d5f8c-fefc-4ca1-b604-a8749ba5d0ff/media

• XPages 開発 Tips 百連発• http://www.slideshare.net/notesdominoliaison/xpages-tips

• XPages アプリケーションで作成する図書管理• http://www.ibm.com/developerworks/jp/lotus/education/xpages_book_management/

• 既存の Notes アプリケーションの XPages 化におけるポイント• http://www.ibm.com/developerworks/jp/lotus/ldd_tech/2012_tech_update_apr_1.html

参考資料(2)• XPages.jp• http://xpages.jp/

• qA9 for ICS(Lotus) Developers• http://qa.xpages.jp/QA/qa.nsf/

•上記サイト自身も XPages で作られています。

まとめXPages は最初は取っつき辛い部分があります。

しかし、式や LotusScript と似た関数も用意されているので、従来の知識も活かせます。また、式や LotusScript では実現できなかった機能を実装できる面白い技術です。

ぜひ、いろいろなアプリを開発してXpages の可能性を体験してみてください!

ご清聴ありがとうございました