[Notes/Domino] Summaryフラグに関するあれこれ
Notesの文書アイテムには「Summary」というフラグがあります。これは何のためにあるかというと、ビューに値を表示するためです。Summaryフラグが立っているアイテムは、サマリ・バッファからNoteをオープンしなくても高速にアクセスできるため、ビューの索引作成速度の向上に役に立っています(たぶん)(<たぶんかい)。
さて、このSummaryフラグ、いいことばかりでなく悪いこともあります。それは、「1文書あたりでSummaryフラグが立っているアイテムの合計サイズは64KBまで」という制限があることです。このため、いい気になってフィールドを作りまくっていると、「文書が保存できねぇぞゴルァ」というユーザーからの温かいお言葉をいただいたりします(x_x)
これを回避するには、大容量のデータを保存しているフィールドをリッチテキストに変えるか、そのフィールドのSummaryフラグをオフにするか、です(あるいは、文書を分割するか……)。リッチテキストは扱いづらいので、どちらかというとSummaryフラグのオフがおすすめ。(もちろん、オフにした場合はビューに表示されなくなるので、その点は注意。)
Summaryフラグをオフにする場合は、フォームにフィールドがあると保存時に勝手にSummaryフラグがオンになってしまうため、フォームからフィールドを消した上で、以下のようなコードでアイテムを作成する必要があります。
Set item = doc.ReplaceItemValue("フィールド名", "値") item.IsSummary = False
ちなみに、バックエンドでアイテムを作成した場合は、New NotesItem を使用した場合のみ、デフォルトでSummaryフラグがオフになります。R6の初期バージョンのヘルプでは「ReplaceItemValueでもIsSummaryはFalseになる」的なことが書いてありますが、これはなんと全くのガセです。IBMはヘルプバグであることを認めています。正しくは、以下のとおりです。
Summaryフラグが自動的にオンになるもの
- 拡張クラス構文(doc.FieldName = "値")
- doc.ReplaceItemValue
Summaryフラグが自動的にオフになるもの
- New NotesItem
コメント
コメントはありません
※コメントは承認制となっております。管理者が承認するまで表示されません。申し訳ありませんが、投稿が表示されるまでしばらくお待ちください。