Add-in technology is an ideal way
to enhance the capabilities of Microsoft Outlook. Features including advanced
email management, encryption and contact management are examples of extending Outlook
with Add-ins. The biggest benefit of Add-in technology involves working with Microsoft
Exchange and Outlook custom forms to automate every-day business processes. This
later area is where Hughes Financial Services applications excel.
Add-ins can be developed in Outlook using VBA (Visual Basic for Applications)
and an automation file named VBAProject.otm. The biggest problem with the VBA
approach is overcoming the security restrictions added to the latest versions
of Outlook. VBA add-ins will only run when Outlook is set to run at a security
level of low or medium. To run these applications at a high security level
requires signing the Add-ins with a digital certificate which will expire with
time. Only one VBAProject.otm file can be associated with an Outlook profile.
While VBA code can be protected with a password this technique is less secure
than using a compiled DLL (Dynamic Linked Library).
COM (Component Object Model) based add-ins do not have these restrictions. They can be developed in
Visual Basic 6, VB.NET, or Microsoft Office Developer software. Multiple COM
Add-ins can be used on a single Outlook profile and are compiled DLL
applications. This improves both security and performance. A digital
certificate is not required to run COM Add-ins in Outlook. Deployment is
accomplished with an installation file to automate the setup and initialization
of the application.
Most of our Outlook applications work with Microsoft Exchange Server and custom
Outlook forms. These forms provide basic templates for data collection and can
add automation of their own using the VBScript language to provide data
validation and other capabilities. The forms are made available in the
"Organizational Forms Library" of Microsoft Exchange or other public Exchange
folders. Users can find these forms in the "Forms" library of Outlook
(Tools-Forms-Choose Forms) or they can optionally be started by a hyperlink on
a company intranet page. Exchange Server can also provide workflow automation
using the Exchange Scripting Agent and Routing objects. If administrative
restrictions or IT resources prevent customization of Exchange, basic workflow
can also be added using COM add-ins in Outlook itself.
Here is a simple application that demonstrates these concepts, a newsletter for
a Human Resources (HR) group. In addition to basic subscribe/unsubscribe
functionality, readers can choose the topics of interest they wish to receive.
Additional data such as an employee or division number can also be added. Shown
below is the Outlook form used to collect this data. This form is started
simply by clicking on the appropriate link on the HR's group home page on the
company intranet. VBScript code is added to the form to insure that users can't
send in incomplete data. In this case, users must check a Subscribe/Unsubscribe
option and select one or more topics before the form can be sent.
A COM Outlook add-in manages the entire subscription process. Each Outlook form
has a unique name that the add-in can sense when it arrives in the inbox. This
allows the automation to separate the form from other mail and decide how to
correctly process the data.
All of the data items on the form including the address of the sender can be
read and saved to a shared database. Each incoming form will also automatically
generate an email response to the subscriber confirming the action taken.
Typical the Outlook Security "Object Model Guard" will issue a warning that an
application is about to send an email. Technology has been added to HFS Add-ins
to overcome this restriction so the administrator does not have to confirm the
outgoing emails. The forms are also saved to a specific folder to maintain the
original data as a backup. All of these operations are completely automated and
hundred of forms can be processed at a single time.
The add-in adds a simple command bar to Outlook to provide the administrator
user interface as shown in the next picture. A description of each of the
commands follows.
Check Inbox - When you first open the mailbox this function will review all
mail and process any incoming subscription requests.
Send Newsletter - The application will pop-up a message which is addressed to
all active subscribers. Custom text is then added and the message is sent.
Alternatively the automation can be changed to send a personalized email to
each subscriber. The feature can also filter the mailing list by the subscribed
topic to insure that specialized newsletter only goes to subscribers who have
requested that subject matter.
Start Rule - If Outlook is running, the Add-in can sense when new mail arrives
and process the request automatically. "Start Rule" instructs Outlook to
initialize and run this feature.
Stop Rule - Pressing this button will no longer immediately process
subscription requests.
Utilities - This provides access to miscellaneous functions such as manually
editing the subscriber list, cleaning/repair of the associated subscriber
database and miscellaneous reports.
The Subscription Application is a very simple example of what can be achieved
with Outlook and COM Add-ins. Complex applications with workflow and multiple
forms are also possible. These applications can additionally be augmented with
other HFS technology to produce detailed reports or feed results into other
applications. Best of all, Outlook based automation projects only require a
fraction of the budget necessary to implement completely web-based
applications.