Lotus Notes/Domino ::


Split and merge table cells

After reading a recent post by Lotus Business Partner Ben Langhinrichs on merging and splitting table cells, I decided to write today's tip since I don't think everyone knows about these features.

Let's look a table with 3 rows and 3 columns as our starting point.
Image:Split and merge table cells? ? ? ? ? ? ?

If I select adjacent cells spanning multiple columns
Image:Split and merge table cells

and choose Table - Merge Cells
Image:Split and merge table cells

Lotus Notes will combine the contents into a single cell.
Image:Split and merge table cells

You can do the same thing for cells that span rows.
Image:Split and merge table cells

You can even select cells spanning rows and columns at the same time.
Image:Split and merge table cells

After you have merged cells, if you wish you can "Split" them back into their original table format. (original # of columns and rows)

I use merged table cells all the time to format data. ?For example, to create a layout similar to a two-column newspaper, create a 3 row by 2 column table, then merge the cells in the top and bottom rows as seen below.

Image:Split and merge table cells

Comments

Computer Outlook Radio Show Interview

Last Thursday November 2nd I was the guest on John Iasiuolo's Computer Outlook Radio Talkshow. ? For close to an hour we talked about Lotus Notes/Domino, its history, current 7.0.2 features, and a few hints about the future. ?John has a huge audience, so this was an excellent opportunity to reach people that may not currently be amongst the Lotus faithful. ?If you were not able to listen live, you can find the recording here.

I'd love to hear your thoughts.

Image:Computer Outlook Radio Show Interview

Comments

Writing A Notes C-API Program in Visual Studio Express, Part 3 (Sunday, Nov 5)

Following up on my earlier blog entries about writing a Lotus Notes C-API program in Visual Studio Express (Part 1 and Part 2), here's another thing you might want to do that isn't really obvious.

You know how when you view the properties of most commercial EXE and DLL files, and you see properties like the program description and the version number and so on? For example:

SoapLog DLL Properties Dialog

In the full versions of Visual Studio, there is something called the Resource Editor that makes it very easy to create all those properties for your EXE or DLL. However, in the free Visual Studio Express offering that's one of the components they took out.

Luckily, you can still create a resource file and include it with your project, you just have to do it manually. Here's how:

  • Open up your favorite text editor and create a resource file (see example below), and save it with an .RC file extension -- you'll probably want to save it in the same directory as the other files in your project
  • In your VS-Express project, select the menu option Project - Add Existing Item...
  • Change the file type to "Resource Files" and choose the resource file you created

Badda bing, badda boom, you've got yourself a resource file. The next time you compile up your project, it'll have some of those fancy-schmancy properties lists that everyone wants these days.

The exact format and information that you put into a resource file is a little cryptic (which is why there is such thing as a Resource File editor in the first place), but you can usually start with an example and modify it to work for you. Here's the resource file I used for my SoapLog DLL:

//////////////////////////////////////////////////////////
// resource file for soaplog.dll
//////////////////////////////////////////////////////////

#include "soaplog.h"
/*
soaplog.h contains definitions like:
#define RC_FILEVERSION  1,0,3,0
#define RC_FILEVERSION_STRING  "1, 0, 3, 0"
*/

1 VERSIONINFO
FILEVERSION RC_FILEVERSION
PRODUCTVERSION RC_FILEVERSION

FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
  FILEFLAGS 0x1L
#else
  FILEFLAGS 0x0L
#endif

FILEOS 0x4L
FILETYPE 0x2L    // 0x1L = EXE, 0x2L = DLL
FILESUBTYPE 0x0L

BEGIN
   BLOCK "StringFileInfo"
   BEGIN

      //////////////////////////////////////////////////////////
      // The BLOCK number here consists of a 4-digit language
      // value (0409 = US English) and a 4-digit codepage
      // number, in hex (04e4 = 1252).
      //////////////////////////////////////////////////////////

      BLOCK "040904e4"
      BEGIN
         VALUE "CompanyName", "http://www.nsftools.com"
         VALUE "LegalCopyright", "(c) 2006 Julian Robichaux. All rights reserved."
         VALUE "FileDescription", "Domino DSAPI SOAP logging filter"
         VALUE "FileVersion", RC_FILEVERSION_STRING
         VALUE "InternalName", "soaplog"
         VALUE "OriginalFilename", "soaplog.dll"
         VALUE "ProductName", "soaplog"
         VALUE "ProductVersion", RC_FILEVERSION_STRING
      END
   END
  
   //////////////////////////////////////////////////////////
   // for valid language and charset values below, see:
   // http://msdn.microsoft.com/library/en-us/tools/tools/versioninfo_resource.asp
   // NOTE that the language value below (409, US English)
   // MUST match the StringFileInfo BLOCK number above, and
   // the 04e4 suffix on the BLOCK number is a hex version of 
   // the 1252 codepage that is also defined below.
   //////////////////////////////////////////////////////////

   BLOCK "VarFileInfo"
   BEGIN
      VALUE "Translation", 0x409, 1252
   END

END

One thing that is useful to do is to maintain the file version and product version information in a header file (as I did above with RC_FILEVERSION and RC_FILEVERSIONSTRING), because that's something that may change often. Since you can't edit a resource file in VS-Express but you can edit all the header files you want, keeping this information in a header file is a lot easier than having to remember to open the resource file in a separate text editor every time you update the version of your file.

I suppose you could go whole hog and maintain all the String values in a header file, if you really felt like it.


[ permalink ] [ e-mail me ] [ read/add comments ]

Comments

Calendar Display vs. Free Time Search

Today I'd like to discuss two calendar preferences which are similar, but actually configure very different things. ? They are the beginning and end times for your work day, and your availability times for meeting scheduling. ?The first controls what times you see displayed on your calendar representing your "work day". ?The second controls which hours of the day other people can potentially see you as available for meetings.

I previously explained calendar view beginning and end times here, but I'll quickly explain them setting again. ? In your mail file's calendar preferences

Image:Calendar Display vs. Free Time Search

you can configure the time range that you want to see displayed representing your work hours. ?The background of times outside this range are shaded grey, helping you distinguish the different areas.

Image:Calendar Display vs. Free Time Search

Since the times you "work" during the day may differ from the times you wish to allow people to schedule you for meetings, Lotus Notes allows you to control this separately.

In your mail file's preferences, under Calendar & To Do > Scheduling > Your Availability, you can define the days, and hours during those your are available.

For example, above I defined my work day as 9 AM to 5 PM, but below you can see that I define my available hours to exclude Noon to 1 PM.

Image:Calendar Display vs. Free Time Search

When someone tries to schedule a meeting with me, the scheduler will show anytime before 9AM, 12 PM to 1 PM, and any time after 5 PM as "Unavailable".

Image:Calendar Display vs. Free Time Search

Comments

Bunko (Yeah, right…) (Thursday, Nov 2)

My wife went to play Bunko with a bunch of the neighborhood women tonight. Apparently there's a monthly game, and she thought it would be a good way to meet the neighbors.

I asked her what Bunko was, since I've never actually seen it played before. She didn't know because she's never played before either, but she's always heard it's fun.

Then I talked to one of my friends tonight, and he said that his wife likes to go play Bunko too, and he also had no idea what it is. Which leads me to one of two conclusions:

A. It's a drinking game.
B. It's the female equivalent of a snipe hunt where the women just hang out all night, unless there's a new member, in which case they go through some sort of Bunko initiation routine before letting on that it's just an excuse to get out of the house and drink wine and do girly stuff.

I'm going to grill her when she gets home to find out which one it is...
;-)

