|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fun with $FormulaClass (continued)
Step 4: Rebuild the view's index
While in the view, hit SHIFT-F9 to rebuild the index of the view. You'll need to do this every time the $FormulaClass of the view changes.
You can see the results in Figure B.
FIGURE B
 
Here is a view that shows both Forms and Subforms sorted by their titles. Roll over picture for a larger image.
To be honest, this view isn't terribly exciting. But once we dress it up a little, it will not only be really exciting, it will be useful as well.
Separating the design elements Since both forms and sub-forms appear when $FormulaClass is set to "4"; views, navigators and folders appear when it is set to "8"; and all main design elements appear when $FormulaClass = "1548" -- we need to find a way of differentiating within views between different types of design elements.
Since the design element documents don't have a field called Type = "Form, View, etc.", we have to use the other design element field properties to differentiate. The most useful of all of these is the $Flags field. Table B shows how the value of the $Flags field differs between the design elements.
| Element Type |
$Flags value |
| Form |
Sometimes empty (""), sometimes is C |
| Subform |
CUA3 |
| Views |
Y |
| Navigator |
G3 |
| Shared Agents |
If agent is a LotusScript agent, the value is "fl3". If agent is a formula agent, the $Flags field = "" but a $Formula field exists instead. |
| Shared Fields |
Sometimes empty (""), sometimes is P |
| Shared Folders |
3FY |
| Private Folders |
3FYV |
Once we've successfully differentiated between the different types of design elements, we can sort them in a view. You can see how such a view looks in Figure C.
FIGURE C
 
Here you can see all design elements in a single view, categorized by type. Roll over picture for a larger image.
Sample application: the Design Element Manager If you want to see what has been keeping me up at night, you can download it from http://dan.velasco.com. There you can grab a sample database that I've created that I call the Design Element Manager. What I've done is to use the power of the $FormulaClass field to change views to show all design elements in a single view, either categorized by Title, Type or Parent Template.
I've then pasted in design elements from my templates (choosing to keep inheriting the design) into my Design Element Manager database. This way, I can easily add different design elements to my databases and even keep track of what design elements I've added to what databases and when. If I decide I need to delete a certain design element from all of the databases I've added it to, I can simply go to my log documents and delete all of the design elements I've added from there. You'll find all of the code for doing this in the sample database.
Do keep in mind that once you download the database, you'll need to add some design elements of your own to manage. I don't want to get whipped by Goddess (formerly Mistress) Helen for distributing my company's trade secrets.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- Advertisement --
Find unused Lotus Notes groups and clean up your address book
Have you ever wanted to get rid of old Lotus Notes groups that were cluttering up your address book, but you weren't sure if they were used? Find Unused Groups can help.
Find Unused Groups will check your ACL, mail, multi purpose and server groups to help you determine if they are used, and who uses them.
Learn how to easily clean up your address book. |
-- Advertisement --
Integrate your Notes Applications with Microsoft Office and Symphony
Integra for Notes Integrates Microsoft Office and/or IBM Lotus Symphony
Requires NO change to the design of the appliation or Installations of DLL's and EXE's
- Integra is a ready to use solution, enhance static reports with Excel data analysis, pivot tables, macros
- User friendly aproach, using a point and click access to features
- Reports from any Lotus Notes databases
- Runs reports through a Notes client, web browser and scheduled basis
- Allows use of LotusScript for advanced data manipulation
- Enables self service reporting capabilities to end-users
Learn more at www.integra4notes.com. |
|
|
|
|
|
|
|
|
|
|