当ブログに掲載しているサンプルは、すべて利用者の自己責任という形でお願いします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。

テクてく Lotus 技術者 Slack に参加しよう!

2008年7月31日木曜日

文書IDの不思議


今回は、ノーツの文書ID(文書UNID)について考察してみる。

画像を見てほしい。ご存じだとは思うが、赤枠で囲った部分が文書IDである。
(実際に利用する場合は、行頭のOFとON及び、:は除くが)

@関数で利用する場合、@DocumentUniqueIDだが、このままでは使えないので、@Textでテキスト化する必要がある。

さて、この文書IDは、ノーツDBの中で一意であるとされている。
確かに同じ文書IDのものは存在しないし、存在できない。
DBのレプリカの場合は、それぞれのDBで同一の文書IDを持っていることになる。

この他には、同一の文書IDは存在しないはずと思うが、実はそうではないのである。
見落としがちだが、DBのコピーも、同じ文書IDを持つのである。
DBのコピーの際、レプリカIDは変わるのだが(これで複製かコピーかを見分けているから当然なのだが・・・)、文書IDはそのままコピーされるのである。

なので、文書IDを使ったノーツDBを作成する場合、このことに考慮する必要がある。
ちなみに、ノーツ文書をクリップボード経由でコピーした場合は、文書IDは変わるのである。
同じDBに貼り付けられることを考慮したのであろう。

※ノーツ8からはノーツDBではなく、ノーツアプリケーションと言います。私の環境はまだ7なので、ノーツDBとしてます。

Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

0 件のコメント: