IBM Lotus Notes access for SAP solutionsでは、IBM Lotus Notesと他のアプリケーションの統合とは異なるアプローチを採用しています。統合は、Lotus Notesの常に強力なポイントの1つとなってきましたが、そのほとんどはサーバー/アプリケーションのレベルで、NotesPump、Lotus Enterprise Integrator、およびLotus Connectorsのようなツールを使用して、他のプログラム環境とデータのやりとりを行います。
Lotus Notes access for SAP solutionsが提供している統合方法は他とは異なっており、Lotus Notesクライアント・インターフェースに慣れているユーザーは、別のGUIを習得することなく、SAPのデータやプロセスにアクセスできます。
コミュニケーションおよびコラボレーションの分野でLotus Notesを、ビジネス情報処理分野でSAPを信頼している企業の数が増える一方で、こうした統合ソリューションには次のような優位性が明らかです。SAPに簡単にアクセスできることは、トレーニング時間の短縮と生産性の向上、さらに組織内におけるSAPの有効活用を意味します。オフラインでSAPデータを使用できるだけでなく、Lotus Notesによるセキュリティーが万全なためです。
しかも、Lotus Notes access for SAP solutionsのインプリメンテーションは、Lotus Notes/Dominoの開発者や管理者にとってLotus Notesの柔軟性についてのお手本のようなものです。クライアント・レベルで設定の煩わしさがないLotus NotesとSAPの統合を実現し、すべてのLotus Notesアプリケーションと同様、必要に応じてカスタマイズして適用することができます。
Lotus Notes access for SAP solutionsは、最新バージョンのLotus Notesクライアント(7.0.1)に組み込まれた新機能です。Lotus Notesの保守契約が有効なお客様は、パスポート・アドバンテージのサイトからこれをダウンロードすることができます。この新機能の最初のバージョンでは、次の最もよく使用される5つのSAP機能をLotus Notes内から実行することができます。
- 時間報告
- 休暇申請
- 連絡先管理
- 報告書作成
- SAP作業項目の処理
Lotus Notesクライアント7.0.2リリースでは、SAPでよく使用されるさらに2つの機能にアクセスできるようになります。セルフサービスの人事情報管理と、Lotus Notesカレンダーでの、SAP CRMを使用してスケジュールされた会議のスケジューリングや追跡の機能です。
この機能は、Lotus Domino サーバー上ではなく、Lotus Notesクライアントとともにインストールされているため、各ユーザーがこの新機能を使用するには、Lotus NotesとSAPクライアント両方について現行ライセンスを所有している必要があります。Lotus Notes access for SAP solutionsの当初のサポート対象はSAP R/3 4.6Cです。SAP Netweaverのインストールは必要はありません。
インストール時に、Lotus Connector for SAP Solutionsから派生したクライアント・アプリケーションのインターフェースをユーザーのLotus Notesクライアントへ追加し、メールや個人アドレス帳のデータベースの設計を更新します。
Lotus Notes access for SAP solutionsをインストールして設定しておけば、上記の基本的なタスクを実行するのにLotus Notesクライアントのインターフェースを終了したり、SAPのGUIにログインする必要はありません。メールやカレンダーの追加機能として表示され、POP3メール・サーバーのようにローカル・アドレス帳の1つの文書にセットアップされます。
特定のSAPサーバーへのアクセスは、Lotus Notesのロケーション文書内に定義されます。たとえば、あるサーバーで時間の報告を行い、別のサーバーで報告書を作成するなど、複数のSAPサーバーにアクセスする必要がある場合、複数のロケーション文書を作成して、必要に応じてロケーション文書を切り替えます。
Lotus Notes access for SAP solutionsの機能は、煩わしい設定をする必要もなく、使い慣れたLotus Notesメールおよびカレンダーのユーザー・インターフェースを基に作成されています。
時間報告
SAPに対してLotus Notesメールまたはカレンダーから直接、請求可能な時間または割り当て可能な時間を報告することができます。カレンダーには、Lotus Notes access for SAP solutionsによって、カレンダー・エントリーのフォームに「Time Recording (タイムレコーディング)」という新しいセクションが追加されます。このセクションを選択すると、会議およびアポイントに関連付けられる所要時間およびコスト・センター・コードなどのデータの入力、編集または選択を行うフィールドが表示されます(図1参照)。
図1. Lotus Notes カレンダーの「Time Recording (タイムレコーディング)」セクション

カレンダー・エントリーに関連付けられていない時間を記録するため、または時間報告を管理するために、メール・データベースには新しい「SAP Time Entries(SAPタイムエントリー)」ビューが用意されています。このビューには、現行の時間報告、時間入力フォームを開始するボタン、時間報告の編集およびSAPへの提出を管理するウィザードが表示されます。
図2. 時間報告

ウィザードでは、日付の範囲およびその他の基準に応じて、時間報告文書のセットを選択します。選択したレコードは、SAPサーバーへ送信する前に編集することができます。
休暇申請
休暇申請フォームは、カレンダー(新しいビューを操作する場合)またはメール・データベースの「作成」メニューを通じて、SAPに送信されます。休暇期間の日付を設定し、SAPから引き出したリストからタイプ・コードを選択し、承認者であるマネージャーを入力します。休暇申請を送信すると、申請した期間のカレンダー・エントリーを暫定とマークし、承認を得るためにマネージャーに転送するワークフローが作成されます。マネージャーは、対象期間のすべての未処理休暇申請の概要を確認して、その申請を承認または却下します。承認を受けた申請はSAPに記録され、従業員へ電子メールで通知が送信され、カレンダー・エントリーが更新されます。
連絡先管理
Lotus Notes access for SAP solutionsの使用時は、SAP HRおよびCRMシステムから連絡先情報を検索し、その結果を個人アドレス帳にインポートすることができます。新しい「Add SAP Contact(SAP連絡先の追加)」ダイアログ・ボックスから、名前、企業名、市その他を基準としてSAP連絡先(顧客または自社社員)の検索ができます(図3参照。)
図3.「Add SAP Contact(SAP連絡先の追加)」ダイアログ・ボックス

連絡先が選択されている場合、Lotus Notesでは、新しい連絡先文書を作成しSAPからの連絡先情報をインポートします。文書の左上隅には、連絡先文書のソースを示すアイコンが表示されます。他のアドレス帳エントリーと同じように文書に情報を追加したり、文書を変更したりできますが、変更内容はSAPに書き込まれません。
図4. 新しい連絡先文書

報告書作成
SAPが提供するさまざまな報告書は、オンデマンドで実行したり、適切なアクセス権限を持つユーザーが将来作成したり配信したりできるように、スケジュールを設定して実行することができます。各報告書は、いくつものパターンを使用することがあります(パターンは、実行時に報告書に適用される変更が保存されたセットです)。適切なSAP権限を持つLotus Notesユーザーであれば、メール・データベースの「Tools(ツール)」ボタン・メニューから、報告書を生成することができます(図5参照)。
図5.「Request SAP Report(SAP報告書の申請)」メニュー・オプション

「Request SAP Report (SAP報告書の申請)」ダイアログ・ボックスでは、使用できる報告書のパターンを表示して1つ選択し、すぐに生成することができます。または、アクセスしているSAPサーバーがスケジュール設定された報告書作成をサポートしている場合、スケジュール情報の入力に必要なコントロールとフィールドもこのダイアログ・ボックスに表示されます。
SAP作業項目の処理
Lotus Notes access for SAP solutionsでは、新しいビューの「SAP Work Items(SAP作業項目)」をメール・データベースに追加することで、SAP作業項目のキューを簡単にレビューすることができます。ビュー内のボタンをクリックすると、SAPサーバーを照会することにより、現行の作業項目のリストが最新表示になります。新しい作業項目が見つかった場合、その項目からのデータがメール・データベースの新しい文書にコピーされ、ビューに表示されます。アクション・ボタンをクリックして、項目の状態を変更することができます。作業項目に追加作業が必要なときは、SAPクライアントが起動して該当する項目が開きます。
アップデートされたデータベース・テンプレートにはマニュアルとオープン・ソース・コードが付属していますので、SAPに関する経験が比較的少ない開発者でもLotus Notes/Dominoアプリケーションの経験が豊富であれば、Lotus Domino Designerを使用して、Lotus Notes access for SAP solutions機能をカスタマイズすることができます。
SAP機能の一部のみを使用する企業、またはカスタマイズ済みバージョンのテンプレートを使用する企業では、Lotus Domino Designerで企業専用バージョンを編集して、目的の機能を有効にする設計要素のみを追加することができます。同様に、SAPのインストールをカスタマイズしている企業は、独自のSAPのカスタマイズを反映するように新しい設計要素を編集することができます。
テンプレート内の新しい設計要素または変更済みの設計要素すべてが、コメント・フィールドで識別されます。Lotus Notes access for SAP solutionsを作成するコードは、新しく21個のビューと14個のフォームをLotus Notesメール・テンプレートに追加します。そのすべては、Notes access for SAP solutionsを表すNaSSで始まるコメントで識別されています。
図6. IBM Lotus Notes access for SAP solutionsスクリプト・ライブラリー

