$AssistMail
$Conflict
$ConflictAction
$File
$Fonts
$HHFlags
$KeepPrivate
$Links
$Moods
$PaperColor
$REF
$Revisions
$SealData
$Signature
$VersionOpt
$UpdatedBy
$VERREF
$$ViewBody
$$HTMLhead
$$ViewBody
$$QueryOpenAgent (4.6) or the form event WebQueryOpen (4.6)
$$QuerySaveAgent (4.5) or the form event WebQuerySave (4.6)
$$Return
$$ViewBody
$$ViewList
$$NavigatorBody,
$$NavigatorBody_n
$$ViewTemplate for viewname
$$NavigatorTemplate for navigatorname
$$ViewTemplateDefault
$$NavigatorTemplateDefault
$$SearchTemplate for viewname
$$SearchTemplateDefault
$$SearchSiteTemplate
$$Search
$$ReturnDocumentDeleted
$$ReturnAuthenticationFailure
$$ReturnAuthorizationFailure
$$ReturnGeneralError
$$WebClient (Roles)
Details:
$AssistMail
Indicates that a mail memo was sent by a background agent, rather than through the regular client UI.
$Conflict
$Conflict (Determines if there is a save conflict with the document)
$ConflictAction
Set to "1", allows automatic merging of replication conflicts
$Fonts
Not entirely sure about the implementation on this one, but it's a container for TrueType font information in rich text fields. If you create a formatted memo, then blow away this field, you'll see reversions to the internal font types for Notes: Helv, TmsRmn, and Courier. Nasty!
The $Fonts field is a rich text item with a font table in it. The font table provides a way for Notes to handle fonts other than the standard (non True Type) Helv, Tms Roman and Courier. Each additional font that is used has an entry in the table which consists of a relative number, a name (e.g., Arial), the family of the font and whether it is fixed or proportional. The latter two values only matter when the document is displayed on a system which doesn't have the specified font, as Notes tries to convert it to a "best fit" font that does exist.
The font table provides a way for Notes to handle fonts other than the standard (non True Type) Helv, Tms Roman and Courier.
Just to clarify, when you say "non-True Type," you mean that the standard fonts are non-True Type, not the "other fonts," correct?
All I mean is, the Helv, TmsRmn and Courier implementations are specifically not True Type fonts, because of the cross-platform nature of the Notes client. The $Fonts fields exists for the purpose of maintaining the font table information for any True Type fonts used in the document, right?
I'm pretty positive this is the behavior I've observed over the past 6 years...
$File
Object pointer for file and OLE attachments
$HHFlags
When you deselect the "Print header and footer on first page" checkbox in the properties for the database, each document created from then on contains a $HHFlags field with a value of "1". This field tells Notes not to print the header and/or footer on the first page.
Any documents created while the checkbox is enabled do not contain the $HHFLags field.
Any documents created while the checkbox is not enabled do contain the $HHFLags field.
$KeepPrivate
Creates the "Prevent copying/forward/printing" on any Notes document if set to "1". Note that this is not a security feature, since a user can copy the document to a local database, then reset the $KeepPrivate field through an agent.
$Links
@If(@Contains(@DocFields;"$Links");"Y";"N")
The field is document dependent, so if there is an attachment, it exists, otherwise, it does not.
$Moods
Mood stamp flag for Notes mail
$PaperColor
Yes, $PaperColor does exist as a seldom used internal field used for background form color (almost a moot sortof thing now with jazzier background graphics.
What it is is a number value 0-16 (I believe in string form, but may be a number) that dictates the color of the background. Lets say you have a workflow app or reports with a calculated status - lets say you'd like white as a new report, yellow as in process and [lime] green is closed. Why.....we all are quicker to associate color and/or graphics than looking for that darn status field or figuring out where we are in the flow.
So how do you automate different background colors dynamically - change the value of $papercolor - the next time the document is opened in the ui, the background color will reflect the value of $papercolor - but give it a play - design a simple form and view and create a doc with a $papercolor field. edit modify the string value, save, close and re-open - you'll see how it works!
Again, not something you'd use a lot, but useful for some situations.
old thread I know but for completeness here are the color names for the numbers:
@Member(ColorName;
"black":"white":"red":"green":"blue":"magenta":"yellow":"cyan":"dark red":
"dark green":"dark blue":"dark magenta":"dark yellow":"dark cyan":"gray":
"light gray":"white":"vanilla":"parchment":"ivory":"pale green":"sea mist":
"ice blue":"powder blue":"arctic blue":"lilac mist":"purple wash":"violet frost":
"seashell":"rose pearl":"pale cherry":"white":"blush":"sand":"light yellow":
"honeydew":"celery":"pale aqua":"pale blue":"crystal blue":"light cornflower":
"pale lavender":"grape fizz":"pale plum":"pale pink":"pale rose":"rose quartz":
"5% gray":"red sand":"buff":"lemon":"pale lemon lime":"mint green":"pastel green":
"pastel blue":"sapphire":"cornflower":"light lavender":"pale purple":"light orchid":"pink orchid":
"apple blossom":"pink coral":"10% gray":"light salmon":"light peach":"yellow":"avocado":
"leaf green":"light aqua":"light turquoise":"light cerulean":"azure":"lavender":"light purple":
"dusty violet":"pink":"pastel pink":"pastel red":"15% gray":"salmon":"peach":"mustard":
"lemon lime":"neon green":"aqua":"turquoise":"cerulean":"wedgewood":"heather":
"purple haze":"orchid":"flamingo":"cherry pink":"red coral":"20% gray":"dark salmon":"dark peach":
"gold":"yellow green":"light green":"caribbean":"dark pastel blue":"dark cerulean":"manganese blue":"lilac":"purple":"light red violet":"light magenta":"rose":"carnation pink":"25% gray":"watermelon":
"tangerine":"orange":"chartreuse":"green":"teal":"dark turquoise":"light slate blue":
"medium blue":"dark lilac":"royal purple":"fuchsia":"confetti pink":"pale burgundy":"strawberry":
"30% gray":"rouge":"burnt orange":"dark orange":"light olive":"kelly green":"sea green":"aztec blue":
"dusty blue":"blueberry":"violet":"deep purple":"red violet":"hot pink":"dark rose":"poppy red":
"35% gray":"crimson":"red":"light brown":"olive":"dark green":"dark teal":"spruce":
"slate blue":"navy blue":"blue violet":"amethyst":"dark red violet":"magenta":"light burgundy":
"cherry red":"40% gray":"dark crimson":"dark red":"hazelnut":"dark olive":"emerald":
"malachite":"dark spruce":"steel blue":"blue":"iris":"grape":"plum":"dark magenta":
"burgundy":"cranberry":"50% gray":"mahogany":"brick":"dark brown":"deep olive":"dark emerald":
"evergreen":"baltic blue":"blue denim":"cobalt blue":"dark iris":"midnight":"dark plum":"plum red":"dark burgundy":
"scarlet":"60% gray":"chestnut":"terra cotta":"umber":"amazon":"peacock green":"pine":"seal blue":"dark slate blue":
"royal blue":"lapis":"dark grape":"aubergine":"dark plum red":"raspberry":"deep scarlet":"70% gray":"red gray":
"tan":"khaki":"putty":"bamboo green":"green gray":"baltic gray":"blue gray":"rain cloud":"lilac gray":
"light purple gray":"light mauve":"light plum gray":"light burgundy gray":"rose gray":"80% gray":"dark red gray":"dark tan":"safari":"olive gray":"jade":"dark green gray":"spruce gray":"dark blue gray":
"atlantic gray":"dark lilac gray":"purple gray":"mauve":"plum gray":"burgundy gray":"dark rose gray":"black") - 1
$REF
UNID of parent document in parent/child relationship Notes documents. Rendering a Computed for Display text field on a document with this formula will show a doclink to the parent. You can modify this value, but you'll usually have a hardtime re-aligning the "Response Reference List" flag. You can also insert a list, but unfortunately, that doesn't give the document multiple parents. The NotesDocument.MakeResponse method sets the $Ref
$Revisions
Time/Date list history of all changes to a document. If you examine the Sequence Number attribute on any field, you can find that member of the $Revisions field, and determine the time of last edit for the field. This is the basis for the Notes field-level replication model, and it's one of the most ingenious solutions I've ever seen.
$SealData
Container for encrypted field data in a document
$Signature
Container for private-key encrypted digest of signable fields on the document. This is what Notes uses to verify an electronic signature. If you remove the $Signature field on a signed document, Notes will report a corrupted signature. If you attempt to modify it in any way other than through the NotesDocument.Sign method, you'd better know RSA better than Ron himself!
$UpdatedBy
List of previous editors. Does not add new editor if same as last editor, but does if same as any other prior editor. Not changable because it's maintained by hard-coded elements of API. Only recorded on documents which have some type of Author control. Open edit documents don't track editors.
$VersionOpt
Control field for the "save changes as new document" flag on a form. Basically, no matter what you've set on the form, changing this attribute in the document will create the various form effects associated with the flag.
$$HTMLhead
If you don't use the "For Web Access: Treat document contents as HTML" form property, adding a $$HTMLHead field to a form allows you to pass HTML information, such as Meta tags and JavaScript, to the Head tag for a document. The field can be any data type, but a hidden computed-for-display text field is the best choice.
$$ViewBody
Controller for view renderings on Browser clients.
$$QueryOpenAgent (4.6) or the form event WebQueryOpen (4.6)
The Notes Help 4.6 says about WebQueryOpen: A WebQueryOpen event runs the agent before Domino converts a document to HTML and sends it to the browser. Domino ignores any output produced by the agent in this context.
Create a shared agent that runs manually. Then write a formula that uses @Command({ToolsRunMacro}) to run the agent and attach it to the WebQueryOpen form events. This simulates the LotusScript QueryOpen form event that isn't supported on the Web.
The $$QueryOpenAgent field works in the same way. Works also in 4.6.
$$QuerySaveAgent (4.5) or the form event WebQuerySave (4.6)
The Notes Help 4.6 says about WebQuerySave: A WebQuerySave event runs the agent before the document is actually saved to disk. The agent can modify the document or use the document data to perform other operations.
Create a shared agent that runs manually. Then write a formula that uses @Command({ToolsRunMacro}) to run the agent and attach it to the WebQuerySave form events. This simulates the LotusScript QuerySave form event that isn't supported on the Web.
The $$QuerySaveAgent field works in the same way. Works also in 4.6.
$$Return
After Web users submit a document, Domino responds with the default confirmation "Form processed." To override the default response, add a computed text field to the form, name it $$Return, and use HTML as the computed value to create a customized confirmation.
$$ViewBody
Value is view name (in quotes) or a formula that computes the view name. Same as Embedded View.
This is the field you put in a form to display a view. See also the list of $$ forms below.
$$ViewList
Has no value. Same as Embedded Folder Pane.
This is the field you put in a form to display the list of available views and folders. See also the list of $$ forms below.
$$NavigatorBody, $$NavigatorBody_n
Value is navigator name (in quotes) or a formula that computes the navigator name.
Same as Embedded Navigator. To create multiple $$NavigatorBody fields on a form, append an underscore and a character to each subsequent field name.
This is the field you put in a form to display a navigator. See also the list of $$ forms below.
Associated with a lot of the $$ fields are the following forms:
$$ViewTemplate for viewname
Requires a embedded view or $$ViewBody field
Associates the form with a specific view. The form name includes viewname, which is the alias for the view or when no alias exists, the name of the view. For example, the form named "$$ViewTemplate for By Author" associates the form with the By Author view.
Domino requires an Embedded View or the $$ViewBody field on the form, but ignores the value.
$$NavigatorTemplate for navigatorname
Requires a embedded navigator or $$NavigatorBody field.
Associates the form with a specific navigator. The form name includes navigatorname, which is the navigator name. For example, the form named "$$NavigatorTemplate for World Map" associates the form with the World Map navigator.
Domino requires an embedded navigator or the $$NavigatorBody field on the form, but ignores the value. Domino ignores create and read access lists on the form.
$$ViewTemplateDefault
Requires a embedded view or $$ViewBody field.
Makes this form the template for all Web views that aren't associated with another form.
Domino requires an embedded view or the $$ViewBody field on the form, but ignores the value.
$$NavigatorTemplateDefault
Requires a embedded navigator or $$NavigatorBody field.
Makes this form the template for all Web navigators that aren't associated with another form.
Domino requires an embedded navigator or the $$NavigatorBody field on the form, but ignores the value.
$$SearchTemplate for viewname
Associates the form with a specific view. Domino requires the $$ViewBody field, but ignores the value. The form name includes viewname, which is the alias for the view, or, when no alias exists, the name of the view. For example, the form named "$$SearchTemplate for All Documents" associates the form with the All Documents view.
(source: Notes Help 4.6)
$$SearchTemplateDefault
Domino requires the $$ViewBody field, but ignores the value. This form is the default for all Web searches that aren't associated with a specific form.
$$SearchSiteTemplate
In a site search this form is used in stead of $$SearchTemplateDefault
(source: posting by Andrew S Grant on Notes.Net)
$$Search
When a user initiates a text search from the Web, Domino looks in the current database or in the search site database in a multiple-database search for a form with the actual name or the alias name $$Search. If the form exists, Domino opens it; otherwise, Domino displays the default search.htm file stored in the domino\icons directory.
And another set of very useful forms
$$ReturnDocumentDeleted
Displays to Web users when the user successfully deletes documents. Create an editable text field named MessageString to hold the error message.
$$ReturnAuthenticationFailure
Displays to Web users when the user's name and password can't be verified. Create an editable text field named MessageString to hold the error message.
$$ReturnAuthorizationFailure
Displays to Web users when the user doesn't have a high enough access level to access the database. Create an editable text field named MessageString to hold the error message.
$$ReturnGeneralError
Displays to Web users when any other errors occur.. Create an editable text field named MessageString to hold the error message.
Roles
$$WebClient
Is a role which is applied to all Web clients. This role can be very useful in hiding formulas. To check if a client is Web client use @IsMember("WebClient"; @UserRoles).
In general, $$ fields are used for web rendering controls, except in design elements where they are used to hold code. $ fields are generally used for document property controls.