US20060036956A1 - Method and system for facilitating information exchange - Google Patents

Method and system for facilitating information exchange Download PDF

Info

Publication number
US20060036956A1
US20060036956A1 US11/257,857 US25785705A US2006036956A1 US 20060036956 A1 US20060036956 A1 US 20060036956A1 US 25785705 A US25785705 A US 25785705A US 2006036956 A1 US2006036956 A1 US 2006036956A1
Authority
US
United States
Prior art keywords
data
spreadsheet
network
remote database
client computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/257,857
Inventor
Charles Cho
Perlie Voshell
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
OutlookSoft Corp
Original Assignee
OutlookSoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by OutlookSoft Corp filed Critical OutlookSoft Corp
Priority to US11/257,857 priority Critical patent/US20060036956A1/en
Publication of US20060036956A1 publication Critical patent/US20060036956A1/en
Assigned to WELLS FARGO FOOTHILL, INC. reassignment WELLS FARGO FOOTHILL, INC. SECURITY AGREEMENT Assignors: OUTLOOKSOFT CORPORATION
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Definitions

  • the present disclosure relates to a method and system for facilitating information exchange between individuals and entities interacting on a shared project, and more particularly to a method and system for horizontal, i.e., non-hierarchical, participation in and/or contribution to a spreadsheet-based project.
  • the method and system facilitate efficacious remote information access and exchange, e.g., over a computer network such as the Internet and/or the World Wide Web.
  • spreadsheets to collect, assess, monitor and manage information and data is pervasive.
  • spreadsheet technology has evolved into a host of computer-based systems that facilitate flexibility and diverse applications, both for personal and business uses.
  • Software products such as VisiCalc, Lotus 1-2-3, Quattro Pro and Excel have greatly expanded the availability and use of computer-based spreadsheet applications.
  • Spreadsheet technology has also become part of innumerable “legacy” systems developed by companies to meet their specific needs and objectives, as those needs have evolved over time.
  • the computer-based systems and procedures for budgeting/forecasting corporate performance and for monitoring/evaluating actual performance relative to budget/forecast exemplify both the power and the limitations of current spreadsheet technology.
  • a typical budgeting process is hugely time-consuming, cumbersome and inefficient, entailing countless iterations through reams of data.
  • the budgeting process involves synthesis of historical information, competitive issues, long and short term corporate objectives, and forecasted revenues and expenses. Participants in a typical budgeting process are called upon to provide relevant information within their areas of responsibility and/or expertise. This information is fed into a spreadsheet program for ultimate consolidation into an overall budget.
  • budgeting procedures are generally unable to effectively address and/or recognize the inter-related and inter-dependent nature of individually forecasted numbers. For example, if the sales organization forecasts a significantly greater percentage of sales in the far east, the various support functions that will be impacted by such increased sales, e.g., shipping and receiving, customer service, etc., may need to adjust their forecasts to reflect the shift in sales.
  • current budgeting procedures generally do not facilitate the types of communications required to identify such variations and, once identified, to adjust the budget/forecast figures to accommodate such variations. Despite the significant expenditure of effort and expense, the budgeting process often lacks long-term value to management.
  • a further limitation of current budgeting processes is a general inability to integrate the budgeting process, and particularly the company's agreed upon budget, into management of the ongoing operation of the company. While certain members of the management team closely monitor company performance relative to budget, and such performance is periodically communicated to other segments of the corporate operation, particularly when performance is lagging budget forecasts, individuals outside of the “management circle” are largely unable to, and precluded from, measuring their performance against budget.
  • a further challenge to the effective management of any geographically dispersed organization is the timely exchange of, and access to, critical information. This challenge is particularly pronounced in the areas of budget preparation and the measurement/management of performance against budget. While a company generally collects, in real time, the data needed to formulate a budget and the performance data necessary to measure performance against budget, the availability of that data to individuals outside the management circle is generally restricted, if available at all. With the continued evolution of data communication, e.g., over the Internet and/or the World Wide Web, the infrastructure required to facilitate timely exchange and availability of data is generally available.
  • a need remains for a method and system for facilitating information exchange between individuals and entities interacting on a shared project. Indeed, a pronounced need exists for a method and system that facilitate horizontal, i.e., non-hierarchical, participation in and/or contribution to a shared project, e.g., a spreadsheet-based budgeting and/or performance measurement tool. Additionally, a need exists for a system and method that facilitate remote information access and exchange, e.g., over a computer network such as the Internet and/or the World Wide Web, with reduced latency.
  • the present disclosure is directed to a new and useful method and system for facilitating information exchange between individuals and entities interacting on a shared project, and more particularly to a method and system for horizontal, i.e., non-hierarchical, participation in and/or contribution to a spreadsheet-based effort.
  • the method and system facilitate efficacious remote information access and exchange, e.g., over a computer network such as the Internet and/or the World Wide Web, while reducing latency associated therewith.
  • FIG. 1 is a schematic depiction of a network-based system according to the present disclosure
  • FIG. 2 is an exemplary screen display according to an embodiment of the present disclosure
  • FIG. 3 is a second exemplary screen display according to an embodiment of the present disclosure.
  • FIG. 4 is a third exemplary screen display according to an embodiment of the present disclosure.
  • FIG. 5 is a fourth exemplary screen display according to an embodiment of the present disclosure.
  • FIG. 6 is a fifth exemplary screen display according to an embodiment of the present disclosure.
  • FIG. 7 is a sixth exemplary screen display according to an embodiment of the present disclosure.
  • the present disclosure provides a method and system for facilitating information exchange between individuals and entities interacting on a shared project.
  • the method and system advantageously facilitates horizontal, i.e., non-hierarchical, participation in and/or contribution to the shared project.
  • the method and system facilitate input to and participation in the creation of a spreadsheet, e.g., in formulating an enterprise-wide budget and/or forecast.
  • the method and system facilitate efficacious remote information access and exchange, e.g., over a computer network such as the Internet and/or the World Wide Web, while reducing latency associated therewith.
  • the method and system of the present disclosure provide, inter alia., a Web-based financial analytic solutions and professional services utility that can be effectively utilized by companies of any size, across any and all industries and geographic locations.
  • the method and system optimally utilizes and combines the benefits of a centralized data and document repository with the flexibility of distributed spreadsheet technology that effectively leverages the infrastructure of the Internet.
  • the method/system disclosed herein allows users to dynamically link budget spreadsheets to centrally administered OLAP and relational databases.
  • a Web-centric “meeting place” for all levels and functional areas of an enterprise may be advantageously created to facilitate: (i) communication concerning corporate strategy; (ii) assessment of critical assumptions necessary for effective budgets/forecasts; (iii) creation and collaboration in budget creation; (iv) tracking and managing of the budgeting process; and/or (v) viewing of personalized performance metrics.
  • companies are better able to align budgets with corporate strategies and deliver accurate budgets faster and with less effort.
  • the present method/system require minimal user training, minimal maintenance and/or support resources from internal IT personnel, and optimally utilizes and is based upon accepted technology standards.
  • System 100 includes a server 102 and an exemplary client 104 that communicate across a computer network 106 , e.g., an intranet, the Internet and/or the World Wide Web.
  • client 104 is intended to be representative of a plurality of clients 104 , each of which may communicate with server 102 via network 106 , whether sequentially or simultaneously, provided appropriate security clearance is achieved.
  • clients 104 may access and communicate with network through any data communication technology.
  • client 104 may comprise one or more personal computers that are part of a conventional local area network (LAN) that is wired directly to the Internet through a conventional port, e.g., a T-connection.
  • client 104 may also constitute one or more personal computers that use a modem to connect via a phone or cable connection to a network.
  • the personal computers may also be part of a peer-to-peer network.
  • client(s) 104 are adapted to communicate with network 106 such that information may be transmitted to and from server 102 , e.g., through one or more routers, wide area networks (WANs), satellites, hubs, repeaters, bridges and gateways, as is known in the art.
  • WANs wide area networks
  • Data transmissions are typically passed from network to network in packets that include not only the substantive aspects of the data transmission, but addresses, error checking information and the like.
  • client 104 includes at least two software applications for purposes of the method and system of the present disclosure: a spreadsheet software program 108 and a Web browser software application 110 .
  • Spreadsheet program 108 and browser 110 are loaded into the memory of client 104 or otherwise available for utilization by client 104 , e.g., from an ancillary floppy, CD-ROM, DVD and/or tape drive.
  • Any conventional browser 110 is contemplated for use according to the method/system of the present disclosure, e.g., Netscape Communicator or Microsoft Internet Explorer.
  • the method/system of the present disclosure may be utilized with any spreadsheet program 108 , e.g., Lotus 1-2-3, Quattro Pro, Excel and/or legacy spreadsheet systems.
  • a preferred spreadsheet program 108 for use by client 104 according to the present disclosure is Microsoft Excel 2000.
  • the method/system of the present disclosure advantageously utilizes the full functionality of Microsoft Excel 2000, e.g., report wizards, spreadsheet design, spreadsheet modification, etc., as is known to persons skilled in the operation and use thereof.
  • Preferred browser programs 110 for use by client 104 according to the present disclosure are Microsoft Internet Explorer 4.0 (or later) and Netscape Communicator V4.0 (or later).
  • the method/system of the present disclosure advantageously utilizes the full functionality of such browser programs, as are known to persons skilled in the operation and use thereof.
  • client 104 typically contains and/or has direct access to a variety of ancillary user documents 112 , whether stored within its memory and/or accessible from an associated drive or server.
  • client 104 may have access to user documents 112 that include word processing documents, audio and/or graphical files, spreadsheets and the like.
  • Client 104 is adapted to work “off-line,” i.e., independent of network 106 , or “on-line,” i.e., in communicative interaction with network 106 and server 102 . When working off-line, client 104 will not have access to data stored in database 114 associated with server 102 , nor will client 104 be able to feed data to database 114 .
  • client 104 includes an operating system selected from Microsoft Windows or Microsoft NT Workstation.
  • server 102 facilitates client 104 communication and data exchange with database(s) 114 .
  • Server 102 preferably facilitates access to enterprise systems and/or sources 116 , e.g., an enterprise's ERP system 118 , general ledger 120 and other systems 122 .
  • System 100 preferably provides dedicated high-speed connections to multiple, scalable backend databases 114 and file servers 102 .
  • server 102 utilizes the Windows NT 4.0 operating system and, based on the approximate number of users, is configured as follows: Number of Users Number of Servers Exemplary Components Up to 50 1 server Web/File/SQL/OLAP 50 to 250 2 servers Web/File SQL/OLAP 250 to 500 3 servers Web or Web File File/SQL SQL/OLAP OLAP 500 to 1000 4 servers Web 1 or Web Web 2 File File SQL SQL/OLAP OLAP 1000 and beyond 5 + servers 2 or more Web File SQL OLAP
  • server(s) 102 are generally uniformly configured, while permitting customization that best meets individual user's system requirements.
  • Typical server 102 configurations according to the present disclosure are set forth below: Component Low End High End Pentium III/500 CPU Dual Quad RAM 256 MB 2 GB Hard Drive(s) 9 GB Raid 5 20 GB Raid 5
  • system 100 provides security across all physical and logical components, thereby ensuring high level data and application integrity.
  • Functional security is generally provided by allowing system administrator(s) to restrict user access to features, functionality, documents and data, down to individual dimensions or fields within the spreadsheet program 108 .
  • connections security is generally achieved according to the present disclosure by providing data encryption of all information exchanged via the Internet and/or World Wide Web by utilizing SSL connections through https protocol and encryption keys.
  • FIG. 2 an exemplary screen layout 200 is provided from which certain aspects of the method/system of the present disclosure may be described.
  • Screen 200 is representative of screen layouts that may be viewed by users of clients 104 .
  • the application software required to provide the functionality described herein may be readily downloaded and/or installed at client 102 , e.g., by an Internet download as is known in the art. Installation of such application software may advantageously provide an icon on the desktop of client 102 , facilitating user access thereto.
  • Sign-on to system 100 typically includes appropriate name/password entry to validate user access.
  • the content on screen 200 is contained in a plurality of cells or blocks 202 .
  • cells 202 include “map” 204 , “bulletin from others” or “bulletin board” 206 , “CEO vision” 208 , and “comparative analysis” spreadsheet 210 .
  • Each individual cell 202 is preferably provided with conventional functionality keys that permit the cell view to be enlarged, edited, scrolled and/or closed. Reorganization and/or modifications to the layout and styling associated with information displayed on screen 200 may be facilitated through conventional menu-driven commands 212 , subject to inherent controls and/or limitations that may be built into the screen display functionality.
  • system 100 may be programmed such that the positioning of the CEO vision 208 may not be modified, thereby ensuring ready viewing of information considered to be critical to the enterprise.
  • system 100 allows as many as thirty blocks 202 to be viewable on each page or screen view, thereby allowing a user to scroll from block to block for efficient access to relevant information.
  • individual blocks 202 may be enlarged to fill a user's screen through appropriate keyboard/mouse commands, e.g., double clicking on the desired block 202 .
  • system 100 advantageously facilitates group participation in an enterprise-wide project, e.g., budgeting and/or forecasting, through the expeditious sharing of relevant data and information in real time.
  • CEO vision 208 illustrates the types of information that can be conveyed to participants in the budgeting process, e.g., corporate objectives, budgeting parameters, strategic opportunities and the like.
  • Information conveyed in CEO vision 208 may be periodically updated and/or revised, and may be replaced and/or supplemented by other management information, e.g., message(s) from the CFO, controller and/or other financial personnel concerning the status and/or parameters for completion of the budgeting process.
  • the informational content within each of cells 202 may advantageously link to ancillary sources of information, e.g., documents contained within an enterprise source 116 , e.g., supporting spreadsheets, word processing documents, PowerPoint presentations, video files, sound files and the like, or to external sources of information located on the Internet and/or World Wide Web, e.g., news stories, analyst reports, competitor publications, and the like.
  • ancillary sources of information e.g., documents contained within an enterprise source 116 , e.g., supporting spreadsheets, word processing documents, PowerPoint presentations, video files, sound files and the like
  • external sources of information located on the Internet and/or World Wide Web e.g., news stories, analyst reports, competitor publications, and the like.
  • the ability to connect ancillary sources of information with communications associated with the budgeting process afforded by the method/system of the present disclosure significantly improves the efficiency, reliability and accuracy of the budgeting process.
  • European map 204 is illustrative of the types of information that might be depicted on screen 200 that would be of particular relevance to an individual participating in the budgeting process, e.g., an individual responsible for European sales.
  • European map 204 could be stored on client 104 , within database 114 , within an enterprise source 116 and/or on the Internet/World Wide Web.
  • Data blocks 204 a , 204 b include detailed information concerning the underlying subject matter of map 204 and may be linked thereto from map 204 and/or formatted into the display of map 204 .
  • the data content of data blocks 204 a , 204 b may be derived from any of the potential data sources detailed hereinabove.
  • screen 200 is merely illustrative of the screen views provided by the method/system of the present disclosure.
  • map 204 would advantageously be replaced by content of relevance to those users, e.g., organization charts, program reports, statistics concerning new product introductions, etc.
  • a user having interest in European sales whose personal page is depicted in FIG. 2 according to the method/system of the present disclosure, has the ability to periodically change the content of cell 202 from map 204 to modified content of interest, e.g., using the edit function depicted in screen 200 .
  • Bulletin board 206 With reference to bulletin board 206 , the method/system of the present disclosure advantageously provide a direct communication function that, in certain respects, resembles an email system, but for the purposes of the present disclosure, far surpasses email in effectiveness and communicative efficiency.
  • Bulletin board 206 facilitates information sharing by providing a centralized location for posting and/or storing information relevant to a task, e.g., budgeting. For example, users may desire to post information concerning budget guidelines, timeliness, templates and the like on bulletin board 206 .
  • a user posting information to bulletin board 206 has the option of emailing recipients and/or other interested parties with notification that the posting has occurred, thereby increasing the likelihood of immediate review of the posted information.
  • postings to bulletin board 206 may be categorized by category and/or document type.
  • a user may be required to designate the type of document being posted from among a predetermined list of categories, e.g., assumption, guideline, schedule, timetable and package.
  • categories e.g., assumption, guideline, schedule, timetable and package.
  • “assumptions” may typically originate from executive personnel and may be used to communicate the company's vision for the future to members of the organization, e.g., corporation is looking for twenty percent top-line growth or corporation is looking to increase gross margins by three percent.
  • “Guidelines,” like assumptions, may typically originate from senior members of the corporation and may place caps or floors on aspects of the budgeting process, e.g., T&E expenses to increase by no more than three percent or distributor sales to increase by at least five percent year-over-year.
  • “Schedules” may include templates for inputting data, e.g., an input schedule, and “timetables” may include timelines for submitting data and/or dates for key meetings/corporate events.
  • “Packages” may include budget-related informational packages, e.g., background information required by individuals within the organization to fulfill their responsibilities in the budgeting process. Additional categories may be added by a system administrator, as needed by individual corporations from time-to-time.
  • the system/method of the present disclosure generally provides an address book or “listing” for use in posting messages on bulletin board 206 .
  • Message transmission may be directed to one or more targeted recipients, thereby facilitating non-hierarchical dialog concerning the budgeting process.
  • predetermined groups may be provided and/or established to facilitate communications to individuals having a shared interest in types of postings.
  • Messages posted to a collaborator's bulletin board 206 may advantageously provide narrative information and/or inquiries and may enclose, attach and/or link to documents contained within system 100 , e.g., in database 114 or enterprise source 116 .
  • Postings may be sorted based on a multiplicity of attributes, e.g., data, transmitter, topic and the like, and may be edited and/or deleted by the user who posts the message.
  • comparative analysis spreadsheet 210 is representative of a host of spreadsheets and spreadsheet-based documents that may be accessed, modeled and submitted as part of the collaborative budgeting process according to the method/system of the present disclosure.
  • Exemplary comparative analysis spreadsheet 210 is typically run on and rendered by a conventional spreadsheet program 108 , e.g., Excel, and typically derives its information, formulas and/or data from database 114 and/or other resources 116 .
  • a conventional spreadsheet program 108 e.g., Excel
  • comparative analysis may derive its information, formulas and/or data from the hard drive of the user's personal computer and/or ancillary drives associated with such personal computer.
  • a user may view, modify, update, model, test assumptions, and the like by inputting data and/or formulas to comparative analysis spreadsheet 210 , or such other spreadsheets as may be displayed on screen 200 according to the present disclosure.
  • the spreadsheet program 108 When a user enters a formula into a cell or dimension of spreadsheet 210 , the spreadsheet program 108 typically processes the formula through a minicompiler that reformats the function names, as is known in the art. The result of the compilation is typically written to a memory location reserved for that cell or dimension. Pointers to other formulas in the spreadsheet are provided by the spreadsheet program 108 , effectively creating a list of cells that contain formulas, thereby saving the spreadsheet program 108 time and providing improved efficiency during recalculations. Deletion of a formula by the user results in redirection of its pointer so as to reconnect the formula chain. When the spreadsheet is recalculated, spreadsheet program 108 saves time by making a first pass through the pointer list to identify cells or dimensions that contain formulas. The spreadsheet program typically finds those formulas that depend on data that has changed and marks each one that needs to be recalculated.
  • spreadsheet program 108 typically makes a second pass through the list focusing only on formulas marked for recalculation. For each, spreadsheet program 108 typically determines if the formula depends on another formula that has yet to be recalculated. If so, spreadsheet program 108 adjusts the cell's pointers and the pointers of connected cells/dimensions so that the dependent formula(s) move to the end of the list. When formulas are encountered that are not dependent on yet-to-be calculated formulas, spreadsheet program 108 typically undertakes to make the calculation required by such formulas. Critical to the calculations described herein is the efficiency of the required data retrieval associated therewith.
  • spreadsheet program 108 is advantageously utilized by users that are dispersed geographically. As such, data is optimally maintained in central database repositories, e.g., database 114 and enterprise sources 116 . Each time a query and/or response is transmitted between a user's client 104 and server 102 , e.g., data retrieval from or input to database 114 , latency issues associated with network 106 are encountered. According to the present disclosure, a unique caching method/system are provided that optimize the efficiencies associated with data exchange between client 104 and server 102 . The caching method/system disclosed herein is flexible in design and operable with any spreadsheet program 108 and/or hardware/software infrastructure.
  • data retrieval is generally achieved according to one of the following modalities: (i) cell-based responses to multi-parameter queries yield cell blocks of data that are not delivered directly to cells within spreadsheet; (ii) cell-based responses to individual queries are delivered directly to the spreadsheet cell requiring such data, but each cell-based data query automatically results in an independent and immediate inquiry to the database for the required data; and (iii) a pivot table.
  • the method/system of the present disclosure utilizes a caching system on client 104 that greatly facilitates data retrieval and reduces potential delays associated with the latency of network 106 .
  • client 104 includes a first caching function, termed a “data cache,” that automatically caches data that is input at client 104 or retrieved to client 104 , e.g., from database 114 or enterprise source 116 .
  • data cache a first caching function
  • data contained in the data cache of client 104 need not be retrieved across network 106 from server 102 .
  • a second caching function possessed by client 104 enables client 104 to greatly minimize the numbers of inquiries made and response received across network 106 .
  • client 104 possesses a “key cache” functionality that automatically checks internally for each piece of data requested by spreadsheet program 108 and, to the extent such data is within the data cache of client 104 , the key cache provides such data immediately to spreadsheet program 108 for use therein. Additionally, the key cache eliminates such data requirement from any potential requests to be made across network 106 , i.e., data contained in the data cache is automatically omitted from queries across network 106 . Conversely, pieces of data that are requested by spreadsheet program 108 and are determined by the key cache not to be in the data cache, are retained by the key cache for combination with all other such data requests before any transmission is made across network 106 .
  • the advantageous caching function of the present disclosure operates as follows.
  • the spreadsheet program 108 When the spreadsheet program 108 is called upon by the user of client 104 to render a spreadsheet, e.g., spreadsheet 210 in FIG. 2 , or to re-render a spreadsheet to reflect revised data, formatting and/or formulas, the spreadsheet program 108 calls upon the client to provide the data necessary, formatting and/or formulas necessary to respond to the user's request.
  • the key cache determines whether all requested data, formatting and/or formulas are contained within the data cache of client 104 . To the extent the required data, formatting and/or formulas are contained within the data cache, such requested information is immediately provided to spreadsheet program 108 for use therein.
  • the key cache accumulates such unfulfilled requests for combination into a single inquiry to be transmitted across network 106 to server 102 .
  • the cached queries are generally built into a small object for transmission across network 106 .
  • the spreadsheet program 108 is instructed not to re-render the spreadsheet until all required data is retrieved from server 102 , thereby minimizing potential user confusion associated with partial renderings of spreadsheets at client 104 .
  • the key cache packages up the requests that could not be fulfilled by the data cache into a single data object and transmits those inquiries in a single query to server 102 across network 104 .
  • server 102 Upon receipt of the single inquiry, server 102 routes the query to the appropriate repository for response thereto, e.g., database 114 or enterprise source 116 .
  • Server 102 advantageously collects the individual pieces of information necessary to respond to the packaged query provided by the key cache, and packages those pieces of information for a single responsive transmission across network 106 to client 104 .
  • the key cache Upon receipt of the responsive transmission from server 102 at client 104 , the key cache automatically stores the responsive pieces of data, i.e., data, formatting and/or formulas, in the data cache for future reference.
  • the key cache prompts spreadsheet program 108 to initiate a recalculation upon receipt of the needed data from server 102 .
  • spreadsheet program 108 queries the cache within client 104 for all needed information/data, i.e., the data, formatting and/or formulas that were not previously contained in the data cache.
  • the key cache looks to the data cache for the needed information and transmits such information to the spreadsheet program 108 for use therein.
  • Spreadsheet program 108 feeds the data to its calculation engine to sequentially generate the calculated values for the cells requiring such calculated values, and renders the final spreadsheet for viewing by the user at client 102 ..
  • the caching function within client 104 of the method/system disclosed herein advantageously optimizes the transmissions across network 106 associated with user input of data, formatting and/or formulas at client 104 as well.
  • the key cache preferably accumulates input by the user for a single transmission to server 102 across network.
  • the system/method of the present disclosure advantageously limits the amount of data retrieved from server 102 by defining fields otherwise left undefined in the query from spreadsheet program 108 by utilizing the fields of the “current view” (as described in greater detail hereinbelow) to fill in the missing or omitted fields/dimensions of the request.
  • the method/system of the present disclosure preferably automatically determines from the current view of the user at client 104 that the sales revenue of interest relates to “European sales.” Absent the limitative “current view” modality, the key cache would be required to request retrieval of all “sales revenue” data from server 102 , rather than the limited “European sales revenue” of interest for spreadsheet 210 that constitutes the “current view” for purposes of FIG. 2 .
  • the caching function of the present disclosure thus serves to optimize interaction across network 106 in several key respects, thereby minimizing latency issues and increasing the speed and efficiency of spreadsheet program 108 . While the caching function is described herein primarily with reference to the spreadsheet functionality of system 100 , and more particularly with reference to the budgeting/forecasting/performance metrics of a preferred embodiment thereof, it is specifically contemplated that the caching functionality described herein may be beneficially employed in a wide range of networked applications and utilities, as will be apparent to persons skilled in the art based on the disclosure herein.
  • exemplary screen layout 300 is depicted with a menu screen 302 positioned thereon.
  • screen layout 200 depicted in FIG. 2 is illustrative of the types of screen views available according to the present disclosure and, based on the contents thereof, is representative of the type of screen view that an individual having direct or indirect involvement in European sales might avail himself/herself of.
  • Screen view 300 is more generic than screen view 200 , and includes a library 304 of enterprise-related information, bulletin board 206 , CEO vision 208 , a spreadsheet 306 related to “Trend Analysis.”
  • Spreadsheet 306 is representative of a utility provided according to the present disclosure to measure, monitor and communicate the performance metrics of an enterprise to globally dispersed corporate personnel in real time. With reference to the caching functionality discussed hereinabove, the budget-related aspects of spreadsheet 306 are likely to remain unchanged, will be cached within the data cache the first time they are retrieved from server 102 , and will be provided from the data cache for re-rendering of spreadsheet 306 without the need to repeatedly access the data from server 102 across network 106 .
  • FIG. 308 links to a plurality of desktop views 308 are provided, namely the “company desktop,” the “manager desktop,” the “executive desktop,” the “admin desktop,” and “my desktop.”
  • Screen view 300 corresponds to an illustrative “company desktop.”
  • the links to alternative desktop views 308 depicted in menu screen 302 illustrate one aspect of the present disclosure that facilitates non-hierarchical collaboration in budgeting, forecasting and/or measurement of performance metrics.
  • Each desktop view 308 represents a subgroup within an exemplary enterprise that may benefit from timely exchange of information.
  • the groupings reflect different ways of looking at the interplay between an enterprise's workforce. For example, individuals at a manager level have issues that concern each of them, regardless of the functional group in which they work.
  • each desktop view 308 will differ, as will the types and degrees of financial information/spreadsheets available to users having access to those desktop views.
  • Each desktop is easily accessed by browser 110 at client 102 .
  • client 102 will access such data via network 106 , as discussed hereinabove.
  • An administrator for the system of the present disclosure can easily create, amend and/or delete groups/subgroups in response to the enterprise's needs over time. Groups and/or subgroups may be established that constitute relatively arbitrary, yet relevant, employee subsets who benefit themselves and the enterprise in their collaborative interaction. Utilization of subgroups, e.g., the “admin desktop,” facilitates and fosters senses of empowerment, commitment and ownership for corporate personnel who participate in the budgeting process and/or who have access to performance metrics in a timely fashion.
  • FIG. 4 a farther exemplary screen view 400 is provided in which bulletin board 206 has been carried forward from screen view 200 , although in a different position and in an expanded format.
  • the expanded format of FIG. 4 includes information concerning the “caption” and the “description” of each posted message, as selected by the individual posting the message.
  • screen 400 depicts illustrative status boards 402 , 402 a , bulletin board 404 and a “My Selected” bulletin board 406 .
  • Bulletin boards 404 , 406 illustrate a user's ability to view information in multiple formats, as may be desired by such individual.
  • bulletin board 404 differs from bulletin board 404 in that the former collects messages originated by the user (“fronga”) whereas the latter collects messages originated by individuals other than the user.
  • bulletin board 406 collects messages selected by the user for reasons known to the user.
  • an advantageous feature of a preferred embodiment of the present disclosure is that users are able to work with their submissions to the budget and to submit those on a periodic basis for review and/or approval/consolidation into the enterprise's overall budget. Moreover, other users of the method/system disclosed herein are able to readily determine the status of such projects through exemplary status boards 402 , 402 a .
  • status board 402 two informational columns are displayed: entity and status.
  • Exemplary status board 402 provides information relevant to the European sales function and conveys the budget submission status of sales budgets for individual European countries, e.g., France (submitted), Italy (modeling) and Switzerland (review).
  • Typical status indicia that may be advantageously utilized according to the present disclosure include: modeling (the budget submission is a work in progress); submitted (the budget submission has been submitted to the appropriate management personnel for approval); review (the budget submission is being reviewed by the appropriate management personnel); and approved (the budget submission has been approved by the appropriate management personnel).
  • the budget submission is preferably “locked,” i.e., unavailable for further change by the submitter once the status reaches the “submitted” stage.
  • the user who is preparing the budget submission determines when the status should be changed to the “submitted” stage, e.g., through a prompt when the document/schedule/spreadsheet is refreshed and/or uploaded to server 102 .
  • This functionality preferably permits the user involved in preparing a submission to control the point at which such submission is viewable by other participants in the budgeting process.
  • approved the individual budget submission is consolidated or “rolled up” into the enterprise's overall budget that takes form as individual submissions reach the approved stage.
  • the enterprise's overall budget (and subparts thereof) are automatically consolidated from submissions made by individual users, regardless of budget submission status, thereby providing budget participants with a snapshot of the budget status at any given time in the development process.
  • status board 402 a With reference to status board 402 a , the two information columns discussed with reference to status board 402 are repeated therein. However, additional columnar information is conveyed in status board 402 a , namely columns entitled “responsible,” “updated,” and two icon columns.
  • the first icon column provides information concerning hyperlinks to supporting documents associated with the budget submission
  • the second icon column provides a direct link to an email/message posting wizard associated with the method/system of the present disclosure.
  • a user of the method/system of the present disclosure has the ability to modify his/her screen views, subject to certain administrative controls, so as to view those aspects of the budgeting process of particular interest.
  • exemplary screen view 400 the user has opted to devote two screen blocks to information concerning the status of various budget submissions, evidencing the importance of such status information to this user.
  • the “responsible” and “updated” columns provide information concerning the individual assigned responsibility for preparing/submitting the subject budget documents (e.g., “MGRCH” for Switzerland) and the date such budget document was last updated (e.g., “Apr. 18, 2000” for Switzerland), respectively.
  • MGRCH subject budget documents
  • the date such budget document was last updated e.g., “Apr. 18, 2000” for Switzerland
  • MRGIT responsible individual
  • the European budget submission which is likely, at least in part, a consolidation of the individual European budget submissions, is also at the modeling stage, although a first version was uploaded to server 102 on Apr. 17, 2000.
  • an immediate email/message could be directed to “MRGIT” by clicking on the associated icon in status board 402 a , thereby using browser 110 to facilitate immediate communications related thereto.
  • two of the illustrative budget submissions include supporting document icons, namely the French and Swiss submissions.
  • Supporting documents may constitute any file, document or other information source deemed worthwhile by the originator of the submission, and may be linked to the submission as a whole or to individual cells and/or aspects of a submission, e.g., a specific cell or dimension of a submitted spreadsheet.
  • the originator of a budget submission may advantageously and easily include word processing document(s), ancillary and supporting spreadsheet(s), PowerPoint presentation(s), graphic, audio and/or video file(s), hyperlinks to information on the Internet and/or World Wide Web, and the like, to his/her budget submission, thereby ensuring an informed evaluation of the contents thereof.
  • FIG. 5 An exemplary screen view 500 associated with submission of supporting document 502 is provided in FIG. 5 .
  • Supporting document 502 is entitled “Supporting Schedule—Salary and Fringe Detail By Employee” and reflects, in spreadsheet form, employee-by-employee information concerning personnel within the Swiss sales organization.
  • the “Submit Supporting Document” function has been accessed in menu 504 from toolbar 506 , according to the method/system of the present disclosure.
  • submission of supporting document 502 preferably entails completion of submission screen 508 by which the submitter confirms the title of supporting document 502 , the caption to be assigned supporting document 502 for purposes of communications related thereto, a description thereof, and recipients of the supporting documentation.
  • the submitter has the ability to limit distribution of supporting document 502 to personnel having a potential need and/or interest in review thereof. Moreover, the submitter is provided the option of notifying distribution recipient(s) that of supporting document 502 has been submitted to the system disclosed herein.
  • a document board is available for screen view by participants in the budgeting process, such document board providing a centralized list of supporting documentation that has been submitted in connection with the budget process.
  • FIGS. 6 and 7 exemplary screen views 600 and 700 are provided in which budget-related spreadsheets 602 , 702 are depicted. While spreadsheets 602 , 702 both relate to Global Motors' Budget 2001 effort, the two spreadsheets 602 , 702 differ in the comparisons being made. More particularly, spreadsheet 602 compares “actual” figures as of March 2000 to “budget” figures through March 2001, whereas spreadsheet 702 compares the same “budget” figures through March 2001 to the “forecast” figures for March 2000. The variance calculations are derived from the respective comparisons, as is known in the art of spreadsheet design, operation and use.
  • the rendering of the columnar data contained therein is driven by the “current view” selections reflected in the current view toolbars 604 , 704 .
  • the current view toolbars 604 , 704 are central to the operation and use of the budgeting method/system of the present disclosure in that the retrieval of data, e.g., from database 114 , enterprise source 116 and/or the data cache of client 104 , is based on the selections made therein.
  • the user has selected as his/her current view the “Budget2001 spreadsheet (block 606 ), the “Revenue” account (block 608 ), the “Actual” category (block 610 ), the “GlobalMotors” entity (block 612 ), the “AllVehicles” products (block 614 ), the “2001.Mar” time (block 616 ), and the “Periodic” measure (block 618 ).
  • the user's current view determines the appropriate data to be accessed, retrieved and loaded into the spreadsheet engine for rendering of spreadsheet 602 .
  • the key cache of client 104 advantageously determines the degree to which data required to render spreadsheet 602 is contained within the data cache, formulates a single request/query to be transmitted to server 102 across network 106 to obtain data not contained within the data cache, and loads data retrieved from server 102 into the data cache upon receipt thereof, as described hereinabove.
  • the formatting of spreadsheet 602 is preferably predetermined according to the present disclosure, although a user's ability to design specialized/customized spreadsheets based on conventional spreadsheet technology is contemplated according to the present disclosure.
  • the user's sole change to his/her current view relative to screen view 600 is the selection of the “Budget” category in block 710 based on drop down menu 620 depicted in FIG. 6 .
  • the remaining fields/dimensions of the user's current view remain unchanged in current view toolbar 704 relative to current view toolbar 604 .
  • the spreadsheet engine automatically renders an altogether different spreadsheet 702 .
  • the selections contained in the remaining, unchanged current view blocks 706 , 708 , 712 , 714 , 716 , 718 define the data that must be accessed by client 104 for the rendering of spreadsheet 702 .
  • the defining aspects of the unchanged current view blocks advantageously limit the amount of information/data to be retrieved by client 102 .
  • client 102 would potentially seek to retrieve information/data associated with a host of entities not required to render the desired spreadsheet.
  • the automatic narrowing of the data retrieval request based on the user's selections in the current view toolbar 604 , 704 greatly improve the speed, reliability and efficacy of the method/system of the present disclosure.
  • the “current view” functionality together with the Web-based, browser driven application design described herein effectively transform static spreadsheets into dynamic, reusable reports that leverage and significantly enhance a user's ability to “slice and dice” data to arrive at beneficial financial results.
  • a series of advantageous functional commands may be utilized to retrieve, send and display specific data, thereby enhancing the power and flexibility thereof.
  • These functional commands may be used in conjunction with cell/dimension references within a spreadsheet, to make a report or screen view behave in a certain way.
  • EvDIM Application, Dimension retrieves the property “DimName” dim Type) from tblDimension. Its parameters are “AppName” and “dimType”
  • EvINP Application, Input value Allows input into the cell containing member1, the formula and then sends that input to member2, . . .
  • EvCV Application, Current view Returns the current view setting for the Dimension
  • EvPRO Application, Property Returns the value of a given property of Member, Property) a member.
  • EvSND Value Send value References another cell and sends the Reference, value in that cell to the server when the Application, Dim1, eSubmit/Refresh Schedules command Dim2, . . . , DimN) is selected.
  • the parameters specify the dimensions that identify where the data is to be sent in the database.

Abstract

A method and system for facilitating information exchange between individuals and entities interacting on a shared project are provided, and more particularly to a method and system for horizontal, i.e., non-hierarchical, participation in and/or contribution to a spreadsheet-based project. The method and system is Web-based and utilizes conventional browser and spreadsheet technology to achieve collaborative exchanges of information on an enterprise-wide basis. The method and system also facilitate efficacious remote information access and exchange, e.g., over a computer network such as the Internet and/or the World Wide Web, through a caching function that combines individual queries initiated by a spreadsheet program before transmitting across a network to a server for consideration.

Description

    BACKGROUND
  • 1. Technical Field
  • The present disclosure relates to a method and system for facilitating information exchange between individuals and entities interacting on a shared project, and more particularly to a method and system for horizontal, i.e., non-hierarchical, participation in and/or contribution to a spreadsheet-based project. In one embodiment of the present disclosure, the method and system facilitate efficacious remote information access and exchange, e.g., over a computer network such as the Internet and/or the World Wide Web.
  • 2. Background of the Disclosure
  • The use of spreadsheets to collect, assess, monitor and manage information and data is pervasive. Over time, spreadsheet technology has evolved into a host of computer-based systems that facilitate flexibility and diverse applications, both for personal and business uses. Software products such as VisiCalc, Lotus 1-2-3, Quattro Pro and Excel have greatly expanded the availability and use of computer-based spreadsheet applications. Spreadsheet technology has also become part of innumerable “legacy” systems developed by companies to meet their specific needs and objectives, as those needs have evolved over time.
  • The computer-based systems and procedures for budgeting/forecasting corporate performance and for monitoring/evaluating actual performance relative to budget/forecast exemplify both the power and the limitations of current spreadsheet technology. A typical budgeting process is hugely time-consuming, cumbersome and inefficient, entailing countless iterations through reams of data. Typically, the budgeting process involves synthesis of historical information, competitive issues, long and short term corporate objectives, and forecasted revenues and expenses. Participants in a typical budgeting process are called upon to provide relevant information within their areas of responsibility and/or expertise. This information is fed into a spreadsheet program for ultimate consolidation into an overall budget.
  • Budgeting participants are often dependent on additional individuals within the organization to provide necessary information and input, e.g., information as to historical and projected performance, competitive pressures and the like. The involvement of these additional individuals is generally limited in that their participation in the budgeting process is controlled and/or filtered by the individual(s) within the corporate hierarchy to or through whom such individuals report. Moreover, current budgeting procedures are generally unable to effectively address and/or recognize the inter-related and inter-dependent nature of individually forecasted numbers. For example, if the sales organization forecasts a significantly greater percentage of sales in the far east, the various support functions that will be impacted by such increased sales, e.g., shipping and receiving, customer service, etc., may need to adjust their forecasts to reflect the shift in sales. However, current budgeting procedures generally do not facilitate the types of communications required to identify such variations and, once identified, to adjust the budget/forecast figures to accommodate such variations. Despite the significant expenditure of effort and expense, the budgeting process often lacks long-term value to management.
  • The implications of failures in the budgeting process are significant. First, individuals who are required to provide input to the budgeting process through a “superior” in the corporate hierarchy are often disenfranchised and frustrated by their limited involvement. Moreover, these individuals cannot be expected to take ownership of, or responsibility for, the final budget because their involvement was so attenuated and limited. Second, the hierarchical approach to budgeting generally infects the final budget with erroneous assumptions because the inter-related and inter-dependent nature of revenue/expense variables goes largely unrecognized and ignored. Third, the rationale behind various submissions to the budgeting process is often lost in the process. For example, if the R&D function is requesting an increase in headcount/expenditure because the sales/marketing function has identified a specific market need/opportunity that requires additional R&D effort, the underlying rationale for the R&D request, if known by “upper management,” may compel an endorsement of the R&D request. Countless “rationales” support individual budget submissions, the majority of which are lost in the hierarchical budget process.
  • A further limitation of current budgeting processes is a general inability to integrate the budgeting process, and particularly the company's agreed upon budget, into management of the ongoing operation of the company. While certain members of the management team closely monitor company performance relative to budget, and such performance is periodically communicated to other segments of the corporate operation, particularly when performance is lagging budget forecasts, individuals outside of the “management circle” are largely unable to, and precluded from, measuring their performance against budget.
  • The failure to integrate the agreed upon budget into the day-to-day operations of a corporation has several negative implications. First, performance trends are not known to individuals having the ability to respond to such trends in a timely fashion. Second, ownership of and commitment to the budget by individuals outside of the “management circle” is further undermined. Third, a corporate culture based on performance against agreed upon objectives is significantly undermined. Fourth, the ability of non-management individuals to develop management skills is minimized. And fifth, an opportunity to learn from year-to-year budget issues, e.g., recognizing the interdependence of R&D expenditure to legal expenses for patent procurement, will go unfulfilled.
  • A further challenge to the effective management of any geographically dispersed organization is the timely exchange of, and access to, critical information. This challenge is particularly pronounced in the areas of budget preparation and the measurement/management of performance against budget. While a company generally collects, in real time, the data needed to formulate a budget and the performance data necessary to measure performance against budget, the availability of that data to individuals outside the management circle is generally restricted, if available at all. With the continued evolution of data communication, e.g., over the Internet and/or the World Wide Web, the infrastructure required to facilitate timely exchange and availability of data is generally available.
  • Several issues present themselves when companies evaluate the potential for allowing widespread access within the corporation to proprietary financial information, e.g., budgeting data, performance data, and the like. First and foremost is the need that the confidentiality of such critical information be maintained and that individuals having access to different levels of information be appropriately restricted. A further issue confronting such companies is the latency associated with transmission of such information to remote locations. For a system designed to facilitate remote access to corporate information to be successfully implemented and utilized, the system's response speed must be reliably optimized. Moreover, the system design must facilitate maximum flexibility in the analytical tools available to system users so that optimal assessments and decisions may be made in a timely fashion.
  • Despite efforts to date, particularly the widespread availability of spreadsheet-based systems and software programs (e.g., Lotus 1-2-3 and Excel), a need remains for a method and system for facilitating information exchange between individuals and entities interacting on a shared project. Indeed, a pronounced need exists for a method and system that facilitate horizontal, i.e., non-hierarchical, participation in and/or contribution to a shared project, e.g., a spreadsheet-based budgeting and/or performance measurement tool. Additionally, a need exists for a system and method that facilitate remote information access and exchange, e.g., over a computer network such as the Internet and/or the World Wide Web, with reduced latency.
  • SUMMARY OF THE DISCLOSURE
  • The present disclosure is directed to a new and useful method and system for facilitating information exchange between individuals and entities interacting on a shared project, and more particularly to a method and system for horizontal, i.e., non-hierarchical, participation in and/or contribution to a spreadsheet-based effort. In one embodiment of the present disclosure, the method and system facilitate efficacious remote information access and exchange, e.g., over a computer network such as the Internet and/or the World Wide Web, while reducing latency associated therewith.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • So that those having ordinary skill in the art to which the disclosed method and system appertains will more readily understand how to employ and use the same, reference may be made to the drawings wherein:
  • FIG. 1 is a schematic depiction of a network-based system according to the present disclosure;
  • FIG. 2 is an exemplary screen display according to an embodiment of the present disclosure;
  • FIG. 3 is a second exemplary screen display according to an embodiment of the present disclosure;
  • FIG. 4 is a third exemplary screen display according to an embodiment of the present disclosure;
  • FIG. 5 is a fourth exemplary screen display according to an embodiment of the present disclosure;
  • FIG. 6 is a fifth exemplary screen display according to an embodiment of the present disclosure; and
  • FIG. 7 is a sixth exemplary screen display according to an embodiment of the present disclosure.
  • DETAILED DESCRIPTION OF PREFERRED EMBODIMENT(S)
  • The present disclosure provides a method and system for facilitating information exchange between individuals and entities interacting on a shared project. The method and system advantageously facilitates horizontal, i.e., non-hierarchical, participation in and/or contribution to the shared project. In a preferred embodiment of the present disclosure, the method and system facilitate input to and participation in the creation of a spreadsheet, e.g., in formulating an enterprise-wide budget and/or forecast. In a further embodiment of the present disclosure, the method and system facilitate efficacious remote information access and exchange, e.g., over a computer network such as the Internet and/or the World Wide Web, while reducing latency associated therewith.
  • The method and system of the present disclosure provide, inter alia., a Web-based financial analytic solutions and professional services utility that can be effectively utilized by companies of any size, across any and all industries and geographic locations. The method and system optimally utilizes and combines the benefits of a centralized data and document repository with the flexibility of distributed spreadsheet technology that effectively leverages the infrastructure of the Internet. Moreover, the method/system disclosed herein allows users to dynamically link budget spreadsheets to centrally administered OLAP and relational databases.
  • According to the present disclosure, a Web-centric “meeting place” for all levels and functional areas of an enterprise may be advantageously created to facilitate: (i) communication concerning corporate strategy; (ii) assessment of critical assumptions necessary for effective budgets/forecasts; (iii) creation and collaboration in budget creation; (iv) tracking and managing of the budgeting process; and/or (v) viewing of personalized performance metrics. Through utilization of the method/system of the present disclosure, companies are better able to align budgets with corporate strategies and deliver accurate budgets faster and with less effort. The present method/system require minimal user training, minimal maintenance and/or support resources from internal IT personnel, and optimally utilizes and is based upon accepted technology standards.
  • Turning to FIG. 1, a schematic depiction of an exemplary system 100 according to the present disclosure is provided. System 100 includes a server 102 and an exemplary client 104 that communicate across a computer network 106, e.g., an intranet, the Internet and/or the World Wide Web. As will be readily apparent to persons skilled in the art, client 104 is intended to be representative of a plurality of clients 104, each of which may communicate with server 102 via network 106, whether sequentially or simultaneously, provided appropriate security clearance is achieved.
  • With reference to network 106, it is contemplated according to the present disclosure that clients 104 may access and communicate with network through any data communication technology. For example, client 104 may comprise one or more personal computers that are part of a conventional local area network (LAN) that is wired directly to the Internet through a conventional port, e.g., a T-connection. Client 104 may also constitute one or more personal computers that use a modem to connect via a phone or cable connection to a network. The personal computers may also be part of a peer-to-peer network. In any case, client(s) 104 are adapted to communicate with network 106 such that information may be transmitted to and from server 102, e.g., through one or more routers, wide area networks (WANs), satellites, hubs, repeaters, bridges and gateways, as is known in the art. Data transmissions are typically passed from network to network in packets that include not only the substantive aspects of the data transmission, but addresses, error checking information and the like.
  • With further reference to FIG. 1, client 104 includes at least two software applications for purposes of the method and system of the present disclosure: a spreadsheet software program 108 and a Web browser software application 110. Spreadsheet program 108 and browser 110 are loaded into the memory of client 104 or otherwise available for utilization by client 104, e.g., from an ancillary floppy, CD-ROM, DVD and/or tape drive. Any conventional browser 110 is contemplated for use according to the method/system of the present disclosure, e.g., Netscape Communicator or Microsoft Internet Explorer. Similarly, the method/system of the present disclosure may be utilized with any spreadsheet program 108, e.g., Lotus 1-2-3, Quattro Pro, Excel and/or legacy spreadsheet systems. A preferred spreadsheet program 108 for use by client 104 according to the present disclosure is Microsoft Excel 2000. Indeed, the method/system of the present disclosure advantageously utilizes the full functionality of Microsoft Excel 2000, e.g., report wizards, spreadsheet design, spreadsheet modification, etc., as is known to persons skilled in the operation and use thereof. Preferred browser programs 110 for use by client 104 according to the present disclosure are Microsoft Internet Explorer 4.0 (or later) and Netscape Communicator V4.0 (or later). As with Microsoft Excel 2000, the method/system of the present disclosure advantageously utilizes the full functionality of such browser programs, as are known to persons skilled in the operation and use thereof.
  • Beyond spreadsheet program 108 and browser 110, client 104 typically contains and/or has direct access to a variety of ancillary user documents 112, whether stored within its memory and/or accessible from an associated drive or server. For example, client 104 may have access to user documents 112 that include word processing documents, audio and/or graphical files, spreadsheets and the like. Client 104 is adapted to work “off-line,” i.e., independent of network 106, or “on-line,” i.e., in communicative interaction with network 106 and server 102. When working off-line, client 104 will not have access to data stored in database 114 associated with server 102, nor will client 104 be able to feed data to database 114. Nonetheless, data from database 114 may be pre-downloaded to client 104 when on-line and, to the extent data is input, modeled and/or modified at client 104 by a user working off-line, such input/modified data may be stored in the memory of client 104 and subsequently transmitted/uploaded to server 102 via network 106 thereafter. In a preferred embodiment of the present disclosure, client 104 includes an operating system selected from Microsoft Windows or Microsoft NT Workstation.
  • With further reference to FIG. 1, server 102 facilitates client 104 communication and data exchange with database(s) 114. Server 102 preferably facilitates access to enterprise systems and/or sources 116, e.g., an enterprise's ERP system 118, general ledger 120 and other systems 122. System 100 preferably provides dedicated high-speed connections to multiple, scalable backend databases 114 and file servers 102. In a preferred embodiment of system 100, server 102 utilizes the Windows NT 4.0 operating system and, based on the approximate number of users, is configured as follows:
    Number of Users Number of Servers Exemplary Components
    Up to 50 1 server Web/File/SQL/OLAP
    50 to 250 2 servers Web/File
    SQL/OLAP
    250 to 500 3 servers Web or Web
    File   File/SQL
    SQL/OLAP  OLAP
    500 to 1000 4 servers Web 1 or Web
    Web
    2   File
    File    SQL
    SQL/OLAP  OLAP
    1000 and beyond 5 + servers 2 or more Web
    File
    SQL
    OLAP
  • To maximize speed and performance characteristics, server(s) 102 are generally uniformly configured, while permitting customization that best meets individual user's system requirements. Typical server 102 configurations according to the present disclosure are set forth below:
    Component Low End High End
    Pentium III/500 CPU Dual Quad
    RAM 256 MB 2 GB
    Hard Drive(s) 9 GB Raid 5 20 GB Raid 5
  • In preferred embodiments of the present disclosure, system 100 provides security across all physical and logical components, thereby ensuring high level data and application integrity. Functional security is generally provided by allowing system administrator(s) to restrict user access to features, functionality, documents and data, down to individual dimensions or fields within the spreadsheet program 108. In addition, connections security is generally achieved according to the present disclosure by providing data encryption of all information exchanged via the Internet and/or World Wide Web by utilizing SSL connections through https protocol and encryption keys.
  • Turning to FIG. 2, an exemplary screen layout 200 is provided from which certain aspects of the method/system of the present disclosure may be described. Screen 200 is representative of screen layouts that may be viewed by users of clients 104. The application software required to provide the functionality described herein may be readily downloaded and/or installed at client 102, e.g., by an Internet download as is known in the art. Installation of such application software may advantageously provide an icon on the desktop of client 102, facilitating user access thereto. Sign-on to system 100 typically includes appropriate name/password entry to validate user access.
  • With further reference to FIG. 2, the content on screen 200 is contained in a plurality of cells or blocks 202. In particular, on exemplary screen 200, cells 202 include “map” 204, “bulletin from others” or “bulletin board” 206, “CEO vision” 208, and “comparative analysis” spreadsheet 210. Each individual cell 202 is preferably provided with conventional functionality keys that permit the cell view to be enlarged, edited, scrolled and/or closed. Reorganization and/or modifications to the layout and styling associated with information displayed on screen 200 may be facilitated through conventional menu-driven commands 212, subject to inherent controls and/or limitations that may be built into the screen display functionality. For example, system 100 may be programmed such that the positioning of the CEO vision 208 may not be modified, thereby ensuring ready viewing of information considered to be critical to the enterprise. Preferably, system 100 allows as many as thirty blocks 202 to be viewable on each page or screen view, thereby allowing a user to scroll from block to block for efficient access to relevant information. As with conventional applications, individual blocks 202 may be enlarged to fill a user's screen through appropriate keyboard/mouse commands, e.g., double clicking on the desired block 202.
  • As demonstrated by screen 200, system 100 advantageously facilitates group participation in an enterprise-wide project, e.g., budgeting and/or forecasting, through the expeditious sharing of relevant data and information in real time. Thus, CEO vision 208 illustrates the types of information that can be conveyed to participants in the budgeting process, e.g., corporate objectives, budgeting parameters, strategic opportunities and the like. Information conveyed in CEO vision 208 may be periodically updated and/or revised, and may be replaced and/or supplemented by other management information, e.g., message(s) from the CFO, controller and/or other financial personnel concerning the status and/or parameters for completion of the budgeting process.
  • Based on the functionality of browser 110, the informational content within each of cells 202 may advantageously link to ancillary sources of information, e.g., documents contained within an enterprise source 116, e.g., supporting spreadsheets, word processing documents, PowerPoint presentations, video files, sound files and the like, or to external sources of information located on the Internet and/or World Wide Web, e.g., news stories, analyst reports, competitor publications, and the like. The ability to connect ancillary sources of information with communications associated with the budgeting process afforded by the method/system of the present disclosure significantly improves the efficiency, reliability and accuracy of the budgeting process. Moreover, through use of conventional hyperlinking technology, the direct association of such ancillary information with a specific aspect of a budget-related submission is technically efficient and will not encumber or otherwise slow the budget process. Indeed, recipients of such budget-related submissions will be readily able to access supporting documentation and assess the merits of a submission expeditiously and with full knowledge of relevant background information.
  • Referring again to FIG. 2, European map 204 is illustrative of the types of information that might be depicted on screen 200 that would be of particular relevance to an individual participating in the budgeting process, e.g., an individual responsible for European sales. European map 204 could be stored on client 104, within database 114, within an enterprise source 116 and/or on the Internet/World Wide Web. Data blocks 204 a, 204 b include detailed information concerning the underlying subject matter of map 204 and may be linked thereto from map 204 and/or formatted into the display of map 204. The data content of data blocks 204 a, 204 b may be derived from any of the potential data sources detailed hereinabove.
  • As noted above, screen 200 is merely illustrative of the screen views provided by the method/system of the present disclosure. For a user having different functional responsibilities within the company, e.g., the vice president of research and development or the general counsel, map 204 would advantageously be replaced by content of relevance to those users, e.g., organization charts, program reports, statistics concerning new product introductions, etc. In addition, a user having interest in European sales, whose personal page is depicted in FIG. 2 according to the method/system of the present disclosure, has the ability to periodically change the content of cell 202 from map 204 to modified content of interest, e.g., using the edit function depicted in screen 200.
  • With reference to bulletin board 206, the method/system of the present disclosure advantageously provide a direct communication function that, in certain respects, resembles an email system, but for the purposes of the present disclosure, far surpasses email in effectiveness and communicative efficiency. Bulletin board 206 facilitates information sharing by providing a centralized location for posting and/or storing information relevant to a task, e.g., budgeting. For example, users may desire to post information concerning budget guidelines, timeliness, templates and the like on bulletin board 206. Rather than email this information to everyone, thereby assuming the inherent risk that someone will be inadvertently omitted from the email distribution list, the information can be easily posted to bulletin board 206 according to the present disclosure, where anyone having a need and/or interest in the posted information will have ready access thereto. In a preferred embodiment of the present disclosure, a user posting information to bulletin board 206 has the option of emailing recipients and/or other interested parties with notification that the posting has occurred, thereby increasing the likelihood of immediate review of the posted information.
  • In a further preferred embodiment of the present disclosure, postings to bulletin board 206 may be categorized by category and/or document type. For example, in processing a bulletin board posting, a user may be required to designate the type of document being posted from among a predetermined list of categories, e.g., assumption, guideline, schedule, timetable and package. With reference to the above-noted categories, “assumptions” may typically originate from executive personnel and may be used to communicate the company's vision for the future to members of the organization, e.g., corporation is looking for twenty percent top-line growth or corporation is looking to increase gross margins by three percent. “Guidelines,” like assumptions, may typically originate from senior members of the corporation and may place caps or floors on aspects of the budgeting process, e.g., T&E expenses to increase by no more than three percent or distributor sales to increase by at least five percent year-over-year. “Schedules” may include templates for inputting data, e.g., an input schedule, and “timetables” may include timelines for submitting data and/or dates for key meetings/corporate events. “Packages” may include budget-related informational packages, e.g., background information required by individuals within the organization to fulfill their responsibilities in the budgeting process. Additional categories may be added by a system administrator, as needed by individual corporations from time-to-time.
  • The system/method of the present disclosure generally provides an address book or “listing” for use in posting messages on bulletin board 206. Message transmission may be directed to one or more targeted recipients, thereby facilitating non-hierarchical dialog concerning the budgeting process. In addition, predetermined groups may be provided and/or established to facilitate communications to individuals having a shared interest in types of postings. Messages posted to a collaborator's bulletin board 206 may advantageously provide narrative information and/or inquiries and may enclose, attach and/or link to documents contained within system 100, e.g., in database 114 or enterprise source 116. Messages are instantaneously posted to the recipient's bulletin board 206, independent of any email system, and facilitate direct non-hierarchical communication and collaboration in the budgeting process. Viewing of posted message(s) by the recipient can be confirmed by the individual making the transmission, thereby ensuring that the recipient has received the desired communication. Recipients are able to forward the message to additional recipients, but are unable to change the underlying content thereof. Postings may be sorted based on a multiplicity of attributes, e.g., data, transmitter, topic and the like, and may be edited and/or deleted by the user who posts the message.
  • With further reference to FIG. 2, comparative analysis spreadsheet 210 is representative of a host of spreadsheets and spreadsheet-based documents that may be accessed, modeled and submitted as part of the collaborative budgeting process according to the method/system of the present disclosure. Exemplary comparative analysis spreadsheet 210 is typically run on and rendered by a conventional spreadsheet program 108, e.g., Excel, and typically derives its information, formulas and/or data from database 114 and/or other resources 116. Alternatively, when working off-line, comparative analysis may derive its information, formulas and/or data from the hard drive of the user's personal computer and/or ancillary drives associated with such personal computer. A user may view, modify, update, model, test assumptions, and the like by inputting data and/or formulas to comparative analysis spreadsheet 210, or such other spreadsheets as may be displayed on screen 200 according to the present disclosure.
  • When a user enters a formula into a cell or dimension of spreadsheet 210, the spreadsheet program 108 typically processes the formula through a minicompiler that reformats the function names, as is known in the art. The result of the compilation is typically written to a memory location reserved for that cell or dimension. Pointers to other formulas in the spreadsheet are provided by the spreadsheet program 108, effectively creating a list of cells that contain formulas, thereby saving the spreadsheet program 108 time and providing improved efficiency during recalculations. Deletion of a formula by the user results in redirection of its pointer so as to reconnect the formula chain. When the spreadsheet is recalculated, spreadsheet program 108 saves time by making a first pass through the pointer list to identify cells or dimensions that contain formulas. The spreadsheet program typically finds those formulas that depend on data that has changed and marks each one that needs to be recalculated.
  • Having identified the cells requiring recalculation, spreadsheet program 108 typically makes a second pass through the list focusing only on formulas marked for recalculation. For each, spreadsheet program 108 typically determines if the formula depends on another formula that has yet to be recalculated. If so, spreadsheet program 108 adjusts the cell's pointers and the pointers of connected cells/dimensions so that the dependent formula(s) move to the end of the list. When formulas are encountered that are not dependent on yet-to-be calculated formulas, spreadsheet program 108 typically undertakes to make the calculation required by such formulas. Critical to the calculations described herein is the efficiency of the required data retrieval associated therewith.
  • In the method/system of the present disclosure, spreadsheet program 108 is advantageously utilized by users that are dispersed geographically. As such, data is optimally maintained in central database repositories, e.g., database 114 and enterprise sources 116. Each time a query and/or response is transmitted between a user's client 104 and server 102, e.g., data retrieval from or input to database 114, latency issues associated with network 106 are encountered. According to the present disclosure, a unique caching method/system are provided that optimize the efficiencies associated with data exchange between client 104 and server 102. The caching method/system disclosed herein is flexible in design and operable with any spreadsheet program 108 and/or hardware/software infrastructure.
  • In conventional spreadsheet programs, data retrieval is generally achieved according to one of the following modalities: (i) cell-based responses to multi-parameter queries yield cell blocks of data that are not delivered directly to cells within spreadsheet; (ii) cell-based responses to individual queries are delivered directly to the spreadsheet cell requiring such data, but each cell-based data query automatically results in an independent and immediate inquiry to the database for the required data; and (iii) a pivot table. In distinct contrast to conventional data retrieval modalities, the method/system of the present disclosure utilizes a caching system on client 104 that greatly facilitates data retrieval and reduces potential delays associated with the latency of network 106.
  • According to the caching system of the present disclosure, client 104 includes a first caching function, termed a “data cache,” that automatically caches data that is input at client 104 or retrieved to client 104, e.g., from database 114 or enterprise source 116. Thus, with reference to spreadsheet 210 in FIG. 2, when the revenue figure for “Budget—Total Year 2001” is first retrieved from database 116 by client 104 (i.e., $41,219,727), such figure is automatically stored in the data cache. Thereafter, each time a recalculation of spreadsheet 210 is required, the data cache will be accessed to obtain the previously cached revenue data required by the cell entitled Budget—Total Year 2001. Thus, according to the caching method/system of the present disclosure, data contained in the data cache of client 104 need not be retrieved across network 106 from server 102.
  • A second caching function possessed by client 104 according to the present disclosure enables client 104 to greatly minimize the numbers of inquiries made and response received across network 106. According to this second aspect of the caching system, client 104 possesses a “key cache” functionality that automatically checks internally for each piece of data requested by spreadsheet program 108 and, to the extent such data is within the data cache of client 104, the key cache provides such data immediately to spreadsheet program 108 for use therein. Additionally, the key cache eliminates such data requirement from any potential requests to be made across network 106, i.e., data contained in the data cache is automatically omitted from queries across network 106. Conversely, pieces of data that are requested by spreadsheet program 108 and are determined by the key cache not to be in the data cache, are retained by the key cache for combination with all other such data requests before any transmission is made across network 106.
  • In use, the advantageous caching function of the present disclosure operates as follows. When the spreadsheet program 108 is called upon by the user of client 104 to render a spreadsheet, e.g., spreadsheet 210 in FIG. 2, or to re-render a spreadsheet to reflect revised data, formatting and/or formulas, the spreadsheet program 108 calls upon the client to provide the data necessary, formatting and/or formulas necessary to respond to the user's request. The key cache determines whether all requested data, formatting and/or formulas are contained within the data cache of client 104. To the extent the required data, formatting and/or formulas are contained within the data cache, such requested information is immediately provided to spreadsheet program 108 for use therein. However, to the extent the data cache does not contain requested data, formatting and/or formulas, the key cache accumulates such unfulfilled requests for combination into a single inquiry to be transmitted across network 106 to server 102. The cached queries are generally built into a small object for transmission across network 106. In a preferred embodiment of the caching function described herein, the spreadsheet program 108 is instructed not to re-render the spreadsheet until all required data is retrieved from server 102, thereby minimizing potential user confusion associated with partial renderings of spreadsheets at client 104.
  • When the spreadsheet program 108 has completed its requests for data, formatting and/or formulas, the key cache packages up the requests that could not be fulfilled by the data cache into a single data object and transmits those inquiries in a single query to server 102 across network 104. Upon receipt of the single inquiry, server 102 routes the query to the appropriate repository for response thereto, e.g., database 114 or enterprise source 116. Server 102 advantageously collects the individual pieces of information necessary to respond to the packaged query provided by the key cache, and packages those pieces of information for a single responsive transmission across network 106 to client 104.
  • Upon receipt of the responsive transmission from server 102 at client 104, the key cache automatically stores the responsive pieces of data, i.e., data, formatting and/or formulas, in the data cache for future reference. In a preferred embodiment of the present disclosure, the key cache prompts spreadsheet program 108 to initiate a recalculation upon receipt of the needed data from server 102. In attempting to recalculate, spreadsheet program 108 queries the cache within client 104 for all needed information/data, i.e., the data, formatting and/or formulas that were not previously contained in the data cache. In response to this prompted query from spreadsheet program 108, the key cache looks to the data cache for the needed information and transmits such information to the spreadsheet program 108 for use therein. Spreadsheet program 108 feeds the data to its calculation engine to sequentially generate the calculated values for the cells requiring such calculated values, and renders the final spreadsheet for viewing by the user at client 102..
  • Preferably, the caching function within client 104 of the method/system disclosed herein advantageously optimizes the transmissions across network 106 associated with user input of data, formatting and/or formulas at client 104 as well. Thus, the key cache preferably accumulates input by the user for a single transmission to server 102 across network. Moreover, the system/method of the present disclosure advantageously limits the amount of data retrieved from server 102 by defining fields otherwise left undefined in the query from spreadsheet program 108 by utilizing the fields of the “current view” (as described in greater detail hereinbelow) to fill in the missing or omitted fields/dimensions of the request. For example, if the request to build a cell within spreadsheet program 108 is for “sales revenue,” the method/system of the present disclosure preferably automatically determines from the current view of the user at client 104 that the sales revenue of interest relates to “European sales.” Absent the limitative “current view” modality, the key cache would be required to request retrieval of all “sales revenue” data from server 102, rather than the limited “European sales revenue” of interest for spreadsheet 210 that constitutes the “current view” for purposes of FIG. 2.
  • The caching function of the present disclosure thus serves to optimize interaction across network 106 in several key respects, thereby minimizing latency issues and increasing the speed and efficiency of spreadsheet program 108. While the caching function is described herein primarily with reference to the spreadsheet functionality of system 100, and more particularly with reference to the budgeting/forecasting/performance metrics of a preferred embodiment thereof, it is specifically contemplated that the caching functionality described herein may be beneficially employed in a wide range of networked applications and utilities, as will be apparent to persons skilled in the art based on the disclosure herein.
  • The system/method of the present disclosure advantageously overcomes the hierarchical limitations that have heretofore hampered the efforts of enterprises to budget and/or forecast performance and to subsequently measure performance metrics thereagainst, by enabling and empowering individuals to communicate in a non-hierarchical, e.g., lateral, manner. With reference to FIG. 3, exemplary screen layout 300 is depicted with a menu screen 302 positioned thereon. As noted previously, screen layout 200 depicted in FIG. 2 is illustrative of the types of screen views available according to the present disclosure and, based on the contents thereof, is representative of the type of screen view that an individual having direct or indirect involvement in European sales might avail himself/herself of. Screen view 300, by contrast, is more generic than screen view 200, and includes a library 304 of enterprise-related information, bulletin board 206, CEO vision 208, a spreadsheet 306 related to “Trend Analysis.” Spreadsheet 306 is representative of a utility provided according to the present disclosure to measure, monitor and communicate the performance metrics of an enterprise to globally dispersed corporate personnel in real time. With reference to the caching functionality discussed hereinabove, the budget-related aspects of spreadsheet 306 are likely to remain unchanged, will be cached within the data cache the first time they are retrieved from server 102, and will be provided from the data cache for re-rendering of spreadsheet 306 without the need to repeatedly access the data from server 102 across network 106.
  • With further reference to menu screen 302, links to a plurality of desktop views 308 are provided, namely the “company desktop,” the “manager desktop,” the “executive desktop,” the “admin desktop,” and “my desktop.” Screen view 300 corresponds to an illustrative “company desktop.” The links to alternative desktop views 308 depicted in menu screen 302, illustrate one aspect of the present disclosure that facilitates non-hierarchical collaboration in budgeting, forecasting and/or measurement of performance metrics. Each desktop view 308 represents a subgroup within an exemplary enterprise that may benefit from timely exchange of information. The groupings reflect different ways of looking at the interplay between an enterprise's workforce. For example, individuals at a manager level have issues that concern each of them, regardless of the functional group in which they work. e.g., accounting, engineering, quality control, human resources, etc. These managers are generally isolated from one another in developing budget/forecast information and in measuring their respective performance metrics. According to the method/system of the present disclosure, this isolation is overcome in favor of highly effective, timely and reliable access to each other and to the data necessary to perform their respective functions more effectively. Similarly, the subgroups defined by the executive desktop and admin desktop views 308 address issues of common interest and concern.
  • The blocks or cells 202 on each desktop view 308 will differ, as will the types and degrees of financial information/spreadsheets available to users having access to those desktop views. Each desktop is easily accessed by browser 110 at client 102. To the extent the data required to assemble a linked desktop view is contained in database 114 and/or enterprise resource 116 at server 102, client 102 will access such data via network 106, as discussed hereinabove. An administrator for the system of the present disclosure can easily create, amend and/or delete groups/subgroups in response to the enterprise's needs over time. Groups and/or subgroups may be established that constitute relatively arbitrary, yet relevant, employee subsets who benefit themselves and the enterprise in their collaborative interaction. Utilization of subgroups, e.g., the “admin desktop,” facilitates and fosters senses of empowerment, commitment and ownership for corporate personnel who participate in the budgeting process and/or who have access to performance metrics in a timely fashion.
  • Turning to FIG. 4, a farther exemplary screen view 400 is provided in which bulletin board 206 has been carried forward from screen view 200, although in a different position and in an expanded format. The expanded format of FIG. 4 includes information concerning the “caption” and the “description” of each posted message, as selected by the individual posting the message. In addition, screen 400 depicts illustrative status boards 402, 402 a, bulletin board 404 and a “My Selected” bulletin board 406. Bulletin boards 404, 406 illustrate a user's ability to view information in multiple formats, as may be desired by such individual. In particular, bulletin board 404 differs from bulletin board 404 in that the former collects messages originated by the user (“fronga”) whereas the latter collects messages originated by individuals other than the user. Similarly, bulletin board 406 collects messages selected by the user for reasons known to the user.
  • With particular reference to status boards 402, 402 a, an advantageous feature of a preferred embodiment of the present disclosure is that users are able to work with their submissions to the budget and to submit those on a periodic basis for review and/or approval/consolidation into the enterprise's overall budget. Moreover, other users of the method/system disclosed herein are able to readily determine the status of such projects through exemplary status boards 402, 402 a. Thus, with reference to status board 402, two informational columns are displayed: entity and status. Exemplary status board 402 provides information relevant to the European sales function and conveys the budget submission status of sales budgets for individual European countries, e.g., France (submitted), Italy (modeling) and Switzerland (review).
  • Typical status indicia that may be advantageously utilized according to the present disclosure include: modeling (the budget submission is a work in progress); submitted (the budget submission has been submitted to the appropriate management personnel for approval); review (the budget submission is being reviewed by the appropriate management personnel); and approved (the budget submission has been approved by the appropriate management personnel). Of note, the budget submission is preferably “locked,” i.e., unavailable for further change by the submitter once the status reaches the “submitted” stage. The user who is preparing the budget submission determines when the status should be changed to the “submitted” stage, e.g., through a prompt when the document/schedule/spreadsheet is refreshed and/or uploaded to server 102. This functionality preferably permits the user involved in preparing a submission to control the point at which such submission is viewable by other participants in the budgeting process. When “approved,” the individual budget submission is consolidated or “rolled up” into the enterprise's overall budget that takes form as individual submissions reach the approved stage. In a preferred embodiment, the enterprise's overall budget (and subparts thereof) are automatically consolidated from submissions made by individual users, regardless of budget submission status, thereby providing budget participants with a snapshot of the budget status at any given time in the development process.
  • With reference to status board 402 a, the two information columns discussed with reference to status board 402 are repeated therein. However, additional columnar information is conveyed in status board 402 a, namely columns entitled “responsible,” “updated,” and two icon columns. The first icon column provides information concerning hyperlinks to supporting documents associated with the budget submission, and the second icon column provides a direct link to an email/message posting wizard associated with the method/system of the present disclosure. As described hereinabove, a user of the method/system of the present disclosure has the ability to modify his/her screen views, subject to certain administrative controls, so as to view those aspects of the budgeting process of particular interest. Thus, in exemplary screen view 400, the user has opted to devote two screen blocks to information concerning the status of various budget submissions, evidencing the importance of such status information to this user.
  • As is readily apparent, the “responsible” and “updated” columns provide information concerning the individual assigned responsibility for preparing/submitting the subject budget documents (e.g., “MGRCH” for Switzerland) and the date such budget document was last updated (e.g., “Apr. 18, 2000” for Switzerland), respectively. From status board 402 a, it is immediately apparent that the sales budget for Italy has not yet been submitted by the responsible individual (“MRGIT”), but that such Italian budget submission is in the “modeling” process. It is also apparent that the European budget submission, which is likely, at least in part, a consolidation of the individual European budget submissions, is also at the modeling stage, although a first version was uploaded to server 102 on Apr. 17, 2000. If a user of the method/system disclosed herein was concerned about the status of the Italian budget submission, an immediate email/message could be directed to “MRGIT” by clicking on the associated icon in status board 402 a, thereby using browser 110 to facilitate immediate communications related thereto.
  • With reference to the supporting document icons depicted on status board 402 a of screen view 400, two of the illustrative budget submissions include supporting document icons, namely the French and Swiss submissions. Supporting documents may constitute any file, document or other information source deemed worthwhile by the originator of the submission, and may be linked to the submission as a whole or to individual cells and/or aspects of a submission, e.g., a specific cell or dimension of a submitted spreadsheet. Thus, the originator of a budget submission may advantageously and easily include word processing document(s), ancillary and supporting spreadsheet(s), PowerPoint presentation(s), graphic, audio and/or video file(s), hyperlinks to information on the Internet and/or World Wide Web, and the like, to his/her budget submission, thereby ensuring an informed evaluation of the contents thereof.
  • The advantages associated with facilitating the inclusion of such supporting documentation with a budget submission, and even more advantageously, facilitating the linkage of supporting documentation to individual cells and/or aspects of a budget submission are significant. Behind every budget submission are countless exercises, expectations, assumptions, objectives, rationales and competing interests. These factors generally cannot be conveyed in the numbers alone, and are often lost as the budget submission works its way through the budgeting process, e.g., to members of the senior management team. Facilitating linkage of such supporting documentation to the budget submission makes it possible for each budget contributor to communicate these factors, and provides a source of valuable background information in evaluating performance metrics as actual performance against the final budget commences.
  • An exemplary screen view 500 associated with submission of supporting document 502 is provided in FIG. 5. Supporting document 502 is entitled “Supporting Schedule—Salary and Fringe Detail By Employee” and reflects, in spreadsheet form, employee-by-employee information concerning personnel within the Swiss sales organization. As further depicted in FIG. 5, the “Submit Supporting Document” function has been accessed in menu 504 from toolbar 506, according to the method/system of the present disclosure. Submission of supporting document 502 preferably entails completion of submission screen 508 by which the submitter confirms the title of supporting document 502, the caption to be assigned supporting document 502 for purposes of communications related thereto, a description thereof, and recipients of the supporting documentation. Thus, the submitter has the ability to limit distribution of supporting document 502 to personnel having a potential need and/or interest in review thereof. Moreover, the submitter is provided the option of notifying distribution recipient(s) that of supporting document 502 has been submitted to the system disclosed herein. Preferably, a document board is available for screen view by participants in the budgeting process, such document board providing a centralized list of supporting documentation that has been submitted in connection with the budget process.
  • Turning to FIGS. 6 and 7, exemplary screen views 600 and 700 are provided in which budget-related spreadsheets 602, 702 are depicted. While spreadsheets 602, 702 both relate to Global Motors' Budget 2001 effort, the two spreadsheets 602, 702 differ in the comparisons being made. More particularly, spreadsheet 602 compares “actual” figures as of March 2000 to “budget” figures through March 2001, whereas spreadsheet 702 compares the same “budget” figures through March 2001 to the “forecast” figures for March 2000. The variance calculations are derived from the respective comparisons, as is known in the art of spreadsheet design, operation and use.
  • Of note with respect to screen views 600, 700, the rendering of the columnar data contained therein is driven by the “current view” selections reflected in the current view toolbars 604, 704. The current view toolbars 604, 704 are central to the operation and use of the budgeting method/system of the present disclosure in that the retrieval of data, e.g., from database 114, enterprise source 116 and/or the data cache of client 104, is based on the selections made therein. Accordingly, with reference to current view toolbar 604, the user has selected as his/her current view the “Budget2001 spreadsheet (block 606), the “Revenue” account (block 608), the “Actual” category (block 610), the “GlobalMotors” entity (block 612), the “AllVehicles” products (block 614), the “2001.Mar” time (block 616), and the “Periodic” measure (block 618). The user's current view, as reflected in current view toolbar 604, determines the appropriate data to be accessed, retrieved and loaded into the spreadsheet engine for rendering of spreadsheet 602. Of note, the key cache of client 104 advantageously determines the degree to which data required to render spreadsheet 602 is contained within the data cache, formulates a single request/query to be transmitted to server 102 across network 106 to obtain data not contained within the data cache, and loads data retrieved from server 102 into the data cache upon receipt thereof, as described hereinabove. The formatting of spreadsheet 602 is preferably predetermined according to the present disclosure, although a user's ability to design specialized/customized spreadsheets based on conventional spreadsheet technology is contemplated according to the present disclosure.
  • Turning to spreadsheet 702 depicted in screen view 700, the user's sole change to his/her current view relative to screen view 600 is the selection of the “Budget” category in block 710 based on drop down menu 620 depicted in FIG. 6. The remaining fields/dimensions of the user's current view remain unchanged in current view toolbar 704 relative to current view toolbar 604. However, based on the single change to block 610, 710, the spreadsheet engine automatically renders an altogether different spreadsheet 702. Moreover, the selections contained in the remaining, unchanged current view blocks 706, 708, 712, 714, 716, 718 define the data that must be accessed by client 104 for the rendering of spreadsheet 702. The defining aspects of the unchanged current view blocks advantageously limit the amount of information/data to be retrieved by client 102. For example, absent the “GlobalMotors” entity limitation in blocks 612, 712, client 102 would potentially seek to retrieve information/data associated with a host of entities not required to render the desired spreadsheet. The automatic narrowing of the data retrieval request based on the user's selections in the current view toolbar 604, 704 greatly improve the speed, reliability and efficacy of the method/system of the present disclosure. Indeed, the “current view” functionality together with the Web-based, browser driven application design described herein, effectively transform static spreadsheets into dynamic, reusable reports that leverage and significantly enhance a user's ability to “slice and dice” data to arrive at beneficial financial results.
  • According to the method/system of the present disclosure, a series of advantageous functional commands may be utilized to retrieve, send and display specific data, thereby enhancing the power and flexibility thereof. These functional commands may be used in conjunction with cell/dimension references within a spreadsheet, to make a report or screen view behave in a certain way. Advantageous functional commands that may be used according to the present disclosure are as follows:
    Functional Command Meaning Function
    EvAPP( ) App = application Returns current application
    identification
    EvBET(Application, Better/(Worse) Performs a better or worse comparison
    AccountMember, of two values, based on the account
    Cell1, Cell2) type property of the account number
    EvDES([dimension,] Description Returns description for the specified
    Member ID) member. If the same member name is
    used in more than one dimension, the
    dimension must be specified.
    EvDIM (Application, Dimension Retrieves the property “DimName”
    dim Type) from tblDimension. Its parameters are
    “AppName” and “dimType”
    EvGET(Application, Get value Retrieves a data value based on the
    [dim.]member1, specific members. If the same member
    [dim.]member2, . . . , name is used in more than one
    [dim.]memberN) dimension, the dimension must be
    specified.
    EvINP(Application, Input value Allows input into the cell containing
    member1, the formula and then sends that input to
    member2, . . . , the server when the eSubmit/Refresh
    memberN, Value) schedules command is selected.
    EvCV(Application, Current view Returns the current view setting for the
    Dimension) specified dimension.
    EvPRO(Application, Property Returns the value of a given property of
    Member, Property) a member.
    EvSND(Value Send value References another cell and sends the
    Reference, value in that cell to the server when the
    Application, Dim1, eSubmit/Refresh Schedules command
    Dim2, . . . , DimN) is selected. The parameters specify the
    dimensions that identify where the data
    is to be sent in the database.
  • While the present disclosure includes a description of the method and system with reference to various specific embodiments, those skilled in the art will readily appreciate that various modifications, changes and enhancements may be made thereto without departing from the spirit or scope of the invention as defined by the appended claims.

