GroupCalendar™ for Outlook® 2000 / XP / 2003 / 2007.  

 

Flexible - Works without a server and with a laptop on the road.
Easy to install - Start the setup, adjust one setting and the office has a shared calendar.
Easy to use - No actions required to share. Needs only one click for private or hidden appointments
Effective - Create appointments for others directly in the Group Calendar in Outlook.

Support
- Fast & friendly helpdesk, response to email questions in under one hour, direct connect phone hotline
Fair - 3 years of free support and free updates, no annual fees, no additional costs.

 

Technical information on GroupCalendar™ for Outlook ®

GroupCalendar™ is a com add-in, the GroupCalendar.dll, that combined with two executables, GCHelper.exe en GCSystray.exe does the work.
The com add-in integrates with Outlook ® from where it monitors Outlook ® events related to the calendar of Outlook® .

Database

Jet
Installing GroupCalendar™ creates two Jet databases (Ms Access 2000 format) in c:\Program Files\Group Calendar. GroupCalendar.mdb and Backdrop.mdb
These MS Access® databases don't need MS  Access® to be installed on the computer.  GroupCalendar™ will use the same JET technology as MS Access to use these databases.
The Jet technology is available by default on all Windows pc's.

When GroupCalendar™ starts up for the first time, it will create an INI file with default settings for the logged on user. The database location in the INI will point to the default database location in c:\Program Files\Group Calendar\GroupCalendar.mdb . This default setting is fine to simply test the product in a stand-alone situation without other users but the moment one wants to really share information with others in a team setting it's necessary to share one copy of the GroupCalendar.mdb somewhere on the network. (or use SQL server)

SQL
For larger workgroups from around 25 members it may be wise to use a Microsoft® SQL database as the central GroupCalendar™  database. The GroupCalendar.mdb file will no longer be used then. To create the database on the SQL server, a database creation script can be found in the program directory. The database administrator will have to create the user accounts that may access the database him/herself. 
SQL over the Internet
When tcp/udp port 1433 on the firewall is being redirected to the internal SQL server IP address, users can connect to the database over the internet as well simply by specifying the public IP address of the router/firewall in the GroupCalendar™ database settings.

Backdrop
Backdrop.mdb is the local buffer on the client pc in case the central database is temporary not available. Everything a user does while not connected to the central database is batched in the Backdrop database until the connection is restored. When the connection to the central database is restored the content of the backdrop is moved to the central database and cleaned out from the backdrop.

Database structure
The database structure is very simple. it holds only two tables:

- TB_Appointments where all appointment info can be found and,
- TB_Users where all user info is being stored. 
It's possible to delete users from the users table when someone leaves the company and return the license to the license pool. Deleting records from the Appointments table will remove the corresponding appointment from the Group Calendar folder in Outlook after a resync.

Maintenance
It's wise to open the central database on a regular basis with MS Access® and select the 'compress/repair' option. This cleans and restructures the database and keeps it in good shape. However the penalty for not doing that is not severe. Even a backup is not realy needed.

Backup
It might sound strange but a backup is not really needed. If the central database would get corrupted, all one needs to get back in business is place a new clean database on the network. The moment that users start up Outlook® again, they will be welcomed to the new database an their future appointments can be exported directly to the new database. even if they don't export their future items, within the hour the appointments will appear in the group calendar database. 


Usernames

The username is an important detail of GroupCalendar™.

Starting Outlook® loads the com add-in by Outlook® and the first thing the  add-in does is to determine what the username is of the current Outlook® user. The add-in uses a number of methods to determine who the user is. First it looks in the sent items and takes the first email it finds and tries to read who sent that. If no email has ever been sent, it looks in the Inbox and check to who the email was addressed. If no email is available it will read the Outlook profile and try to find out what name it has been configured with. 
Unfortunately some Outlook ® versions and configurations will not allow for this and when that fails, it uses the Windows® logon name.

The username gets written to the central database in TB_Users if it's not already there. If it was not there already, the user will be welcomed and offered to export their calendar items to the central database for others to see.

The username will also be written to HKEY_CURRENT_USER\Software\OpusFlow\GC\Username in the registry. 
This value can be modified manually and it will override the name that GroupCalendar determined from the settings in Outlook.

The license counter of GroupCalendar™ uses the names in TB_Users. A 5 user license will report an error when the 6th user is connecting to the central database. It is however possible to remove users from the central database table TB_Users to free up a license for another user.

Username vs. nickname

GroupCalendar™ shows appointments with the username in-between brackets [ ] . The default setting can be space consuming in the limited subject space of the appointments so there is a short name setting available in [settings] - [edit user info]. Any name or even one character can be used as a nickname to be displayed in front of the subject in the Group Calendar folder. A lot of people use their initials as a nickname.

