Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

A method for invoking remote functions from spreadsheets

IP.com Disclosure Number: IPCOM000188315D
Original Publication Date: 2009-Sep-30
Included in the Prior Art Database: 2009-Sep-30
Document File: 3 page(s) / 60K

Publishing Venue

IBM

Abstract

Spreadsheets are widely used in business for sensitive financial calculations. In this document, we describe the use of code generation techniques to off-load performance critical calculations to a remote IBM* DAV server and perform these calculations from a spreadsheet without needing to write any additional code. This document describes these code-generation techniques as well as a buildable add-in infrastructure that enables a user to off-load calculations to remote hardware using IBM DAV.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 38% of the total text.

Page 1 of 3

A method for invoking remote functions from spreadsheets

Spreadsheets are used in many organizations for important business calculations including sensitive financial calculations. These calculations can often be very computationally intensive and may take a long period of time to complete. The performance of these calculations can be improved through the use of remote procedure call technologies that allow user functions to be offload to high performance computer systems. However, modifying the spreadsheet is difficult.

    The purpose of this invention is to provide a means of combining the high-performance potential of remote procedure call technologies with spreadsheets. Through means of a buildable add-in interface it will allow sensitive computationally intensive calculations to be performed using the spreadsheet without the need for the user to have to write additional code to perform the function call.

    Modern spreadsheets provide a number of ways to interface a spreadsheet to external libraries. These include spreadsheet add-ins, software interface add-ins, and buildable add-ins. Buildable add-ins may be native C code libraries, very similar to standard DLL libraries. However they include extra functionality that allows the spreadsheet to load the libraries and use the provided functions directly from within the spreadsheet. Buildable add-ins are the fastest type of spreadsheet add-ins and so are particularly useful for performance critical spreadsheet applications.

    Building an add-in however, can for many users be difficult. Even for programmers of existing functions, providing the linkage between the spreadsheet and their functions through the buildable add-in interface is complex and time consuming. Creating an buildable add-in that can transport data to a remote machine is yet more complex. Our invention performs all of this work automatically and dramatically simplifies the process of creating remote offload buildable add-ins.

    Primarily it is an extension to the IBM* DAV Virtualizer that will automatically generate a spreadsheet buildable add-in based on the interface of available remote functions.

    The user supplies the IBM DAV virtualizer component with a header file containing special IBM DAV semantic mark-up. This mark-up provides the virtualizer component with all the information that is necessary to correctly invoke remote functions. The virtualizer will then produce binaries that can be linked against in order to use IBM DAV to remotely access that offloaded user function without having to change their C client application. This invention provides the same simplicity and performance to users of spreadsheets though the means of a buildable add-in interface for the IBM DAV remote procedure call technology.

    The core idea of the invention is an automatically generated buildable add-in that allows users of spreadsheets to access functions offloaded to high-performance servers usin...