Claims (19)

1-17. (canceled)
18. A method for facilitating information exchange across a network, the method comprising:
providing a spreadsheet-based application program at a client computer, wherein the client computer is in communication with the network and wherein the spreadsheet-based application renders at least one spreadsheet having a plurality of data cells;
receiving a functional command that is associated with at least one of the plurality of data cells using the spreadsheet-based application program, wherein the functional command performs a predefined operation with a remote database across the network; and
executing the functional command when the spreadsheet-based application renders at least part of the at least one spreadsheet having the at least one of the plurality of data cells associated with the functional command.
19. The method of claim 18, wherein the predefined operation comprises retrieving particular data from the remote database across the network.
20. The method of claim 19, further comprising storing the particular data from the remote database in a cache at the client computer.
21. The method of claim 19, further comprising displaying the particular data from the remote database at the client computer.
22. The method of claim 18, wherein the predefined operation comprises transmitting particular data from the client computer to the remote database across the network.
23. The method of claim 18, wherein the predefined operation comprises transmitting a description of the data cell associated with the functional command to the remote database across the network.
24. The method of claim 18, wherein the predefined operation transmits a given property of the data cell associated with the functional command to the remote database across the network.
25. The method of claim 18, wherein the predefined operation accesses data from another data cell before accessing the remote database across the network.
26. The method of claim 18, further comprising determining whether a user at the client computer is authorized to access the remote database.
27. A system for facilitating information exchanges, the system comprising:
a client computer in communications with a network, the client computer comprising a processor at least partially executing a spreadsheet-based application program configured to:
access a spreadsheet having a plurality of data cells;
receive a functional command that is associated with at least one of the plurality of data cells, wherein the functional command performs a predefined operation with a remote database across the network; and
execute the functional command when rendering at least part of the spreadsheet having the at least one of the plurality of data cells associated with the functional command.
28. The system of claim 27, wherein the predefined operation comprises retrieving particular data from the remote database across the network.
29. The system of claim 28, wherein the processor is further configured to store the particular data from the remote database in a cache at the client computer.
30. The system of claim 28, wherein the processor is further configured to display the particular data from the remote database at the client computer.
31. The system of claim 27, wherein the predefined operation comprises transmitting particular data from the client computer to the remote database across the network.
32. The system of claim 27, wherein the predefined operation comprises transmitting a description of the data cell associated with the functional command to the remote database across the network.
33. The system of claim 27, wherein the predefined operation transmits a given property of the data cell associated with the functional command to the remote database across the network.
34. The system of claim 27, wherein the predefined operation accesses data from another data cell before accessing the remote database across the network.
35. The system of claim 27, wherein the processor is further configured to determine whether a user at the client computer is authorized to access the remote database.
US11/257,857 2000-05-30 2005-10-25 Method and system for facilitating information exchange Abandoned US20060036956A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/257,857 US20060036956A1 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/580,676 US6754677B1 (en) 2000-05-30 2000-05-30 Method and system for facilitating information exchange
US10/855,913 US7430709B2 (en) 2000-05-30 2004-05-27 Method and system for facilitating information exchange
US11/257,857 US20060036956A1 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US10/855,913 Continuation US7430709B2 (en) 2000-05-30 2004-05-27 Method and system for facilitating information exchange

Publications (1)

Publication Number Publication Date
US20060036956A1 true US20060036956A1 (en) 2006-02-16

Family

ID=24322073

Family Applications (9)

Application Number Title Priority Date Filing Date
US09/580,676 Expired - Lifetime US6754677B1 (en) 2000-05-30 2000-05-30 Method and system for facilitating information exchange
US10/855,913 Expired - Lifetime US7430709B2 (en) 2000-05-30 2004-05-27 Method and system for facilitating information exchange
US11/257,853 Abandoned US20060041833A1 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange
US11/257,974 Abandoned US20060041832A1 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange
US11/257,858 Expired - Lifetime US7430710B2 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange
US11/257,850 Expired - Fee Related US7669115B2 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange
US11/257,857 Abandoned US20060036956A1 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange
US11/257,855 Expired - Lifetime US7581165B2 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange
US11/257,847 Abandoned US20060036937A1 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange

Family Applications Before (6)

Application Number Title Priority Date Filing Date
US09/580,676 Expired - Lifetime US6754677B1 (en) 2000-05-30 2000-05-30 Method and system for facilitating information exchange
US10/855,913 Expired - Lifetime US7430709B2 (en) 2000-05-30 2004-05-27 Method and system for facilitating information exchange
US11/257,853 Abandoned US20060041833A1 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange
US11/257,974 Abandoned US20060041832A1 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange
US11/257,858 Expired - Lifetime US7430710B2 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange
US11/257,850 Expired - Fee Related US7669115B2 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange

Family Applications After (2)

Application Number Title Priority Date Filing Date
US11/257,855 Expired - Lifetime US7581165B2 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange
US11/257,847 Abandoned US20060036937A1 (en) 2000-05-30 2005-10-25 Method and system for facilitating information exchange

Country Status (5)

Country Link
US (9) US6754677B1 (en)
EP (1) EP1164521A3 (en)
AU (1) AU2001264718A1 (en)
CA (1) CA2348226A1 (en)
WO (1) WO2001092985A2 (en)

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7127745B1 (en) * 2000-03-24 2006-10-24 Lucent Technologies Inc. Method of controlling access for software development via a virtual common desktop with plural viewers
US20020156671A1 (en) * 2000-11-08 2002-10-24 The Boeing Company System and method for collaborative action
US8365067B2 (en) * 2000-12-15 2013-01-29 International Business Machines Corporation Method and system for moving single documents between a document processing system and a document repository
US8275974B2 (en) * 2001-01-16 2012-09-25 Outlooksoft Corporation Systems and methods providing dynamic spreadsheet functionality
JP4390402B2 (en) * 2001-03-29 2009-12-24 富士通株式会社 Knowledge information management method, knowledge information utilization method, and knowledge information management device
US20020198725A1 (en) * 2001-06-21 2002-12-26 International Business Machines Corporation Method and system for managing a relationship with a venture company
US7251776B2 (en) * 2001-07-13 2007-07-31 Netview Technologies, Inc. System and method for efficiently and flexibly utilizing spreadsheet information
WO2003040939A1 (en) * 2001-11-09 2003-05-15 Tsao Sheng A Data object oriented repository system
US20030101098A1 (en) * 2001-11-27 2003-05-29 Erich Schaarschmidt Process and device for managing automatic data flow between data processing units for operational order processing
FR2839567B1 (en) * 2002-05-10 2004-08-20 Eurofinancials Com METHOD FOR SUPPLYING DATA TO A SPREADER TOOL
US7386797B1 (en) * 2002-05-22 2008-06-10 Oracle Corporation Framework to model and execute business processes within a collaborative environment
FR2843640B1 (en) * 2002-08-16 2010-03-19 Systeam PROCESS FOR GENERATING, TRANSMITTING AND PROCESSING DOCUMENTS
AU2002951706A0 (en) * 2002-09-27 2002-10-17 Pangaea Pty Ltd A financial management system
US20050182641A1 (en) * 2003-09-16 2005-08-18 David Ing Collaborative information system for real estate, building design, construction and facility management and similar industries
US7729933B2 (en) * 2003-10-31 2010-06-01 International Business Machines Corporation Decision support activation and management in product life cycles using a context pyramid structure
GB2415063A (en) * 2004-06-09 2005-12-14 Oracle Int Corp Data retrieval method
US7698287B2 (en) * 2004-09-30 2010-04-13 Microsoft Corporation Design of spreadsheet functions for working with tables of data
CA2522254A1 (en) * 2004-10-04 2006-04-04 Peter Nador Method and system for designing, implementing and documenting olap
US20060085386A1 (en) * 2004-10-19 2006-04-20 Microsoft Corporation Two pass calculation to optimize formula calculations for a spreadsheet
US9009582B2 (en) 2004-11-19 2015-04-14 Google Inc. Converting spreadsheet applications to web-based applications
US7587387B2 (en) 2005-03-31 2009-09-08 Google Inc. User interface for facts query engine with snippets from information sources that include query terms and answer terms
US7953720B1 (en) 2005-03-31 2011-05-31 Google Inc. Selecting the best answer to a fact query from among a set of potential answers
US8239394B1 (en) 2005-03-31 2012-08-07 Google Inc. Bloom filters for query simulation
US20070078540A1 (en) * 2005-10-05 2007-04-05 Invensys Systems, Inc. Utility for comparing deployed and archived parameter value sets within a field device editor
US8954426B2 (en) * 2006-02-17 2015-02-10 Google Inc. Query language
US20070185870A1 (en) 2006-01-27 2007-08-09 Hogue Andrew W Data object visualization using graphs
US8055674B2 (en) * 2006-02-17 2011-11-08 Google Inc. Annotation framework
US7925676B2 (en) 2006-01-27 2011-04-12 Google Inc. Data object visualization using maps
US8307119B2 (en) * 2006-03-31 2012-11-06 Google Inc. Collaborative online spreadsheet application
US8082489B2 (en) * 2006-04-20 2011-12-20 Oracle International Corporation Using a spreadsheet engine as a server-side calculation model
US8954412B1 (en) 2006-09-28 2015-02-10 Google Inc. Corroborating facts in electronic documents
US9213554B2 (en) * 2006-12-04 2015-12-15 Sap Se Generic chart interface
US20080140623A1 (en) * 2006-12-11 2008-06-12 Microsoft Corporation Recursive reporting via a spreadsheet
US9058307B2 (en) * 2007-01-26 2015-06-16 Microsoft Technology Licensing, Llc Presentation generation using scorecard elements
US8495663B2 (en) * 2007-02-02 2013-07-23 Microsoft Corporation Real time collaboration using embedded data visualizations
US8347202B1 (en) 2007-03-14 2013-01-01 Google Inc. Determining geographic locations for place names in a fact repository
US20080243823A1 (en) * 2007-03-28 2008-10-02 Elumindata, Inc. System and method for automatically generating information within an eletronic document
US8239751B1 (en) * 2007-05-16 2012-08-07 Google Inc. Data from web documents in a spreadsheet
US8065599B1 (en) * 2007-06-29 2011-11-22 Emc Corporation Electronic submission preparation
US8990697B2 (en) 2007-08-06 2015-03-24 International Business Machines Corporation Associating file types with web-based applications for automatically launching the associated application
US20090055347A1 (en) * 2007-08-24 2009-02-26 United Space Alliance, Llc Wireless Emergency Management Application
US10133719B2 (en) * 2007-09-28 2018-11-20 Microsoft Technology Licensing, Llc Spreadsheet workbook part libraries
US7756824B2 (en) * 2007-10-26 2010-07-13 Microsoft Corporation Spreadsheet collaboration between rich and browser clients
US20090199079A1 (en) * 2008-01-31 2009-08-06 Microsoft Corporation Embedded cues to facilitate application development
US8650154B2 (en) 2008-02-19 2014-02-11 International Business Machines Corporation Document synchronization solution
US9189478B2 (en) * 2008-04-03 2015-11-17 Elumindata, Inc. System and method for collecting data from an electronic document and storing the data in a dynamically organized data structure
US8725679B2 (en) 2008-04-07 2014-05-13 International Business Machines Corporation Client side caching of synchronized data
US8041712B2 (en) * 2008-07-22 2011-10-18 Elumindata Inc. System and method for automatically selecting a data source for providing data related to a query
US8037062B2 (en) 2008-07-22 2011-10-11 Elumindata, Inc. System and method for automatically selecting a data source for providing data related to a query
US20100023501A1 (en) * 2008-07-22 2010-01-28 Elumindata, Inc. System and method for automatically selecting a data source for providing data related to a query
US8176042B2 (en) 2008-07-22 2012-05-08 Elumindata, Inc. System and method for automatically linking data sources for providing data related to a query
US20100241971A1 (en) * 2009-03-20 2010-09-23 Thomas Zuber System and method for interactively collaborating within a secure online social networking community
US8639762B2 (en) * 2009-03-23 2014-01-28 Google Inc. Providing access to a conversation in a hosted conversation system
US9009584B2 (en) * 2009-06-10 2015-04-14 Business Objects Software Limited Peeking into the Z-dimensional drawer
US8281233B2 (en) 2009-06-15 2012-10-02 Microsoft Corporation Architecture to expose internal business data on a website
US9087059B2 (en) * 2009-08-07 2015-07-21 Google Inc. User interface for presenting search results for multiple regions of a visual query
US9135277B2 (en) 2009-08-07 2015-09-15 Google Inc. Architecture for responding to a visual query
US8683319B2 (en) * 2009-10-06 2014-03-25 Telefonaktiebolaget L M Ericsson (Publ) Shared script files in multi-tab browser
US9471704B2 (en) 2009-10-06 2016-10-18 Telefonaktiebolaget Lm Ericsson (Publ) Shared script files in multi-tab browser
KR100969656B1 (en) * 2009-10-30 2010-07-14 (주)비아이매트릭스 An excel-based composing system for analyzing reports or views and the method thereof
US9626633B2 (en) * 2010-02-26 2017-04-18 Invention Science Fund I, Llc Providing access to one or more messages in response to detecting one or more patterns of usage of one or more non-communication productivity applications
US20110214069A1 (en) * 2010-02-26 2011-09-01 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Presenting messages through a channel of a non-communication productivity application interface
US20110214070A1 (en) * 2010-02-26 2011-09-01 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Providing access to one or more messages in response to detecting one or more patterns of usage of one or more non-communication productivity applications
US20110211590A1 (en) * 2010-02-26 2011-09-01 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Presenting messages through a channel of a non-communication productivity application interface
US20110214073A1 (en) * 2010-02-26 2011-09-01 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Providing a modified Non-Communication application interface for presenting a message
US20110270824A1 (en) * 2010-04-30 2011-11-03 Microsoft Corporation Collaborative search and share
US9069747B2 (en) 2010-08-26 2015-06-30 Sap Se Methods, apparatus, systems and computer readable mediums for use in association with electronic spreadsheets
US20120089687A1 (en) * 2010-10-11 2012-04-12 Eyal Katz Online messaging system and methods of using thereof
US9721030B2 (en) 2010-12-09 2017-08-01 Microsoft Technology Licensing, Llc Codeless sharing of spreadsheet objects
US8700986B1 (en) 2011-03-18 2014-04-15 Google Inc. System and method for displaying a document containing footnotes
US8510266B1 (en) * 2011-03-03 2013-08-13 Google Inc. System and method for providing online data management services
US9235826B1 (en) 2011-06-16 2016-01-12 Google Inc. Managing delayed participation in a communication session
US9832154B2 (en) 2011-07-12 2017-11-28 Panorama Software Inc. Enhanced usage of business intelligence systems
US9606972B2 (en) * 2011-11-09 2017-03-28 Microsoft Technology Licensing, Llc Document collaboration with collaboration context data
US20130239012A1 (en) * 2012-03-12 2013-09-12 Sap Portals Israel Ltd Common denominator filter for enterprise portal pages
US9460073B2 (en) * 2013-02-27 2016-10-04 Google Inc. Systems and methods for mutations and operational transforms in a collaborative spreadsheet environment
US20150127402A1 (en) * 2013-11-06 2015-05-07 Giga-Byte Technology Co.,Ltd. Method and system for structuring information background of the invention
US20170140306A1 (en) * 2014-09-22 2017-05-18 o9 Solutions, Inc. Business graph model
US9817876B2 (en) * 2015-06-29 2017-11-14 Planisware SAS Enhanced mechanisms for managing multidimensional data
US10031906B2 (en) 2015-11-02 2018-07-24 Microsoft Technology Licensing, Llc Images and additional data associated with cells in spreadsheets
US9990349B2 (en) 2015-11-02 2018-06-05 Microsoft Technology Licensing, Llc Streaming data associated with cells in spreadsheets
CN113590867B (en) * 2021-08-05 2024-02-09 西安电子科技大学 Cross-modal information retrieval method based on hierarchical measurement learning
US11842226B2 (en) * 2022-04-04 2023-12-12 Ambiq Micro, Inc. System for generating power profile in low power processor

Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5008853A (en) * 1987-12-02 1991-04-16 Xerox Corporation Representation of collaborative multi-user activities relative to shared structured data objects in a networked workstation environment
US5220657A (en) * 1987-12-02 1993-06-15 Xerox Corporation Updating local copy of shared data in a collaborative system
US5319777A (en) * 1990-10-16 1994-06-07 Sinper Corporation System and method for storing and retrieving information from a multidimensional array
US5388196A (en) * 1990-09-07 1995-02-07 Xerox Corporation Hierarchical shared books with database
US5404488A (en) * 1990-09-26 1995-04-04 Lotus Development Corporation Realtime data feed engine for updating an application with the most currently received data from multiple data feeds
US5446842A (en) * 1993-02-26 1995-08-29 Taligent, Inc. Object-oriented collaboration system
US5537526A (en) * 1993-11-12 1996-07-16 Taugent, Inc. Method and apparatus for processing a display document utilizing a system level document framework
US5740370A (en) * 1996-03-27 1998-04-14 Clinton Battersby System for opening cache file associated with designated file of file server only if the file is not subject to being modified by different program
US6006239A (en) * 1996-03-15 1999-12-21 Microsoft Corporation Method and system for allowing multiple users to simultaneously edit a spreadsheet
US6029175A (en) * 1995-10-26 2000-02-22 Teknowledge Corporation Automatic retrieval of changed files by a network software agent
US6138130A (en) * 1995-12-08 2000-10-24 Inventure Technologies, Inc. System and method for processing data in an electronic spreadsheet in accordance with a data type
US6192408B1 (en) * 1997-09-26 2001-02-20 Emc Corporation Network file server sharing local caches of file access information in data processors assigned to respective file systems
US6332150B1 (en) * 1998-08-31 2001-12-18 Cubus Corporation Integrated document development method
US6360236B1 (en) * 1998-08-31 2002-03-19 Cubus Corporation Computer product for integrated document development
US6393410B1 (en) * 2000-05-12 2002-05-21 Frederick Thompson Process and a system for listing information relating to a construction project over a computer network
US6550056B1 (en) * 1999-07-19 2003-04-15 Mitsubishi Denki Kabushiki Kaisha Source level debugger for debugging source programs
US6604046B1 (en) * 1999-10-20 2003-08-05 Objectfx Corporation High-performance server architecture, methods, and software for spatial data
US6701485B1 (en) * 1999-06-15 2004-03-02 Microsoft Corporation Binding spreadsheet cells to objects
US6724403B1 (en) * 1999-10-29 2004-04-20 Surfcast, Inc. System and method for simultaneous display of multiple information sources
US6917962B1 (en) * 1997-10-22 2005-07-12 Brokercom Inc. Web-based groupware system

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5189608A (en) 1987-06-01 1993-02-23 Imrs Operations, Inc. Method and apparatus for storing and generating financial information employing user specified input and output formats
US4989141A (en) 1987-06-01 1991-01-29 Corporate Class Software Computer system for financial analyses and reporting
US5390296A (en) 1989-08-30 1995-02-14 Comshare Incorporated Method and apparatus for calculation with display data
US5165012A (en) 1989-10-17 1992-11-17 Comshare Incorporated Creating reminder messages/screens, during execution and without ending current display process, for automatically signalling and recalling at a future time
US5233513A (en) 1989-12-28 1993-08-03 Doyle William P Business modeling, software engineering and prototyping method and apparatus
US5381332A (en) 1991-12-09 1995-01-10 Motorola, Inc. Project management system with automated schedule and cost integration
US5416895A (en) * 1992-04-08 1995-05-16 Borland International, Inc. System and methods for improved spreadsheet interface with user-familiar objects
US5371675A (en) * 1992-06-03 1994-12-06 Lotus Development Corporation Spreadsheet program which implements alternative range references
JP3083001B2 (en) * 1992-07-31 2000-09-04 キヤノン株式会社 Image communication device
US5450563A (en) * 1992-10-30 1995-09-12 International Business Machines Corporation Storage protection keys in two level cache system
DE69318571T2 (en) * 1992-12-01 1998-09-17 Microsoft Corp METHOD AND SYSTEM FOR IN-LOCAL INTERACTION WITH EMBEDDED OBJECTS
US5778408A (en) * 1993-11-29 1998-07-07 Intel Corporation Cache addressing mechanism that adapts multi-dimensional addressing topology
US5913032A (en) 1994-04-04 1999-06-15 Inprise Corporation System and methods for automatically distributing a particular shared data object through electronic mail
US5806078A (en) * 1994-06-09 1998-09-08 Softool Corporation Version management system
US5727161A (en) 1994-09-16 1998-03-10 Planscan, Llc Method and apparatus for graphic analysis of variation of economic plans
US5799286A (en) 1995-06-07 1998-08-25 Electronic Data Systems Corporation Automated activity-based management system
US5893123A (en) 1995-06-22 1999-04-06 Tuinenga; Paul W. System and method of integrating a spreadsheet and external program having output data calculated automatically in response to input data from the spreadsheet
US5960415A (en) 1995-12-22 1999-09-28 Glw Software Pty. Limited Forecasting control system and method
US5991741A (en) 1996-02-22 1999-11-23 Fox River Holdings, L.L.C. In$ite: a finance analysis model for education
US6055548A (en) 1996-06-03 2000-04-25 Microsoft Corporation Computerized spreadsheet with auto-calculator
US5819293A (en) * 1996-06-06 1998-10-06 Microsoft Corporation Automatic Spreadsheet forms
US6021470A (en) 1997-03-17 2000-02-01 Oracle Corporation Method and apparatus for selective data caching implemented with noncacheable and cacheable data for improved cache performance in a computer networking system
US6173322B1 (en) * 1997-06-05 2001-01-09 Silicon Graphics, Inc. Network request distribution based on static rules and dynamic performance data
US6073107A (en) 1997-08-26 2000-06-06 Minkiewicz; Arlene F. Parametric software forecasting system and method
US6621505B1 (en) 1997-09-30 2003-09-16 Journee Software Corp. Dynamic process-based enterprise computing system and method
IL135439A (en) 1997-10-06 2004-09-27 Mark R Stiegemeier Single-document active user interface, method and system for implementing same
US6128602A (en) 1997-10-27 2000-10-03 Bank Of America Corporation Open-architecture system for real-time consolidation of information from multiple financial systems
US6076152A (en) 1997-12-17 2000-06-13 Src Computers, Inc. Multiprocessor computer architecture incorporating a plurality of memory algorithm processors in the memory subsystem
US6115690A (en) 1997-12-22 2000-09-05 Wong; Charles Integrated business-to-business Web commerce and business automation system
US6076153A (en) * 1997-12-24 2000-06-13 Intel Corporation Processor pipeline including partial replay
US6026459A (en) 1998-02-03 2000-02-15 Src Computers, Inc. System and method for dynamic priority conflict resolution in a multi-processor computer system having shared memory resources
US6088702A (en) 1998-02-25 2000-07-11 Plantz; Scott H. Group publishing system
US6253217B1 (en) 1998-08-31 2001-06-26 Xerox Corporation Active properties for dynamic document management system configuration
US6317750B1 (en) 1998-10-26 2001-11-13 Hyperion Solutions Corporation Method and apparatus for accessing multidimensional data
US6470349B1 (en) 1999-03-11 2002-10-22 Browz, Inc. Server-side scripting language and programming tool
US6519571B1 (en) 1999-05-27 2003-02-11 Accenture Llp Dynamic customer profile management
US6408292B1 (en) 1999-08-04 2002-06-18 Hyperroll, Israel, Ltd. Method of and system for managing multi-dimensional databases using modular-arithmetic based address data mapping processes on integer-encoded business dimensions
US7289964B1 (en) * 1999-08-31 2007-10-30 Accenture Llp System and method for transaction services patterns in a netcentric environment
US6434568B1 (en) * 1999-08-31 2002-08-13 Accenture Llp Information services patterns in a netcentric environment
US6742015B1 (en) * 1999-08-31 2004-05-25 Accenture Llp Base services patterns in a netcentric environment
US6550058B1 (en) * 2000-02-03 2003-04-15 International Business Machines Corporation Stack clearing device and method
US6341292B1 (en) * 2000-05-30 2002-01-22 Outlooksoft Corporation Spreadsheet-based network information exchange with two-part cache

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5220657A (en) * 1987-12-02 1993-06-15 Xerox Corporation Updating local copy of shared data in a collaborative system
US5008853A (en) * 1987-12-02 1991-04-16 Xerox Corporation Representation of collaborative multi-user activities relative to shared structured data objects in a networked workstation environment
US5388196A (en) * 1990-09-07 1995-02-07 Xerox Corporation Hierarchical shared books with database
US5404488A (en) * 1990-09-26 1995-04-04 Lotus Development Corporation Realtime data feed engine for updating an application with the most currently received data from multiple data feeds
US5319777A (en) * 1990-10-16 1994-06-07 Sinper Corporation System and method for storing and retrieving information from a multidimensional array
US5446842A (en) * 1993-02-26 1995-08-29 Taligent, Inc. Object-oriented collaboration system
US5537526A (en) * 1993-11-12 1996-07-16 Taugent, Inc. Method and apparatus for processing a display document utilizing a system level document framework
US6029175A (en) * 1995-10-26 2000-02-22 Teknowledge Corporation Automatic retrieval of changed files by a network software agent
US6138130A (en) * 1995-12-08 2000-10-24 Inventure Technologies, Inc. System and method for processing data in an electronic spreadsheet in accordance with a data type
US6006239A (en) * 1996-03-15 1999-12-21 Microsoft Corporation Method and system for allowing multiple users to simultaneously edit a spreadsheet
US5740370A (en) * 1996-03-27 1998-04-14 Clinton Battersby System for opening cache file associated with designated file of file server only if the file is not subject to being modified by different program
US6192408B1 (en) * 1997-09-26 2001-02-20 Emc Corporation Network file server sharing local caches of file access information in data processors assigned to respective file systems
US6917962B1 (en) * 1997-10-22 2005-07-12 Brokercom Inc. Web-based groupware system
US6332150B1 (en) * 1998-08-31 2001-12-18 Cubus Corporation Integrated document development method
US6360236B1 (en) * 1998-08-31 2002-03-19 Cubus Corporation Computer product for integrated document development
US6701485B1 (en) * 1999-06-15 2004-03-02 Microsoft Corporation Binding spreadsheet cells to objects
US6550056B1 (en) * 1999-07-19 2003-04-15 Mitsubishi Denki Kabushiki Kaisha Source level debugger for debugging source programs
US6604046B1 (en) * 1999-10-20 2003-08-05 Objectfx Corporation High-performance server architecture, methods, and software for spatial data
US6724403B1 (en) * 1999-10-29 2004-04-20 Surfcast, Inc. System and method for simultaneous display of multiple information sources
US6393410B1 (en) * 2000-05-12 2002-05-21 Frederick Thompson Process and a system for listing information relating to a construction project over a computer network

