今回は、ノーツの文書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 カスタマイズとセキュリティ強化 - 株式会社エフ
