0

Powershell を使用して、Lotus Notes の names.nsf アドレス帳からインターネット電子メール アドレスを取得する必要があります。

Notes 内で、取得したいインターネット電子メール アドレスを確認できます。[基本] タブの [メール] セクションの [インターネット アドレス] フィールドにあります。ただし、それが下にあるビュー、またはそれを照会または導出する方法を見つけることができませんでした。また、Lotus Notes の [職場/自宅] タブで会社別に検索したい電子メール アドレスをフィルター処理すると便利です。

IE で names.nsf ファイルの 1 つを開くと、必要なフィールドがいくつか表示されますが、フォーマットされたインターネット電子メール アドレスがそこにありません。Lotus Notes 形式の電子メール アドレスしか表示されません。

ファーストネーム ラストネーム/mycompany/abc @ abc

(にある列名は$16という名前です)。

Lotus Notes の names.nsf アドレス帳から完全なインターネット電子メール アドレスを取得する方法はありますか? もしそうなら、どのように?それらが利用可能な「非表示」ビューの一部にある場合、それらの非表示ビューの値をどのように照会しますか?

ありがとう!

4

2 に答える 2

2

多くの場合、ユーザー ドキュメントの検索に使用する最適なビューは、"$Users" と呼ばれる非表示のビューです。考えられる名前のほぼすべてのバリエーションでインデックスが付けられているため、検索はうまくいく傾向があります。ビューから Person ドキュメントを開いて "InternetAddress" という名前の NotesItem を読み取るか、"InternetAddress" という名前のビュー列 (17 番目の列と思われる) から直接読み取ることができます。

于 2013-03-05T05:06:54.967 に答える
0

powershell を使用して、NAB から特定のユーザーのすべてのプロパティにアクセスできます。Notes クライアントが 32 ビットの場合は、32 ビット バージョンの PS を実行する必要があります。Notes ID パスワードの入力を求められます。

  $notes=new-object -comobject Lotus.NotesSession;
  $notes.Initialize("");
  $ndb = $notes.getdatabase("admin","names.nsf");
  $nview = $ndb.getview('($Users)');
  $searchkey = "Schmoe"; #whatever
  $doc =$nview.getdocumentbykey($searchkey,$true);
  $mailaddress = $doc.getitemvalue('mailaddress')[0];
  $internetaddress = $doc.getitemvalue('internetaddress')[0];
于 2013-03-14T21:35:04.020 に答える