0

VB6 では、次のように Lotus Notes データベースのすべてのビューをループするコードをサポートしています。

    For lngdomViewidx = LBound(domDatabase.Views) To UBound(domDatabase.Views)
         Set domView = domDatabase.Views(lngdomViewidx) ' note: this line right here is slow to execute

この方法でインデックスによってビューへの参照を取得するのにかかる時間は、ビュー内のドキュメントの数に比例するようです。このコードは、Notes データベースをループして、すべてのビュー名のリストを作成しているだけです。非常に大規模なデータベースでは、これに数分かかることがあります。この情報を取得するより速い方法はありますか?

ありがとう!

4

2 に答える 2

0

Karl-Henry の言うとおりです。NotesNoteCollection は、すべてのビューをループする最速の方法です。ただし、ループを変更するだけで、コードを大幅に高速化できます。インデックスを使用して各ビューを開く代わりに、次のようにします。

Forall view in db.Views
  'Do whatever you want
End Forall

インデックスを使用して Lotus Notes のコレクション内の要素にアクセスすると、常に最初からカウントする必要がありますが、forall ループを使用すると、次の要素に直接アクセスできます...

于 2013-05-30T06:18:49.377 に答える