 |
 |
| Domino Tips: |
|
 |
 |

FORMULA
Mark calendar entries red and strikethrough
George France 01.06.2003
Rating: -3.75- (out of 5)




|
I recently had a request from a user to allow for Calendar entries to be marked in Red and Strikethrough text by clicking an action button. These would be displayed along with the 'Normal' entries within the Calendar. She also wanted the ability to reset the 'Marked' entrie(s) back to normal.
Code
Below are the steps to recreate the solution I came up with. If you have a better solution I would love to know:
- Open the users Mail file in Designer.
- Open the ' _Calendar Entry | Appointment ' Form
- At the end of the Subject field press the enter key and create a new Text, Editable field called Marked.
- Open the Hide When Tab of the properties box for this field and select all for reading and editing, we want to hide in read and edit modes. Do not place any default value into this field.
- Save and Close the form.
- Right click the ' _Calendar Entry | Appointment ' Form and select Design Properties.
- Click the Design Tab and select the 'Prohibit design refresh or replace to modify'.
- Open the View '($Calendar) alias Calendar'
- Select the Description column and copy to Clipboard then Paste.
- You now have two Description columns. Select the end one, farthest to the right.
- Open the Properties box for this column and change the display color for the documents to Red and with the Strikethrough attribute.
- Edit the formula for this column to read :
xxLocation := @If(@Length(Room);
"Location: " + @Name([CN];@Subset
(Room;1)); @Length(Location);"Location:
" + Location; "");
xxChair := @If(AppointmentType = "3";
"Chair: " + @Name([CN];Chair);
TaskType = "2"; "Owner: " +
@Name([CN];Chair);"");
@If(Marked="Y";@Trim(Subject :
xxLocation : xxChair);"")
- Note that only the last line of the formula has changed.
- Edit the formula in the first Description column to read:
xxLocation := @If(@Length(Room);
"Location: " + @Name([CN];
@Subset(Room;1)); @Length(Location)
;"Location: " + Location; "");
xxChair := @If(AppointmentType = "3";
"Chair: " + @Name([CN];Chair);
TaskType = "2"; "Owner: " +
@Name([CN];Chair);"");
@If(Marked="N" | Marked = "";
@Trim(Subject : xxLocation : xxChair);"")
- Note that only the last line of the formula has changed.
- Open the Action Pane for the View and add an action button to the bottom of the current list.
- Name it ' Toggle Strikethrough', no icon, Show on Action bar only.
- Add the following Lotusscript code the the Click event of the Action button:
Dim ns As notesSession
Dim db As notesDatabase
Dim ncol As notesDocumentCollection
Dim ndoc As notesdocument
Dim workspace As New NotesUIWorkspace
Set ns = New notesSession
Set db = ns.currentDatabase
Set ncol = db.unprocessedDocuments
Set ndoc = ncol.getfirstdocument
subj = ndoc.GetItemValue( "Marked" )
If subj( 0 )="N" Then
Call ndoc.replaceitemvalue("Marked","Y")
Elseif subj( 0 )="Y" Then
Call ndoc.replaceitemvalue("Marked","N")
Else
Call ndoc.replaceitemvalue("Marked","Y")
End If
Call ndoc.save(True,True)
Call workspace.ViewRefresh
- Save and Close the View.
- Right click the '($Calendar) alias Calendar' View and select Design Properties.
- Click the Design Tab and select the 'Prohibit design refresh or replace to modify'.
Thats it. Open your calendar and select an entry and click the button to test...
 |

|
Rate this Tip
|
To rate tips, you must be a member of SearchDomino.com. Register now
to start rating these tips. Log in if you are already a member.
|


');
// -->
DISCLAIMER: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.
|
 |
|
|
 |
|
 |
 |
 |
 |
| TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of . |
|
| |
All Rights Reserved, , TechTarget |
|
|
|
|
|