Lotus Notes/Dominoアプリケーションのレガシーデータへのアクセス
レガシーのLotus Notes/Dominoアプリケーションの既存データにアクセスするにはどのようにすればよいですか?
回答
ODBCを使用して、基盤となるDominoアプリケーションのテーブルを公開します。
MS SQL Serverでリンクサーバーを作成し、ODBC接続から環境を抽出します。
以下の手順は、64ビットSQL Serverの接続を設定するためのものです。32ビットSQL Serverの場合は手順が異なります。
データベースサーバーを実行しているコンピュータ上で以下の手順を実行します。
Lotus Dominoサーバーをダウンロードしてインストールする
- トライアル版をダウンロードします。
- IBMログインでログインする必要があります。IBMログインがない場合は作成してください。
- 次の画面で[IBM Domino Enterprise Server V9.0.1 Social Edition Multiplatform English Trial eAssembly]を選択し、[continue]をクリックします。
- 利用規約に同意すると、ファイル「DOMI_SRV_9.01WIN_64_EN_FULL_-TRIAL.exe(935 MB)」のダウンロード画面が表示されます。
- ダウンロードしたファイルをインストールします。
- 確認を求められたら、「Domino Utility Server」として構成するように選択します。
- すべてデフォルトの設定を使用できます。
Lotus Dominoサーバーを構成する
実際はサーバーを使用しない場合でも、実際のサーバーであるように構成する必要があります。
-
デスクトップの[IBM Domino Server]をダブルクリックし、ウィザードを実行します。最後の手順まで[Next]をクリックします。
- パスワードをいくつか設定します。
- その他はすべてデフォルトの設定を使用できます。
-
Lotus Dominoのサービスを無効にし、PCの再起動時にサービスが開始しないようにします。
NotesSQL ODBCドライバをダウンロードしてインストールする
- こちらのリンクに移動します。
- ページには、オプションが1つ表示されています。そのオプションをクリックし、次のページで[Continue]をクリックします。
- 再度ログインして利用規約に同意する必要がある場合があります。
- ファイル「ODBC_ND_9.0_W64_EN.zip(97 MB)」をダウンロードします。
- このファイルをインストールします。すべてデフォルトの設定を使用できます。
NotesSQLの認証を構成する
-
Windows ExplorerでNotesSQLのインストールフォルダを開き、Nsql_ALM.exeをダブルクリックして、「NotesSQL Authentication List Manager」を開きます。
-
[Path to NOTES.INI...]に以下のスクリーンショットのように入力し、[Display list]をクリックして、[Add user...]をクリックします。
-
[Location of Notes ID]を以下のように設定し、[OK]をクリックします。
-
[Save List]をクリックして、[Close]をクリックします。
システム変数Pathを変更する
- [コントロール パネル]に移動します。
- [システム]を開きます。
- 左の[システムの詳細設定]をクリックします。
- [環境変数]をクリックします。
- [システム変数]で[Path]をダブルクリックします。
- 値の最後に「;C:\Progra~1\IBM\Domino\data;C:\Progra~1\IBM\Domino;C:\NotesSQL」を追加し、[OK]をクリックします。
ローカルファイルまたはサーバーを参照するODBCデータソースを構成する
-
ODBCデータソースアドミニストレータを開きます。
-
[System DSN]タブに移動し、[Add...]をクリックします。
-
[Lotus Notes SQL Driver (*.nsf)]を選択し、[Finish]をクリックします。
-
以下の画面のように詳細を入力します(このシナリオでは、DBサーバーと同じ場所にあるローカルファイルに接続します)。
-
[OK]をクリックし、ODBCデータソースアドミニストレータを閉じます。
MS SQL Serverでリンクサーバーを構成する
- SQL Server Management Studioを開き、データベースに接続します。
-
[Server Objects]を展開し、[Linked Servers]を右クリックします。
-
[New Linked Server]を選択し、以下のスクリーンショットのようにフォームに入力します。
-
[OK]をクリックします。これでリンクサーバーの準備は完了です。
テストする
-
新しいクエリウィンドウを作成し、例のように
**SELECT * from openquery(NOTES, 'select * from Person')**
を使用してテストし、適切な結果が得られることを確認します。
Integration Studioでイントロスペクションを使用できるビューを作成する
**CREATE VIEW LN_Person AS SELECT * from openquery(NOTES, 'select * from Person')**
などを使用して、ビューを作成できます。これで、Integration Studioを使用してイントロスペクションや接続を作成できるようになります。
OSRuntimeデータベースユーザーの権限を変更する
OutSystemsアプリケーションが実行時にリンクサーバーのデータにアクセスできるようにするには、OSRuntimeデータベースユーザーの権限を変更する必要があります。環境はこのユーザーを使用して実行中のアプリケーションのデータにアクセスします。
実証実験として、このユーザーにsysadmin権限を付与し、すべての動作が正常であることを確認します。現時点では、厳密に必要な権限が何であるかはわかりません。