Lotus Symphony 技術詳細とアプリケーション開発 2011/07/15 Yamato Software Development Lab Lotus Technology Development Lotus BP Technical Enablement Team © 2011 IBM Corporation 1
特記事項 本資料の記載内容は、できる限り正確を期すよう努めてはおりますが、 いかなる明示または暗黙の保証も責任も負いかねます。 本資料の記載内容は、できる限り正確を期すよう努めてはおりますが、 いかなる明示または暗黙の保証も責任も負いかねます。 本資料の情報は、使用先の責任において使用されるべきものであることを、 あらかじめご了承ください。 掲載情報は不定期に変更されることもあります。他のメディア等に無断で 転載する事はご遠慮ください。 当資料をコピー等で複製することは、執筆者の承諾なしではできません。 また、当資料に記載された製品名または会社名はそれぞれの各社の商標 または登録商標です。 IBM、IBMロゴ、DB2、Lotus、Lotus Notes、Lotus Domino、Quickr、Sametime、Workplace、WebSphereは、International Business Machines Corporationの米国およびその他の国における商標。 JavaおよびすべてのJava関連の商標およびロゴは Sun Microsystems, Inc.の米国およびその他の国における商標。 Microsoft, Windowsは Microsoft Corporationの米国およびその他の国における商標。 Linuxは、Linus Torvaldsの米国およびその他の国における商標。 他の会社名、製品名およびサービス名等は、それぞれ各社の商標。 © 2011 IBM Corporation
今日の内容 Lotus Symphony とは 機能と特徴 アーキテクチャ 他の Lotus 製品との連携 プログラミング API と開発ツールの概要 Lotus Symphony LotusScipt API Lotus Symphony Java API Lotus Symphony Spreadsheet コンテナ まとめ 1. Lotus Symphony の紹介 (機能紹介とアーキテクチャ) 2. Lotus Symphony Toolkit の紹介 (Java と LotusScript) 3. LotusScript を用いたアプリのデモ 4. Lotus Symphony コンテナの紹介 5. Lotus Symphony コンテナを用いたアプリのデモ 6. その他の Toolkit 紹介 (UNO と ODF Toolkit) 7. Lotus Symphony ロードマップ 8. LotusLive Symphony のチラ見せ © 2011 IBM Corporation
今日の内容 Lotus Symphony とは Lotus Symphony でのプログラミング まとめ 機能と特徴 アーキテクチャ プログラミング API と開発ツールの概要 Lotus Symphony LotusScipt API Lotus Symphony Java API Lotus Symphony Spreadsheet コンテナ まとめ 1. Lotus Symphony の紹介 (機能紹介とアーキテクチャ) 2. Lotus Symphony Toolkit の紹介 (Java と LotusScript) 3. LotusScript を用いたアプリのデモ 4. Lotus Symphony コンテナの紹介 5. Lotus Symphony コンテナを用いたアプリのデモ 6. その他の Toolkit 紹介 (UNO と ODF Toolkit) 7. Lotus Symphony ロードマップ 8. LotusLive Symphony のチラ見せ © 2011 IBM Corporation
Lotus Symphony IBM Lotus が無償で提供する、統合オフィスソフトウェア Lotus Symphony Documents ワードプロセッサ Lotus Symphony Presentations プレゼンテーション Lotus Symphony Spreadsheets 表計算 [ ワードプロセッサ ] [ 表計算 ] [ プレゼンテーション ] 提供形態 IBM Lotus Symphony の Web ページからダウンロードして、 単体のアプリケーションとしてのインストール Lotus Notes クライアントのオプション機能としてのインストール © 2011 IBM Corporation
Lotus Symphony のダウンロード IBM Lotus Symphony のページ( http://symphony.lotus.com )を開き、 「Download」 ボタンをクリック IBM ID でログイン してダウンロード ログインせずに ダウンロード © 2011 IBM Corporation
ワードプロセッサ、プレゼンテーション、表計算 LotusLive Symphony クラウドで提供される ワードプロセッサ、プレゼンテーション、表計算 単なる ブラウザで動くオフィスソフトで はなく、Webベースのコラボレーションを 提供。 リアルタイム、あるいはプライベート モードでの共同編集 共同編集者のプレゼンス表示 編集内容ライブ常時 コンテキスト単位のコメントと ディスカッション 作業割り当てと通知 バージョンとタスクの管理 LotusLive Labs と Lotus Greenhouse Labs でプレビューを公開。 © 2011 IBM Corporation
いま、無償の統合オフィスソフトを選ぶ理由 職員一人当たりの IT 経費の増大 新バージョンへの アップグレード ウィルスやワーム の脅威 ライセンス費用 多くの セキュリティパッチ 新しい UI への 教育 多くのユーザーは Microsoft Office のフル機能を必要とはしていない © 2011 IBM Corporation
Lotus Symphony のオープンな技術 Web Community ODF 製品自体を無償でダウンロード可能 Wiki による情報提供と Forum によるサポート 開発者向けの Developer Toolkit Support Forum OASIS で認定された、オフィススイート用の 標準ファイルフォーマット OpneOffice.org など様々な 統合オフィスソフトウェアに採用 Lotus Symphony OpenOffice.org Eclipse コミュニティによる開発と機能拡張 様々な企業や団体での採用実績 Lotus Symphony は OpenOffice.org 3 の コードストリームをベースに開発 コミュニティによる開発と機能拡張 プラグインモデルによる拡張性 Java などの統合開発環境としての実績 Lotus Symphony 製品ページでも プラグインを提供 OpenOffice.org Community-driven project IBM takes and contributes Lotus Symphony 3 is rebased on current OO 3 codestream Eclipse Provides clean, fresh UI Rich plug-in model enables efficient extension of Lotus Symphony to business applications Web Community Available free of charge for anyone Open, transparent Support forums Developers forums ODF OpenDocument Format = industry standard file format Liberates content from application ODF Toolkit union driving interoperability and extensions オープンなプラットフォームへの対応 ( Windows、Linux、Mac OS ) © 2011 IBM Corporation
Open Document Format Open Document Format (ODF) for Office Applications OASIS(構造化情報標準促進協会)のオープン・ドキュメント形式技術委員 会で 開発された、オフィスソフトウェア用のファイルフォーマット。 http://www.oasis- open.org/committees/tc_home.php?wg_abbrev=office 国際標準化機構(ISO)および国際電気標準会議(IEC)公認でも 標準形式として認証。 XMLをベースとして ZIP でアーカイブされたファイルフォーマット 標準ファイル形式としてオープンソースや多くのベンダー製品で採用されて いるため、異なるオフィス製品の間でファイルを交換できる。 OpenOffice.org オープンソースとして開発されている、 ODF に対応した統合オフィスソフトウェア。 http://www.openoffice.org/ Lotus Symphony では OpenOffice.org の提供するモジュールを使用して いる。 © 2011 IBM Corporation
Eclipse の特徴 – 拡張可能なプラグイン形式 他社の ツール Eclipse プラットフォーム ワークベンチ Java 開発 ツール (JDT) ヘルプ JFace SWT チーム 独自 ツール プラグイン 開発環境 (PDE) ワークスペース デバッグ オープン ソース ツール プラットフォーム・ランタイム Eclipse プロジェクト © 2011 IBM Corporation
Eclipse Rich Client Platform (RCP) Lotus Expeditor IBM Lotus 製品で採用しているクライアントアプリケーション動作環境 Eclipse RCP をベースにして、ビジネスアプリケーションで必要な機能を追加 プラグインアプリケーション基盤、 アカウント管理、 プロビジョニング、セキュ リティ 製品の基本機能や UI の拡張は、Lotus Expeditor Toolkit で 行うこともできる Eclipse Rich Client Platform (RCP) Lotus Expeditor Lotus Notes Lotus Sametime Lotus Symphony IBM Java Windows Linux Mac OS © 2011 IBM Corporation
コンポジットアプリケーション Portal アプリケーションで 選択されたフォームが開かれる Portlet アプリケーション (JSR 168) Notes アプリケーションで 選択された文書の情報が フォームに自動的に反映 Notes アプリケーション (NSF) Windows ネイティブアプリケーション(Lotus Forms Viewer) © 2011 IBM Corporation
Lotus Notes への統合 Lotus Symphony が Lotus Notes に 統合されることで、クライアントの管理と 利用が簡単になるばかりではなく、 Lotus Notes アプリケーションのデータと、 Lotus Symphony のデータを連携させるこ とで効率化が図れる。 データ処理の自動化 Lotus Notes データの有効利用 データの表現力のアップ © 2011 IBM Corporation
Lotus Notes アプリケーションとの連携の例 LotusScript プログラムによる連携 Java プログラムによる連携 コンテナフレームワーク (表計算のみ)による連携 レポート作成と分析 データ抽出 © 2011 IBM Corporation
今日の内容 Lotus Symphony とは Lotus Symphony でのプログラミング まとめ 機能と特徴 アーキテクチャ プログラミング API と開発ツールの概要 Lotus Symphony LotusScipt API Lotus Symphony Java API Lotus Symphony Spreadsheet コンテナ まとめ 1. Lotus Symphony の紹介 (機能紹介とアーキテクチャ) 2. Lotus Symphony Toolkit の紹介 (Java と LotusScript) 3. LotusScript を用いたアプリのデモ 4. Lotus Symphony コンテナの紹介 5. Lotus Symphony コンテナを用いたアプリのデモ 6. その他の Toolkit 紹介 (UNO と ODF Toolkit) 7. Lotus Symphony ロードマップ 8. LotusLive Symphony のチラ見せ © 2011 IBM Corporation
Lotus Symphony が対応する API とツール Lotus Symphony Basic Lotus Symphony LotusScript API Lotus Symphony Java AP Lotus Symphony Spreadsheet コンテナ さらに高度なプログラミング Eclipse プラグインモデルによる拡張 Universal Network Object (UNO) API © 2011 IBM Corporation
開発技術の比較 中 高 低 Symphony Basic LotusScript API Java API コンテナ 開発環境 Symphony Basic IDE (Symphony) Domino Designer Eclipse IDE Composite Application Editor (CAE) 言語 LotusScript Java なし 動作環境 Symphony Symphony in Notes (Spreadsheets のみ) スキル Visual Basic に相当す るスクリプト言語 Java および Eclipse プラグイン GUI 操作による作成 外部デー タ連携 COM など限定的 Notes LotusScript クラス LSX (LotusScript eXtension) Notes Java クラス Expeditor/Eclipse コンテナフレームワーク (Notes ビューと文書、 Web ブラウザ) Java によるコンポーネント 実装 難易度 中 高 低 © 2011 IBM Corporation
関数と Lotus Symphony Basic Microsoft Office の関数やマクロ(VBA)と同等な機能を Lotus Symphony も提供し、オフィス文書内での計算や 自動処理などを実装することが可能。 © 2011 IBM Corporation
Lotus Symphony LotusScript API Lotus Notes に統合された Lotus Symphony では、 LotusScript プログラムで Lotus Symphony のデータにアクセスできる。 Lotus Symphony Spreadsheets 表計算ファイルの操作、セルのデータの操作、セルの表示設定など Lotus Symphony Documents ワープロファイルの操作、文書内のデータの操作、フォントなどのプロパ ティの操作 Lotus Symphony Presentations プレゼンテーションファイルの操作、プレゼンテーション内のデータの操 作や、 ページやシェイプなどの操作 LotusScript API で提供されているクラスは、Java API をラップしたもの。 LotusScript API の開発に必要なLotusScript ライブラリ(symphonylsx.lss)は、Lotus Notesのイン ストール時にプロフラム・フォルダに提供されます。 LotusScript APIの開発のための情報(マニュアルとサンプル)を含む「Lotus Symphony 3 Software Development Kit for Lotus Notes 8.5.x」はIBM Passport AdvantageまたはPartnerWorldのソフトウェ アダウンロードから取得できます。 © 2011 IBM Corporation
Lotus Symphony Java API Javaプログラムから Lotus Symphony のデータにアクセスできる。 Java API 提供されるクラスの内容は、LotusScript API と同じ Eclipse プラグインモデルによる、アプリケーションの中で Java API を利用 可能 開発環境 Eclipse IDE (Integrated Development Environment) Lotus Expeditor Toolkit Eclipse IDE で Lotus Expeditor や Lotus Notes のプラグイン開発を行 うための 追加モジュール。 Lotus Symphony Toolkit Eclipse IDE で Lotus Symphony のプラグイン開発を行うための追加モ ジュール Lotus Notes に統合された Lotus Symphony では必要ない。 © 2011 IBM Corporation
Lotus Expeditor Toolkit Lotus Sametime Toolkit Lotus Symphony Toolkit プラグイン開発環境の構築 構築手順 Eclipse IDE 3.4 のインストールと日本語言語パックの適用 Lotus Expeditor Toolkit のインストール Lotus Notes のプラグインを開発するための環境を構成 Lotus Expeditor Toolkit と Lotus Notes プラグイン開発環境の関係 Lotus Expeditor Toolkit Lotus Sametime Toolkit Lotus Symphony Toolkit Lotus Notes Lotus Sametime Lotus Symphony Lotus Expeditor Eclipse RCP © 2011 IBM Corporation
コンテナフレームワーク Lotus Notes のコンポーネントとなる部品を簡単に配置して、 コンポジットアプリケーションを作成する技術。 PIM コンテナ (Notes 連絡先ビュー、など) Symphony Spreadsheet コンテ ナ Web ブラウザーコンテナ (管理対象ブラウザー) © 2011 IBM Corporation
コンテナフレームワーク 配置したコンポーネントの間の連携を簡単に定義するための仕組みも提供。 いつ(どんなタイミングで) どのプロパティとアクションを どのように結びつけるか? (ワイヤリング) Lotus Notes Notes (Notes ビュー) コンポジット・アプリケーション Symphony (スプレッドシート) プロパティ アクション ワイヤリング イベント発生 © 2011 IBM Corporation
Composite Application Editor (CAE) Lotus Notes に付属コンポジット・アプリケーションの定義を 行うためのツールの (インストールオプションで選択可能) コンポジットアプリケーションを入れる Notes アプリケーションを作成 CAE でコンポーネントとなるコンテナを配置 コンテナ内で動作させるコン ポーネントを指定 コンポーネントの インターフェースを定義 (プロパティ) コンポーネントの間の ワイヤリング © 2011 IBM Corporation
今日の内容 Lotus Symphony とは Lotus Symphony でのプログラミング まとめ 機能と特徴 アーキテクチャ プログラミング API と開発ツールの概要 Lotus Symphony LotusScipt API Lotus Symphony Java API Lotus Symphony Spreadsheet コンテナ まとめ 1. Lotus Symphony の紹介 (機能紹介とアーキテクチャ) 2. Lotus Symphony Toolkit の紹介 (Java と LotusScript) 3. LotusScript を用いたアプリのデモ 4. Lotus Symphony コンテナの紹介 5. Lotus Symphony コンテナを用いたアプリのデモ 6. その他の Toolkit 紹介 (UNO と ODF Toolkit) 7. Lotus Symphony ロードマップ 8. LotusLive Symphony のチラ見せ © 2011 IBM Corporation
まとめ Lotus Symphony は IBM Lotus から無償で提供される、統合オフィス ソフトウェアで、Microsoft Office の大体としてご検討いただける製品です。 Lotus Symphony 自体がアプリケーション開発の環境を提供しています。 Lotus Symphony Basic Eclipse プラグインモデルによる拡張と Lotus Symphony Java API Lotus Symphony を Lotus Notes と統合してご利用いただくことで、 さらにその拡張性が増大します。 Lotus Symphony LotusScript API Lotus Notes コンテナフレームワーク © 2011 IBM Corporation
参考文献 オープンスタンダードの技術 Lotus Symphony の情報 OpenOffice.org http://openoffice.org/ Eclipse Foundations http://www.eclipse.org/ OASIS(構造化情報標準促進協会) http://www.oasis-open.org/jp/ Lotus Symphony の情報 IBM Lotus Symphony 製品ページ http://symphony.lotus.com/ Lotus Symphony 開発者向けページ http://www.ibm.com/software/lotus/symphony/developers.nsf IBM developerWorks : Lotus Symphony http://www.ibm.com/developerworks/lotus/products/symphony/ 【日本】 http://www.ibm.com/developerworks/jp/lotus/products/symphony.html これらの developerWorks のページで、Lotus Symphony に関する様々な記事を 探すことができます。 © 2011 IBM Corporation
参考文献 Lotus Symphony LotusScript API LotusLive Symphony Integrating IBM Lotus Notes with IBM Lotus Symphony using LotusScript and the Lotus Symphony Toolkit http://www.ibm.com/developerworks/lotus/library/symphony-toolkit/ Lotus Symphony Wiki: Demo Notes Databases for Lotus Symphony LotusScript API http://www-10.lotus.com/ldd/lswiki.nsf/dx/Demo_Lotus_Symphony_LotusScript_API John David Head’s blog http://www.johndavidhead.com/jhead/johnhead.nsf/dx/introduction-to-the-lotus- symphony-lotusscript-api LotusLive Symphony LotusLive Labs での LotusLive Symphony のプレビュー https://www.lotuslive.com/ja/catalog/index.php?id=labs&tab=symphony Lotus Greenhouse Labs での LotusLive Symphony のプレビュー https://greenhouse.lotus.com/wpsgh/wcm/connect/lotus+greenhouse/lotus+greenhouse+ next+site/home/labs/lotuslive+symphony © 2011 IBM Corporation
参考文献 Lotus Notes プラグイン開発環境の構築 Lotus Symphony プラグイン開発環境の構築 developerWorks Japan: IBM Lotus Expeditor Toolkit 6.1.1を使ってのIBM Lotus Notes 8ア プリケーション開発 http://www.ibm.com/developerworks/jp/ysl/library/lotus/y-lot-expeditortoolkit611/?ca=dnj- 1102 IBM Lotus Expeditor 6.2.2 Toolkit インストール・ガイド http://infolib.lotus.com/resources/expeditor/6.2.2/doc/le622abd006/ja_jp/ToolkitInstall.html Lotus Symphony プラグイン開発環境の構築 Lotus Symphony Wiki: How to set up eclipse development environment for Lotus Symphony standalone http://www- 10.lotus.com/ldd/lswiki.nsf/page.xsp?documentId=5B9877BADF82986C85257566001CD 6CC&action=openDocument Lotus Notesコンテナフレームワーク developerWorks Japan: Lotus Notes 8.5.1 新搭載のコンテナフレームワークを用いたコンポ ジット・アプリケーション開発 http://www.ibm.com/developerworks/jp/ysl/library/lotus/y-lot-notes851-cadev/ © 2011 IBM Corporation
© 2011 IBM Corporation