(NOTE: before you consider leaving a witty comment, please make sure it's not going to be something that will be insulting about my wife. We don't want to go there. Thanks.)


[ permalink ] [ e-mail me ] [ read/add comments ]

Comments

I wish I had a voice for radio!

Tonight, Thursday November 2nd at 5pm Pacific Time, I will be speaking live with with John Iasiuolo of Computer Outlook Radio Talkshow. ? We will be discussing of course, Lotus Notes. ? I'm excited, as this will be different than most others interviews I've done! ?If you can't listen in live, recordings of the shows are available on their website, as well as on iTunes and all the other leading podcast portals.

Image:I wish I had a voice for radio!

From ?About this show:
"Let me introduce you to the Computer Outlook Radio Talk Show. The show started December 3, 2002 and has been been growing ever since. Today the Computer Outlook, is one of the country's fastest growing syndicated computer talk show featuring "What's New - What's Best and What's Next" in the computer and I.T. industry."

"The program broadcasts "LIVE" Monday thru Friday from 5:00 pm to 6:00 pm Pacific Time. It can be accessed through www.computeroutlook.com and is simultaneously streamed over the internet by Tech Outlook Central Internet Radio Network www.techoutlookcentral.com."

Comments

DominoWiki 1.1 Released

With the release of Notes/Domino 7.0.2 there has been a lot of talk about blogging in Domino. ? ?Let's make sure Domino based Wikis don't get overlooked! ? ?Ben Poole has just release version 1.1 of DominoWiki, read all about it.

