41
❑
Workflow management
❑
Calculation engines
As an example, consider a timesheet reporting system, where each member of staff has an Excel work-
book to enter their time on a daily basis. At the end of each month, they connect to the Internet and send
their timesheets to an application running on a web server. That application stores the submitted data in
a central database. Some time later, a manager connects to the server and is sent the submitted hours for
her staff. She checks the numbers and authorizes payment, sending her authorization code back to the
server. The payroll department retrieves the authorized timesheet data from the same web server
directly into its accounting system and processes the payments.
In this business process, Excel is used for the front-end client, providing a rich and powerful user inter-
face, yet it only fulfils a specific part of the overall process. The server application maintains the data
(the completed timesheets) and presents it in whichever format is appropriate for the specific part of the
process.
By using the Internet and standard data formats for this two-way communication, you can easily inte-
grate Excel clients with completely separate systems, as in the payroll system in the example, and allow
the business process to operate outside of the corporate network.
Communicating with a Web Server
Within a corporate network, nearly all data transfer takes place using proprietary binary formats, rang-
ing from transferring files to performing remote database queries. Due primarily to security considera-
tions, communication across the Internet has evolved to use textual formats, such as HTMLand more
recently XML. XMLis covered in detail in Chapter 12.
To be able to communicate with an application running on a web server, you need to be able to pass
information to, and receive information from, that application.
In Excel 2007, the Workbookobject’s FollowHyperlinkmethod can be used to communicate with a
web server. There a few problems with using this, including:
❑
If an error occurs during the connection, Excel will freeze.
❑
Any data returned from the hyperlink is automatically displayed as a new workbook.
❑
You have very little control over the communication.
Amuch more flexible alternative is provided by the Microsoft Internet Transfer Control, msinet.ocx.
This ActiveX control, often referred to as the ITC, is an easy-to-use wrapper for the wininet.dllfile,
which provides low-level Internet-related services for the Windows platform.
Sending Data from the Client to the Server Application
Two mechanisms can be used to send information to a web server. You can either include the informa-
tion as part of the URLstring or send it as a separate section of the HTTPrequest.
534
Chapter 24: Excel and the Internet