Also Published As

Publication number Publication date
US20060047711A1 (en) 2006-03-02
US20060036937A1 (en) 2006-02-16
US7669115B2 (en) 2010-02-23
US20040220977A1 (en) 2004-11-04
WO2001092985A3 (en) 2002-05-23
EP1164521A3 (en) 2004-03-31
US20060041832A1 (en) 2006-02-23
CA2348226A1 (en) 2001-11-30
WO2001092985B1 (en) 2002-06-20
EP1164521A2 (en) 2001-12-19
US20060041831A1 (en) 2006-02-23
US6754677B1 (en) 2004-06-22
US7430709B2 (en) 2008-09-30
WO2001092985A2 (en) 2001-12-06
US20060036957A1 (en) 2006-02-16
US7581165B2 (en) 2009-08-25
AU2001264718A1 (en) 2001-12-11
US7430710B2 (en) 2008-09-30
US20060041833A1 (en) 2006-02-23

Similar Documents

Publication Publication Date Title
US7581165B2 (en) Method and system for facilitating information exchange
US6341292B1 (en) Spreadsheet-based network information exchange with two-part cache
US6173310B1 (en) System and method for automatic transmission of on-line analytical processing system report output
US7328186B2 (en) Client account and information management system and method
US6567796B1 (en) System and method for management of an automatic OLAP report broadcast system
US6269393B1 (en) System and method for automatic transmission of personalized OLAP report output
US7082569B2 (en) Systems and methods providing dynamic spreadsheet functionality
US8275974B2 (en) Systems and methods providing dynamic spreadsheet functionality
US20080222630A1 (en) Customer relationship management portal system and method
US20070283287A1 (en) Customer relationship management system and method
US20070038641A1 (en) Systems and methods for automated application updating
US20080294713A1 (en) System and method for management of an automatic olap report broadcast system
CN101208692A (en) Automatically moving multidimensional data between live datacubes of enterprise software systems
Dennis et al. Use of an intranet to manage a telephone survey
Christiansen Executive reporting system
Bogen et al. Content Management Systems for Editors-In Search of Quality
Jensen et al. Relational databases create online publications
Thierauf et al. Development and Implementation of Optimal KM/WM Systems

Legal Events

Date Code Title Description
AS Assignment

Owner name: WELLS FARGO FOOTHILL, INC.,MASSACHUSETTS

Free format text: SECURITY AGREEMENT;ASSIGNOR:OUTLOOKSOFT CORPORATION;REEL/FRAME:017730/0515

Effective date: 20060606

Owner name: WELLS FARGO FOOTHILL, INC., MASSACHUSETTS

Free format text: SECURITY AGREEMENT;ASSIGNOR:OUTLOOKSOFT CORPORATION;REEL/FRAME:017730/0515

Effective date: 20060606

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION