September 12th, 2005
Using categories to tame your in-box.
Posted at 07:12:34 PM in Colaboration | Add/Read Comments (8) | Permanent Link: Using categories to tame your in-box.
Most of us get way too much email. If you
are in habit of emptying you mailbox, there is a small design change you
can use to help manage this email overload. Based on how email is addressed,
you can categorize your in-box to focus your attention on email that matters.
There are five ways to categorize incoming email:
Of course you can combine this with the R6 email color preferences - e.g. mail email from you boss can have a red background. Usually that mail is the most important! You can add a counter on the left of each category, which is vital when you collapse them. Finally, the new R6.5 "View Show Unread" is also very useful. Turn it on, and the collapsed (or expanded) categories show only the totals of unread email.
Note that this categorizing technique works best in a corporate setting where most of your email is from inside the company. If most of your email is from the internet it won't really buy you anything (because everything ends up in one category). Below is an example from my in-box:

The code behind this is quite simple. In the R6 mail file, the in-box column 1 is hidden and used to calculate the color of rows. Insert new columns in positions 2 to 4:
Add Column 2: The "Counter" Column
Create a "counter" for column 2 in the in-box. Make the formula for the view 1 (i.e. the integer 1). Total the column and hide the detail rows.Add Column 3: Hidden Column to Sort In-box Categories
Modify this column to change the category order. And of course, remember to hide it.temp := @LowerCase ( @DbTitle );
@If (
!@IsUnavailable(ApptUNID ); 1 ;
SMTPOriginator != "" ; 6;
@Contains ( @LowerCase (SendTo); temp) & @Elements ( SendTo ) = 1; 2;
@Contains ( @LowerCase (CopyTo ); temp); 4;
@Contains ( @LowerCase (BlindCopyTo); temp); 5;
3
)
Add Column 4: The In-box Categories
Create a categorized column for column 4 in the in-box. Unfortunately there is no way to pass @username as a parameter into a view. The trick here is that the database title MUST be the user's short name (or you hard code the common name; only feasible for testing the idea). Although @username appears to work in the view, it fails if an other user, e.g.an admin assistant, views the mail file.temp := @LowerCase ( @DbTitle );
@If (
!@IsUnavailable(ApptUNID ); "Calendar" ;
SMTPOriginator != "" ; "Internet email";
@Contains ( @LowerCase (SendTo); temp) & @Elements ( SendTo ) = 1; "To " + @DbTitle + " only";
@Contains ( @LowerCase (CopyTo); temp); "cc";
@Contains ( @LowerCase (BlindCopyTo); temp); "bcc";
"To " + @DbTitle + " and others"
)
That's about it. Personally I like this approach very much, and have found it very useful. But I am wary of releasing it to large number of users because I like to minimize the number of changes made to the mail file. However, I would be very interested to hear comments from you folks out there, and possibly suggestions of further extensions.