Table of contents
In this section, we will review the practice of creating and utilizing Domino Profile Documents in our Domino Application Development practices.
Profile documents are typically used to store application and user preference data in order to facilitate personalization
. These documents are like typical Domino database documents, except they are excluded from the database document count and are cached when said database is opened.
Profile documents are not visible in View design elements that include all documents (via @Select ALL in the [View Selection Formula], and are often accessed and updated programmatically.
We recommend that you review the following Lotus Domino Designer Help Articles which discuss the Profile Document engine:
- Profile forms
- Creating a profile form
When you are familiar with the creation and maintenance of profile documents, you can begin to architect your Domino applications to use profile documents.
Examples of profile Documents
A simple example of the proper utilization of Profile Documents is the maintenance and utilization of a Category metric. Our example application has a Form Design Element named "Example Form". Example Form has a field called "category", which is used to categorize documents that are created/maintained with this Form Design Element. To maintain data integrity while we facilitate admin-maintenance of the categories, we create a profile document that is used to maintain the choices in the Example Form's category field element.
In the previous example, we architected the category field element to provide the user with a choice list that is maintained in the Application Profile Profile Document. Additionally, we provided a default choice list should an issue occur with the Application Profile Profile Document.
In using this architecture, we can easily provide application maintenance capabilities to specific Application Administrators.
When leveraging profile documents in multi-client/hybrid applications, the [Domino HTTP Task] does not update its cached profile documents when those documents are updated via the Notes client. This inability for the Domino HTTP Task to (immediately) recognize updates to profile documents and update its cache accordingly has resulted in the usage of standard
Notes documents to contain typical profile document content.
The utilization of Notes documents as profile documents, while addressing the Domino HTTP Task caching issue, adds additional documents to the Domino database document count as well as often requires utilization of other Domino Design Elements such as View design elements and Agent design elements.
Lotus Notes client applications can safely use the profile document engine. However we recommend that you consider alternatives when creating Hybrid Client Applications or Client-Type Applications that are delivered via the [Domino HTTP Task].