LotusScriptコードは、Lotus Notesクライアント・バージョンのSAP Connectorを経由してSAPサーバーと通信します。これは、SAPのRemote Function Call (RFC)プロトコルとの間で要求と応答を変換します。
Lotus Notesコードは、SAPアプリケーションのプログラミング・インターフェースを呼び出します。SAPは、要素をコードに定義してビジネス・オブジェクトとして管理します。ビジネス・オブジェクトにはデータおよびプロセスの両方が含まれます。Lotus NotesがSAPのデータやプロセスにアクセスするときは、Business Application Program Interfaces (BAPI)と呼ばれるビジネス・オブジェクトに関連付けられているメソッドを使用します。BAPIは、リモート・プロシージャー・コールとしてLotusScriptコードで使用されています。以下にサブルーチンの例を示します。
Public Sub InitCostCenterGetList ' Given a company code and a "controlling area," ' get a list of cost codes If gMD_BAPI_COSTCENTER_GETLIST Is Nothing Then Set gMD_BAPI_COSTCENTER_GETLIST = New SAPMetaData(2,2) gMD_BAPI_COSTCENTER_GETLIST.IsInitialized = False End If If not gMD_BAPI_COSTCENTER_GETLIST.IsInitialized Then gMD_BAPI_COSTCENTER_GETLIST.BAPI_NAME = "BAPI_COSTCENTER_GETLIST" gMD_BAPI_COSTCENTER_GETLIST.Fetch1Row = False 'inputs: company code and controlling area '(see InitCompanyCodeGetList and InitCOAREAGet) gMD_BAPI_COSTCENTER_GETLIST.InitInputItem 0, _"T_COCODE","","COMPANYCODE",False gMD_BAPI_COSTCENTER_GETLIST.InitInputItem 1, _"T_CONTROLLINGAREA","","CONTROLLINGAREA", False 'outputs: cost center code and description (list) gMD_BAPI_COSTCENTER_GETLIST.InitOutputItem 0, _"TL_CCENTER_CODE","COSTCENTER_LIST","COSTCENTER", False gMD_BAPI_COSTCENTER_GETLIST.InitOutputItem 1, _"TL_CCENTER_DESC", "COSTCENTER_LIST", "COCNTR_TXT", False gMD_BAPI_COSTCENTER_GETLIST.IsInitialized = True End If End Sub |
このルーチンでは、BAPIを使用してSAPオブジェクト・タイプのCenterにコールして、企業コードと制御エリアという2つのパラメーターに渡し、GetListメソッドにアクセスします。SAPサーバーは、コスト・センター・コードおよび説明の一覧を返します。
SAP側での、このオブジェクト指向の構造がLotusScriptプログラマーに馴染みやすいようなので、カスタマイズは比較的簡単です。Lotus Notes access for SAP solutionsのインターフェースまたは機能を変更する方法は、フォームおよびビューのユーザー・インターフェースに行うフロントエンドの変更と、BAPIを介したSAPサーバーとの通信に行うバックエンドの変更に応じて異なります。企業が、SAPシステムで使用できるようにビジネス・オブジェクトをカスタマイズしている場合、こうした変更は、Lotus NotesがアクセスするSAPのFunction BuilderのBAPI以外で反映する必要はありません。
Lotus Notes access for SAP solutionsは、SAPのデータとプロセスに簡単でわかりやすくアクセスできるように設計されています。Lotus Notes 7.0.1で無償で提供されているこの新しい機能は、追加設定なくLotus NotesをSAPと統合できるため、SAPの基本的な操作をLotus Notesで行う日常作業の一部として簡単かつ効率的に実行することができます。Lotus NotesおよびSAPの両方を信頼する企業は、この新しい機能を利用することによって、生産性における迅速な向上を図ることができます。
クライアント・ベースの機能を利用して、Notes support for SAPを追加することは管理者にとって簡単なことです。開発者は、オープン・コードのインクルード、慣れ親しんだ構造のオブジェクト指向コーディング、およびLotus NotesとSAPビジネス・オブジェクトの呼び出しでのリモート・プロシージャーを利用できます。このため、Notes support for SAPの選択機能のみのインストール、またはLotus Notesと大規模なSAPカスタマイズ・プロジェクトとの統合などのカスタマイズ作業が簡略化されます。
学ぶために
- developerWorks Japan: Lotus: Lotusの日本の技術情報サイトです
- developerWorks: Lotus(US) : Lotusの英語の技術情報サイトです
- developerWorksのLotus記事はこちらからご覧になれます。Lotus Notes と Domino Designer 7.0 の新機能
- developerWorksのLotus記事はこちらからご覧になれます。Lotus Notes 7 メールの新機能
- LotusNotesのSAPソリューションページはこちらからご覧になれます。Lotus Notes access for SAP solutions(US)
- IBM WorkplaceとLotusソフトウェアソリューションのSAPソフトウェアページはこちらからご覧になれます。IBM Solutions for SAP® Software(US)も参照してください。
製品や技術を入手するために
- Lotus Notes/DominoのソフトウェアアップデートをするにはdeveloperWorks LotusのダウンロードエリアLotus Downloads(US)を訪れてみてください。
議論するために
- ディスカッション・フォーラムにご参加ください。Lotus Notes/Domino 6 and 7 Forum(US)
- developerWorks ブログ (US)を通じてdeveloperWorksコミュニティーに参加できます。
David DeJean has been working with and writing about Lotus Notes and Domino for as long as they've existed. He was co-author of the very first book about Lotus Notes, Lotus Notes at Work, and has been an editor and writer for a variety of computer publications. He is a Lotus CLP and a partner in DeJean & Clemens, a firm that develops Notes and Internet applications and technical and marketing communications.