「サーバーがプログラム(server!!\○○.nsf)を実行しないとデータベースを開けません」って何?
【現象】
- LotusScriptで、DBを新規に作成したりレプリカを作ったりするようなエージェントを作っていて、それを手で実行すればOKなのにスケジュールにして実行させようとすると、指定の時刻になると上記エラーが発生してエージェントが実行されない。
【原因】
- スケジューリングされたエージェントからは、他サーバにアクセス出来ないという仕様らしいです。
なので、↓こんな感じに、サーバ名を指定してしまっているとエラーになるようです。
Set db = New NotesDatabase("server","test1.nsf")
ヘルプにも一応書いてあって、例えばCreateReplicaメソッドのヘルプ辺りに書いてある、
「あるサーバーで実行されているスクリプトは、他のサーバーにデータベースを作成したり、他のサーバーのデータペースにアクセスすることはできません。」
「クライアントで実行されているスクリプトは、異なる複数のサーバーにアクセスできます。」
というのは、そういう意味のことを言ってるらしいです。
【対処】
- サーバ名は指定してるけど、別に他サーバをアクセスしたいわけではなくて、自分のところを見るだけの場合には、サーバ名欄を空欄にするとOKになります。
Set db = New NotesDatabase("","test1.nsf")
- 他サーバにアクセスしたいからサーバ名を指定しているという場合には、エージェントをアクションメニューから起動するようにして、手で動かすしか無いのではないかな〜と思います。何かやり方あるのかなー。
アクションメニューから動かすと遅いし、動いてる間画面が使えないのでイヤなのですけど。