Comments

Andy Broyles’ Notes Pumpkin!

A few days ago I showed a photo of an "R5" pumpkin I carved many moons ago. ? I asked if anyone had carved one with the current Notes logo, and Andy did! ? Start thinking about next year folks!

Image:Andy Broyles’ Notes Pumpkin!

Comments

Don’t break my numbering!

A few tips ago I explained how you can use the indent function to create lists inside lists. ? You can create sub-bullets, and even mix lists types (bullet, number, alpha, etc). ? For example:
Image:Don’t break my numbering!
I was asked if it is possible to enter new lines within the list, without breaking the numbering. ? The answer is... Yes!

Instead of pressing ENTER, press SHIFT+ENTER. ? For example:

Image:Don’t break my numbering!

Comments

Some Nostalgic Lotus Videos

Comments

12 Weeks From Today… (Saturday, Oct 28)

12 weeks from today I'll be in Orlando, waiting for Lotusphere to begin. Giddyup! When you factor in all the holidays in-between, that's right around the corner.

If you haven't booked your travel yet, you'd better get crackin'.


[ permalink ] [ e-mail me ] [ read/add comments ]

Comments

Happy Halloween

I found this picture of a "R5" pumpkin I carved for Halloween many years ago.

Image:Happy Halloween

Has anyone carved the current Notes logo? ? If so, any pictures?

Image:Happy Halloween

Comments

Where did I read that again?

I've added a new feature to this blog today. ? Taking advantage of the new Google Custom Search Engine feature, I created a search profile that will look through all of the IBM blogs I have listed in my blogroll at once. ? So if you can't remember if I said something, or maybe it was Ed, or was it Mary Beth, you can now search all our sites at once. ?On the left hand navigator underneath my IBM Blog Roll, you will see a new Google Search box. ? Try it out, and let me know what you think. ? ?You can also access the search engine directly here: ?Search the blogs of IBM Lotus employees.

I've created a similar Google Custom Search that could be used to find information from all the various Lotus Blogger's sites: Search the "Lotus BlogSphere". ?Instead of me alone defining what sites are searched, I've made this one public so others can add their own sites. ? ?So everyone please visit the page and update the list. ?Perhaps people will want to create similar ones dedicated to Sametime, QuickPlace, etc.

Image:Where did I read that again?

Comments

Notes On A Stick on Geek Brief

Image:Notes On A Stick on Geek Brief

A few weeks ago I spoke with Cali Lewis of GeekBrief TV about Lotus Notes 7.0.2's new Notes on USB feature. ? You can watch Cali's Video Podcast here. ?(Notes is mentioned about 1/2 way through the video)

Image:Notes On A Stick on Geek Brief

Comments

F7 or F8?

Two quick shortcuts keyboard functions I like to use are F7 and F8. ?F7 is used to indent first line in paragraph, and F8 is used to indent the entire paragraph. ? Shift + F7 and Shift + F8 cause the reverse action, or outdent the first line or paragraph.

The two examples below show the difference. ? The top examples shows how F7 indents the first line, while the bottom examples shows F8 indenting the entire paragraph.

Image:F7 or F8?

Comments

Writing A Notes C-API Program in Visual Studio Express, Part 2 (Saturday, Oct 21)

Okay, so I've been playing around with writing a Notes C-API program in Visual Studio Express, and I ran into a problem. I compiled up SoapLog and people downloaded and tested it, and for some people it ran just fine but for others (notably Bruce) it would give a generic "Error loading DSAPI filter" and wouldn't work.

Naturally, it worked just fine for me.

After much investigation, I found out that it was a runtime DLL dependency issue. It appears that by default non-.NET applications compiled in Visual C++ 2005 require MSVCR80.DLL. This file should be in the directory (get this):
C:WINDOWSWinSxSx86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_0de06acd

On most Windows XP and Windows 2003 installations the file seems to be there. However, it's not there by default on Windows 2000. If the program that you've compiled is an EXE, you'll get an obvious error that you're missing a dependent file and you can figure out how to fix it. If it's a DLL like mine, you may get a very generic error that is difficult to troubleshoot (or it may just fail silently).

One option is to have the users download the Microsoft Visual C++ 2005 Redistributable Package (only a 2.6 MB download) and install it. That will give them MSVCR80.DLL, MSVCM80.DLL, and MCVCP80.DLL and your VC++ apps should run happily.

Another option is to compile the program with the /MT option instead of the /MD option, which will make the compiled program much bigger (74.5 KB versus 14.5 KB for me) but will remove the dependency. Compiling with /MD on Visual Studio 6 wasn't a problem because it would make your program rely on MSVCRT.DLL and MSVCP60.DLL, which virtually every Windows machine in the world already has these days. VS2005 changed this dependency to MSVCR80.DLL, which isn't quite as ubiquitous.

A third possibility is to create an installer package for your application that automatically installs the redistributable files if they're not there.

In my case it was easiest just to compile with /MT and be done with it. From a percentage standpoint, the final program is much bigger (~400% bigger), but in real terms it's still only a 75KB file.

So if SoapLog didn't work for you before, please download the 1.0.2 version and try again!


[ permalink ] [ e-mail me ] [ read/add comments ]

Comments

Did I repeat myself?

Create Free Polls

Comments

The truth about AutoSave in Lotus Notes/Domino 7

SearchDomino.com contributor Andy Pedisich explains how the AutoSave feature works in Lotus Notes/Domino 7 for recovering documents from a Lotus Notes database after a nasty "red screen of death" crash occurs -- and warns of a big caveat you need to be aware of before you can use it.

Comments

IBM.com cover story on blogging

The IBM Home page (in the US) is featuring blogging, and even highlighting Notes/Domino.

Flash version , ?HTML version , PDF version

Image:IBM.com cover story on blogging

Two of my favourite parts of the article are:

"blogs are a fact of life today and a leading source of information and entertainment for an increasing number of people -- as well as an opportunity to collaborate and share ideas."

"on October 11, IBM announced new productivity features in its most recent release of Lotus Notes and Domino that allow users to design, create and update blog entries. Even offline or while traveling, bloggers can update their blog using Lotus Notes and then transfer their updates the next time they connect to the network."

My friend and colleague Ed Brill is featured in the article.

So what are you waiting for? ?You can use IBM's Domino Blog template, or OpenNTFs BlogSphere, and start blogging today!

Comments

We Finally Moved (Wednesday, Oct 18)

A week and a half ago, we finally got moved up to Atlanta. Thank goodness that's over. Moving sucks, but I sure am glad we did it.

Still lots of boxes (my office isn't nearly as clean as Devin's), but we're getting there.


[ permalink ] [ e-mail me ] [ read/add comments ]

Comments