« 32 bit Domino on 64 bit Windows performance issue | Main| Reasons for ProxyOriginatingRequestUNID to change during user move »

Programmatically change database properties

Tags: database properties database icon R8

To satisfy my curiousity after reading this Knowledge base article with the same title as this post,  I've been going over the different flags in the $Flags field inside the Database Icon design element of a Lotus Notes Database (R8.0.2 client on R8.0.2 Server), and found a number additional flags that might be usefull.

To get a handle to the Database Icon use the following: Set doc = db.GetDocumentByID("FFFF0010")

This will provide you with a document object that you can use to modify the $Flags & $FlagsNoRefresh fields (plus a number of other fields).
Unless otherwise stated, the letters go inside the $Flags field.

Below is an overview of flags that I found in addition to the ones in this Knowledge base article with the same title.

Basics tab
J = Use JavaScript when generating pages
X = Require SSL Connection
8 = Don't allow URL open
f = clear Allow use of Stored Forms (enabling checkbox, removes the f-flag from $Flags)
i = Display images after loading
5 = Allow document locking

g = Type: Library
j = Type: Personal Journal
b = Type: Domino Directory
B = Type: Directory Catalog
m = Type: Multi DB Search
u = Type: Portfolio
A = Type: Mailbox
r = Type: MailFile

Design tab
6 = Design Locking
h = Mark Parent Note on Reply or Forward (set: add f to $FlagsNoRefresh, clear: replace f with r in $FlagsNoRefresh or add if it's not there yet)
$FlagsNoRefresh t = List as Advanced Template in New Database Dialog
G = Copy Profile Documents with Design

Launch tab
w = Preview pane default: Bottom Right
x = Preview pane default: Right
y = Maximize Preview on Database Open

Advanced tab
R = Prohibit Design Refresh or Replace to modify Database Icon (clear: adds R, set: removes R) - This does not control 'Don't allow headline monitoring' as described in the KB doc!
q = Compress Database Design
N = Compress Document Data
4 = Allow Soft Deletions - default 48 hours, add $SoftDeleteExpireHours (number) field to specify expire period
H = Support response thread history

Optionally add the following fields:
$DisableExport="1" : text field - Disable export of view data
$UpdatedByLimit=# : number field - number of updated by names to record
$RevisionsLimit=# : number field - number of revision date/time stamps to record