Format Formula as HTML online
Here is the link to the Format Formula as HTML database I built. Check it out and let me know your thoughts.
Cool tools…
Check out ExplorerXP, it has tabs, configurable keyboard shortcuts, and much more. Ned Batchelder references Two Windows launcher utilities that I have been playing with. I really like the ObjectDock tool and would have to agree with Ned that Free Launch Bar correctly handles subfolders.
Print calendar to a document
Once again Alan Lepofsky has brought us another great tip with Print calendar to a document. Curiosity got the best of me and I had to figure out how Lotus is creating the print to document feature. I was a little surprised in what I found out. The more I thought about Lotus choice of implementation actually gives developers more options.
Design Elements
First, you need the three forms as described by ajp in Alan's comments. Just copy and past the forms ( (DayCalendarPrint), (WeekCalendarPrint) and (MonthCalendarPrint) ) from the standard mail template to your new template, while you are at it copy the ($Calendar) view to your template. There is no need to make any changes to the forms unless you need to make some cosmetic changes. I did not look at the forms at all to see what can be changed. The trick with the implementation is the view and the correct fields. First lets take a look at the view.
Calendar View
View Style
It does not have to be name ($Calendar), but has to be a view style of calendar.

Columns
Here are the only columns that are needed, you can add more columns if needed but they will not be printed on document.

The first column needs to be date/time value for a calendar view, the rest of the columns are available for you to use.
Advanced tab
Yes, you can put anything you want in those columns. The catch is the programmatic column name, as see on the advanced tab.

These four columns need to be named $144, $145, $146, and $147. This was the surprise, but what a better way to allow developers to control what can be printed. I find it interesting the choice in numbers, and that they have to be these numbers. Make sure that these numbers are used any other column, otherwise the data in the first column will appear in both. I would also recommend that you put the columns in ascending order according to the programmatic name because that is how they are printed, which we have no control over. The last ($147) column is made up of an array of four elements. The default calendar view has the following order Subject, Room, Location, and Chair. Once again the four elements can have any value.
Print Settings
Each type of view has different print settings. Some of these settings control what is printed form the view and others are actually fields on the docment. Here is the break down of the settings.
Weekly Settings |
|
![]() |
|
Montly Settings |
|
![]() |
|
Calendar List Settings |
|
![]() |
|
Note: If you are looking to get a little homework out of this there are some undocumented @GetViewInfo options listed on some of the columns.
Proverbs 22:6
And when he is old he will not depart from it.
Format Formula as HTML (Rewrite: Color Code Domino Formula)
Here is my second attempt at formatting formula code. My previous solution used JavaScript to Color Code Domino Formula. There could be some problems with using JavaScript, so I started with the same regular expressions and used Regular Expressions in LotusScript. Once again I had some concerns depending on things out of my control.
I ended up using Julian Robichaux's Using Wildcard Expressions in Java. If you have used Julian's Format LotusScript as HTML, RTF then you will be very familiar Format Formula 2 HTML.
The code is not very well document at this point, I will continue to work on that. I have to admit that I am a self taught Java programmer so if anyone has any improvements that can be made please let me know. The Java and regular repressions seem to be running very quick (2-3 seconds) until I format my Edit Document Fields. It takes about a minute to format which is not really that bad considering the number of characters.
Thanks, Julian for all the work you did with LotusScript to HTML and the regular expression example they saved me hours of work.
Domino Versioning Discussion
If you are interested in a discussion about how to implement version in Domino environment then check this out. I think that Michael Sobczak has some good ideas.
Enjoy!
Edit Document Fields 4.2 in the works
The next release of the Edit Document Fields will improve the saving of the last edited field. My first idea was to save the path along with the field in the Notes.ini. Another option would be to use the breakpoints profile that the LotusScript Debugger uses.
As seen using NotesPeek:

If I use the profile it will be very easy to implement the last edited field base on the form!!
Please let me know what you think of this new feature and if there is any other new feature that you are looking for.
Chad
Link Messages and Applications
If you have not checked out Alan Lepofsky's IBM Lotus Notes/Domino Hints and Tips, you should. He has tips and tricks for all types of people that work with Notes/Domino. His most recent post Notes Links Part 2: Document Links has a section on using Link Messages to easily send a document link. There is more information that can be displayed in the link message that could make your application more appealing.
Here is an example of what the Link Message could look like:

Implementation:
The Link Message inherits values from the selected document.

Because this property is checked any field that has a default value will be populated just like it normally does when it is created, but any field from selected document is also available to be used, if it exists. The next step is to find out what the fields are inheriting from. These are the fields on the Link Message form.
Database, Workflow status, and Due date inherit from a single field.
Here are the field names that they inherit from (they happen to be the same as the field name):
Database: InheritedDBTitle
Workflow status: FlowStatus
Due date: DueDateTime
Because the Link Message can be created from anywhere (as described by Alan), I would recommend adding Link Message information to every form. Not every field needs to be populated by your application, so only choose the ones that apply. I recommend that the fields be computed so the information is available when creating a Link Message in a view. The fields should look like the following:

The Document/Subject follows the same logic but has more options. As shown, if there is a Subject field it will use that, otherwise it will use Topic, then Title and finally BriefDescription.
Document:
@If(
@IsAvailable(Subject); Subject;
@IsAvailable(Topic); Topic;
@IsAvailable(Title); Title;
@IsAvailable(BriefDescription); BriefDescription;
"")
The subject field uses the information that is after Document but prepends "Link Message: ".
Subject: "Link Message"+ @If(@IsAvailable(InheritedSubject);": "+InheritedSubject;"")
Now that the application is setup to use Link Messages lets make the creation of the Link Message easier by creating an action button with the following code:
Bookmark was the old name for Link Message, so it has now become an alias for the Link Message form.
Laugh Your Way
This weekend my wife and I brought another couple to one of the most entertaining, yet educational seminars. The seminar is called Laugh Your Way To a Better Mariage by Mark Gunger and is it ever funny. Don't worry there is no break out session that you have to talk about personal things. All you have to do is sit back and laugh! Mark describes himself the best
This was the second time that we were able to attend Mark's seminar and would recommend it to anyone. It has been over two years since we first saw it and I could still quote many of the lines that Mark says to illustrate what the seminar is like. That is how well it stuck with me.
Valentine's Day
What a day!!! I started out the day with my annual review which went very well. Then my family came and visited me at work, what a pleasure to see them during the day. We ate at Rocky Rococo always a great place with four boys. I offered to make supper for my wife, so I picked up the supplies after work. When I arrived home I asked Ezra (6) to take mom upstairs and help her take a hot bath while dad made supper. Calvin (8) and the twins (3.5) brought in the groceries and help make the soup. Soup???? Yes, the kids have running noses, so at the request of mom I made soup. Jared and Josh helped wash the carrots and celery. Calvin then made a fruit plates for every one with, grapes, strawberries, mango, and cantaloupe. Next the biggest challenge, getting them all dressed. The kids did great; they where able to find the right close and help each other. The final task was to retrieve mom. I asked Calvin to take one rose and bring it to mom. He was then to ask if he could escort her down stairs. Mom was holding onto Calvin's arm. I should have gotten the camera out for this, because my wife was HOT.
Boys, you did great last night. I am very proud of you.
Happy Valentines Day!!


