Subscribe to Windows IT Pro
October 01, 1998 12:00 AM

Building Routing Applications in Exchange

Windows IT Pro
InstantDoc ID #3859
Rating: (0)
Explore Exchange 5.5 SP1's simple workflow functionality

Exchange is an excellent messaging engine, but its leading rival, Lotus Notes, has traditionally offered superior groupware capabilities. Now, Microsoft has set its sights on Notes' groupware. Exchange Server 5.5's introduction of Event Service lets developers associate code with Exchange folders. You can link Visual Basic Script (VBScript) code to scheduled events and to additions, changes, or deletions to items in certain folders. Event Service monitors folders and executes specified code when events occur.

Service Pack 1 (SP1) includes Routing Objects, which let developers tell Event Service how to route an item after a user adds the item to a folder. Microsoft describes Routing Objects as a set of tools that simplify the development of email-based routing and approval applications. For example, you can set up a system in which every time a user posts a new travel request to the company's Travel Requests public folder, Exchange routes the item to a manager for approval, then to the travel department for flight and hotel bookings, then to the accounting department to authorize payment for the travel arrangements. Exchange delivers items to recipients in email format, and recipients can use standard Outlook voting buttons to approve or disapprove the items' contents. (Users of messaging clients that don't recognize Outlook voting buttons will have compatibility problems with Exchange routing applications.) You can tell Exchange to take one routing step when recipients approve an item and a separate routing step when recipients disapprove the item. Routing Objects enable Exchange to support simple workflow, and SP1 includes a Routing Wizard component that makes Exchange workflow easy to implement. I based the information in this article on my experience with a trial kit of the Collaboration Data Object (CDO) Routing Objects.

Routing Components
Microsoft based Routing Objects and Event Service on its component object model (COM). Three major server-side Routing Objects components make Exchange workflow possible.

First, SP1 includes Routing Engine, a simple state engine that communicates with Event Service. It processes routing items in folders that you specify. Each item in the folders has a state (e.g., initiated, rejected, approved), and Routing Engine tracks each item's state and executes the VBScript code appropriate to that state. Routing Engine contains all the code it needs to route an item via email and call custom-built VBScript functions for bespoke processing.

Second, SP1 provides a set of CDOs you can use to control routing behavior. Developers use CDOs for many purposes, including programming the active pages that Outlook Web Access (OWA) uses to let Web browsers log on to Exchange servers. OWA's CDO manipulates objects such as mailboxes, folders, and calendars. SP1's CDO Routing Objects enable programmers to create and control process maps, which define the steps items pass through in a routing cycle and the activities Exchange needs to perform at each step.

Third, SP1 contains a set of VBScript functions (which are part of the CDO Routing Objects) for building steps that are common to many routing applications. The common steps that SP1 offers functions for include sending and receiving items for approval, consolidating items (e.g., gathering in one place information about multiple recipients' approval or disapproval of an item), and performing evaluations such as timing out items that sit in recipients' mailboxes for a certain period of time. Developers can use the VBScript functions that SP1 provides or build custom functions for their routing applications.

Workflow Wizardry
Microsoft uses the term process designer to describe a person who analyzes an item's route and determines the actions that a routing application must take at each stage of the route. Process designers combine knowledge about a business process, such as how a company handles a travel request, with programming expertise that lets them transform business processes into code that manipulates CDO Routing Objects. I've used workflow technology since 1989, and I've found that transforming business procedure into code can be difficult. I remember how a major institution proudly described at a conference in 1992 the automation of a business form: The company reported that creating the electronic version of the form had taken only 1 year.

I'm thankful that SP1 provides Routing Wizard, a process designer program that helps developers design simple routing applications. To use Routing Wizard, you must first decide which folder you want to use for your routing application. Each routing application requires a separate folder. Because these folders must be available to multiple users, administrators usually select public folders for workflow applications.

Related Content:

ARTICLE TOOLS

Comments
  • Aibo
    8 years ago
    Jun 24, 2004

    It is excellent article. I want to use MS Workflow designer for business logic for routing application. Would u please help me in setting up the stage and developemt procedure.

You must log on before posting a comment.

Are you a new visitor? Register Here

advertisement

advertisement

Windows is a trademark of the Microsoft group of companies. Windows IT Pro is used by Penton Media Inc. under license from owner.