INI files / Outlook profiles / Reset settings  / Terminal server

GroupCalendar™ creates an INI (settings) file for every unique name it finds when  Outlook ® starts up. The INI files are located in c:\Program Files\Group Calendar\ and can be recognized with 'Username'.ini
If no INI file was created before, a new one with default settings will be created and a GroupCalendar™ folder gets created as a sub folder under the default calendar folder. The GroupCalendar may be moved to another location or another Group Calendar may be created in another PST file. The name of the folder is not important as long as it has been selected in Settings as the Group Calendar. 
Removing an INI file will recreate it at the next Outlook ® start-up, with default settings. On pc's with multiple users there will be multiple INI files with unique names. 

The previous shows that all users need READ & WRITE permission in the program directory. That's something to keep in mind when installing it on a terminal server.

Example of an INI:

[CRM] - This section define the folder in Outlook that is used as the Group Calendar folder
CentraleAgendaEntryID=00000000CAB3DB9BC2CD6045B4087D5544E3D6A462810000
CentraleAgendaStoreID=0000000038A1BB1005E5101AA1BB08002B2A56C200006D737073742E646C6C00000000004E495441F9BFB80100AA0037D96E000000453A5C32303034206A69762E70737400
GroupCalendarPath=mijn pst\gc

[Sync] This section is a representation of the settings available under the Sync GroupCalendar button.
FastMode=True
This setting specifies whether or not the synchronizing should try to locate the existing item in the GroupCalendar folder with all means possible. This might take a long time. Normaly this setting should be on/true but on some non-patched Outlook version it might have to be switched off to insure that all items are synced correctly and no double items are being created.
AutoStart=False
This setting loads GCSystray.exe; the small calendar icon next to the clock that synchronizes the database with the GroupCalendar folder.
[Database]
Pad=X:\Group Calendar.mdb
This setting specifies where the central database is located on the network.
[User]
Fullname=Jan de Bouvier
The name that GroupCalendar found as the username at startup
Initials=JDB Not in use.
[Nickname]
MyNick=jb
This setting specifies how the identity of the owner of the item should be displayed in the Group Calendar folder in Outlook®.
[Participation]
NoParticipation=False
In [Settings]-[Edit user info], the checkbox  that prevents the personal calendar to be monitored so no appointments get visible in the Group Calendar.  
[MessageBoxes]
Prevents display of notifications when another user creates an appointment for this user and when the add-in loaded successfully
NoLoadMessage=False 
NoDelegateChangeMessage=False
[SQLDatabase]
Specifies that SQL server is in use and the settings related to that.
UseSQL=False
ODBCDriver=SQL Server
ServerName=10.0.0.2
The server name or IP address. (private or public)
DBname=GroupCalendar
UserName=user
PassWord=letmein

GCHelper.exe

GCHelper.exe starts when the computer boots up. When Outlook® is running it will check every 30 seconds if the GroupCalendar™ com add-in is still active in Outlook®. If not, it will try to activate the GroupCalendar again. The  Windows® tool msconfig can be used to enable or disable the start-up of GCHELPER.exe 

GCSystray.exe

GCSystray.exe starts when Outlook ® starts and when the checkbox is ticked in [Sync GroupCalendar].  It runs at a definable interval of 5 to 120 minutes to synchronize the Group Calendar folder in Outlook with the database on the network.


Synchronization or Real-time information

The GroupCalendar™ com add-in logs all appointments someone makes in their personal calendar into the database in real-time. The database table TB_Appointments holds a record/line for every appointment with all details needed to recreate the appointment in all group calendar folders at the users pc's. 

So logging appointments is a real time process.

The GridView© shows the database information in real time while the Group Calendar folder in Outlook updates the database information at a predefined interval.

So viewing information with the Grid View © is a real time view on the available GroupCalendar items.

The creation of items in the group calendar folders in Outlook® is not real-time. it depends on the interval setting in the GCSystray that runs next to the clock in the lower right hand corner. 

User fields, Views and Filters

The  departmnt field is one of four user fields in the Outlook calendar and Group Calendar next to Owner, GCID en GROUP.
In the departmnt field the value will be shown that corresponds to the  Department value in the database table TB_users. (Settings-Edit user info). This value can be used to create filtered views of the information in the Group Calendar folder in Outlook or in the real-time Grid View © 

Developers

OpusFlow supports developers who want to integrate the central database into other projects. Developer Support is provided at no cost if the application is of generic nature and will be made available to the general public for free or at a reasonable fee.


GroupCalendar™ is a trademark of OpusFlow b.v. Grid View © is a copyrighted description owned by OpusFlow b.v.
Outlook
® is a registered trademark of Microsoft ® corporation. Microsoft ® is a registered trademark of Microsoft ® corporation, Windows ® is a registered trademark of Microsoft ® corporation.