Network Computing is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Giving Spreadsheets Extra Juice: Page 2 of 4

A more intriguing feature is the ability to scrape data from a table within a Web page. The client tool used to define the script, which the server will execute to update data, looks like a standard browser. After opening it, I browsed to a Web page and clicked on the table to indicate its placement in the page. The data appeared in the spreadsheet and I could format the cells, all while the data was continually and automatically refreshing.

To protect Web page data, authentication can be hard-coded into the JavaScript used to retrieve the data or, for more flexibility and higher security, can be passed as a parameter from a cell in the spreadsheet. I used this feature for database queries--passing dates, order IDs and customer numbers from cells on the spreadsheet back to the server. In this way, you can use Excel as an interactive interface to one or more databases, while applying a level of security. User names and passwords also can be required for individual queries.

What's Developing

Good
• Server is J2EE
• Client has an Excel add-in with a relatively small
footprint

• Data sources include Web pages, CSVs and databases; the SDK lets you develop
custom data sources

Bad
• Requires knowledge of SQL and, in some cases, Visual Basic
• Lacks integration with
external authentication mechanisms
• No work-flow capabilities
Vendor Info
Juice Client 3.0 and Juice Server 3.0, starts at $50,000. Juice Software, (646) 695-9700, (866) 584-2348. www.juicesoftware.com

A power user or developer can access the Juice objects via macros or Visual Basic and can create a rich, real-time collaborative application completely within the confines of a spreadsheet. (I never did get around to learning VB, so my spreadsheets weren't nearly as good-looking as those the engineer from Juice coded up.) Data can be updated automatically, manually, or, if using parameter-based queries, whenever the input data has changed. This last option is the easiest on the network--you won't be pulling potentially huge XML files across the network every few seconds unnecessarily. The server defaults to polling a data source every 45 seconds, but this setting also is configurable.