Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS20070061699 A1
Publication typeApplication
Application numberUS 11/223,541
Publication dateMar 15, 2007
Filing dateSep 9, 2005
Priority dateSep 9, 2005
Also published asCA2618224A1, CA2618224C, CN101258485A, CN101258485B, EP1922639A1, US8566953, US20080010670, WO2007032907A1
Publication number11223541, 223541, US 2007/0061699 A1, US 2007/061699 A1, US 20070061699 A1, US 20070061699A1, US 2007061699 A1, US 2007061699A1, US-A1-20070061699, US-A1-2007061699, US2007/0061699A1, US2007/061699A1, US20070061699 A1, US20070061699A1, US2007061699 A1, US2007061699A1
InventorsDaniel Battagin, Yariv Ben-Tovim, John Campbell, Boaz Chen, Eran Megiddo
Original AssigneeMicrosoft Corporation
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Named object view of electronic data report
US 20070061699 A1
Abstract
A named object view of a report is generated from an electronic data file. Objects in the file to be published are identified in the file. A named object view of the report associated with the file is generated by publishing the identified objects. A viewer at a client is presented with the named object view of the report such that the viewer's attention is focused on the published objects.
Images(5)
Previous page
Next page
Claims(20)
1. A method for generating a named object view of a report associated with a file, the method comprising:
receiving a request for the report;
retrieving the file associated with the requested report from a data store;
receiving a selection of objects in the file, wherein the selected objects are published;
generating the report with the published objects; and
rendering the report with the published objects at a client.
2. The method of claim 1, wherein receiving a request for the report further comprises receiving the request for the report at a server.
3. The method of claim 1, further comprising converting the published objects into a format suitable for rendering at the client by a web browser, wherein the report is rendered at the client by the web browser.
4. The method of claim 1, wherein rendering the report further comprises rendering each published object individually at the client such that the published objects are displayed on the client one at a time.
5. The method of claim 1, wherein the file is associated with a spreadsheet application.
6. The method of claim 5, wherein at least one object comprises a named range.
7. The method of claim 1, further comprising assigning a unique name to each object.
8. The method of claim 7, wherein assigning a unique name further comprises assigning a unique name to an object automatically.
9. The method of claim 7, wherein rendering the report further comprises rendering the report with a tool bar, wherein the tool bar identifies the published objects by name.
10. The method of claim 9, further comprising displaying a particular published object in a user interface at the client when the name associated with the particular published object is selected from the tool bar.
11. A system for generating a named object view of a report associated with a file, the system comprising:
a client, wherein a request for the report is generated at the client;
a data store, wherein the file associated with the requested report is stored in the data store; and
a server coupled to the client and the data store, wherein the server is arranged to:
receive the request for the report from the client;
retrieve the file associated with the requested report from the data store;
receive a selection of objects in the file, wherein the selected objects are published;
generate the report with the published objects; and
render the report with the published objects at the client.
12. The system of claim 11, wherein the server is further arranged to convert the published objects into a format suitable for rendering at the client.
13. The system of claim 11, wherein the server is further arranged to render each published object individually at the client such that the published objects are displayed on the client one at a time.
14. The system of claim 11, wherein the server is further arranged to assign a unique name to each object in the file.
15. The system of claim 14, wherein the objects are selected for publication by name.
16. The system of claim 14, wherein the server is further arranged to render the report with a tool bar, wherein the tool bar identifies the published objects by name.
17. The system of claim 16, wherein the server is further arranged to display a particular published object in a web part at the client when the name associated with the particular published object is selected from the tool bar.
18. A computer-readable medium having computer-executable instructions stored thereon which, when executed by a computer, will cause the computer to perform a method for generating a named object view of a report associated with a file, the method comprising:
receiving a request for the report;
retrieving the file associated with the requested report from a data store;
assigning a unique name to each object in the file;
receiving a selection of objects in the file, wherein the selected objects are published, and wherein the objects are selected by the corresponding unique name;
generating the report with the published objects;
rendering the report with the published objects, wherein the report lists the unique names assigned to the published objects;
receiving a selection of the unique name of a particular published object; and
displaying the particular published object corresponding to the selected unique name, wherein the particular published object is displayed in a user interface at the client.
19. The computer-readable medium of claim 18, further comprising converting the published objects into a format suitable for rendering at the client by a web browser, wherein the report is rendered at the client by the web browser.
20. The computer-readable medium of claim 18, wherein assigning a unique name further comprises assigning a unique name to an object automatically.
Description
    BACKGROUND
  • [0001]
    Electronic document is sharing allows multiple users to access the same document. Some documents, such as spreadsheets, may include multiple sheets with each sheet including a large amount of data. A report may be generated from the document to present the data in an organized format. However, the report may confuse viewers if the report contains too much data. A viewer may need to search through the report to locate desired information, which can be laborious and time consuming.
  • SUMMARY
  • [0002]
    A named object view of a report is generated from an electronic data file.
  • [0003]
    The file includes multiple objects. Each object is associated with a name. The objects to be published are identified in the file. A named object view of the report associated with the file is generated by publishing the identified objects. A viewer at a client is presented with the named object view of the report such that the viewer's attention is focused on the published objects.
  • [0004]
    In one embodiment, a report renderer converts the published objects into a format suitable for display on a web page such that each object that is identified for publishing may be individually rendered by a web application. The web-formatted version of the published objects is forwarded to a client via a network for display by a web browser. In another embodiment, the report renderer is implemented in the same application associated with the electronic data file such that the named object view of the report is generated at the client.
  • [0005]
    The invention may be implemented as a computer process, a computing system, or as an article of manufacture such as a computer program product or computer readable media. The computer program product may be a computer storage media readable by a computer system and encoding a computer program of instructions for executing a computer process. The computer program product may also be a propagated signal on a carrier readable by a computing system and encoding a computer program of instructions for executing a computer process.
  • [0006]
    These and various other features, as well as advantages, which characterize the present invention, will be apparent from a reading of the following detailed description and a review of the associated drawings.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • [0007]
    FIG. 1 is a computer system architecture diagram illustrating a computer system utilized in and provided by the various embodiments of the invention;
  • [0008]
    FIG. 2 is a network architecture diagram illustrating an illustrative operating environment for embodiments of the invention;
  • [0009]
    FIG. 3 is a functional block diagram illustrating the generation of a named object view of an electronic data report; and
  • [0010]
    FIG. 4 is a process diagram showing aspects of an illustrative process for generating a named object view of an electronic data report.
  • DETAILED DESCRIPTION
  • [0011]
    Referring now to the drawings, in which like numerals represent like elements, various aspects of the present invention will be described. In particular, FIG. 1 and the corresponding discussion are intended to provide a brief, general description of a suitable computing environment in which embodiments of the invention may be implemented. While the invention will be described in the general context of program modules that execute on server and personal computer systems, those skilled in the art will recognize that the invention may also be implemented in combination with other types of computer systems and program modules.
  • [0012]
    Generally, program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the invention may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like. The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
  • [0013]
    Referring now to FIG. 1, an illustrative computer architecture for a computer 100 utilized in the various embodiments of the invention will be described. The computer architecture shown in FIG. 1 illustrates a conventional desktop or laptop computer, including a central processing unit 110 (“CPU”), a system memory 120, including a random access memory (“RAM”) 122 and a read-only memory (“ROM”) 124, and a system bus 130 that couples the memory to the CPU 110. A basic input/output system containing the basic routines that help to transfer information between elements within the computer, such as during startup, is stored in the ROM 124. The computer 100 further includes a mass storage device 140 for storing an operating system 142, application programs, and other program modules, which will be described in greater detail below.
  • [0014]
    The mass storage device 140 is connected to the CPU 110 through a mass storage controller (not shown) connected to the bus 130. The mass storage device 140 and its associated computer-readable media provide non-volatile storage for the computer 100. Although the description of computer-readable media contained herein refers to a mass storage device, such as a hard disk or CD-ROM drive, it should be appreciated by those skilled in the art that computer-readable media can be any available media that can be accessed by the computer 100.
  • [0015]
    By way of example, and not limitation, computer-readable media may comprise computer storage media and communication media. Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, digital versatile disks (“DVD”), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer 100.
  • [0016]
    According to various embodiments of the invention, the computer 100 may operate in a networked environment using logical connections to remote computers through a network 150, such as the Internet. The computer 100 may connect to the network 150 through a network interface unit 160 connected to the bus 130. It should be appreciated that the network interface unit 160 may also be utilized to connect to other types of networks and remote computer systems. The computer 100 may also include an input/output controller 170 for receiving and processing input from a number of other devices, including a keyboard, mouse, or electronic stylus (not shown in FIG. 1). Similarly, the input/output controller 170 may provide output to a display screen, a printer, or other type of output device.
  • [0017]
    As mentioned briefly above, a number of program modules and data files may be stored in the mass storage device 140 and RAM 122 of the computer 100, including the operating system 142 that is suitable for controlling the operation of a networked personal computer, such as the WINDOWS XP operating system from MICROSOFT CORPORATION of Redmond, Wash. The mass storage device 140 and the RAM 122 may also store one or more program modules. In particular, the mass storage device 140 and the RAM 122 may store a web browser application program 144. As known to those skilled in the art, the web browser application program 144 is operative to request, receive, render, and provide interactivity with electronic documents, such as a web page 146 that has been formatted using HTML. According to one embodiment of the invention, the web browser application program 144 comprises the INTERNET EXPLORER web browser application program from MICROSOFT CORPORATION. It should be appreciated, however, that other web browser application programs from other manufacturers may be utilized to embody the various aspects of the present invention, such as the FIREFOX web browser application from the MOZILLA FOUNDATION.
  • [0018]
    As will be described in greater detail below, the web page 146 may comprise a named object view of a report associated with electronic data from an application program 148. The application program 148 may comprise the EXCEL spreadsheet application program from MICROSOFT CORPORATION or another spreadsheet application program from another manufacturer. It should be appreciated that although the embodiments of the invention described herein are presented in the context of a spreadsheet application program, the invention may be utilized in other types of application programs that support electronic data reporting. For instance, the embodiments of the invention described herein may be utilized within a word processing application program, a presentation application program, a drawing or computer-aided design application program, or a database application program in order to allow the rendering of and interaction with a document without requiring a dedicated application program. Additional details regarding the process for generating a named object view of a report are be provided below with respect to FIGS. 2-4.
  • [0019]
    Referring now to FIG. 2, a network architecture diagram will be described that illustrates an operating environment for the various embodiments of the invention. As shown in FIG. 2, the computer 100 is connected to the network 150. Also connected to the network 150 is an application server 210. The application server 210 comprises a server computer which may contain some or all the conventional computing components described above with respect to FIG. 1. Additionally, the application server 210 is operative to execute a web server application for receiving and responding to requests for documents stored at or accessible to the application server 210. Moreover, the application server 210 is operative to receive and respond to requests for pages generated by a web application 220. It should be appreciated that the web application 220 may comprise code executable at the application server 210, executable code for communicating with other computers, and may include templates, graphics, audio files, and other content known to those skilled in the art.
  • [0020]
    The web application 220 is operative to provide an interface to a user of the computer 100 to view a named object view of a report associated with electronic data accessible via the network 150. In particular, the web application 220 utilizes a server application programming interface (“API”) 222. According to this embodiment of the invention, the server API 222 is operative to enable communication with a spreadsheet calculation server 230. The spreadsheet calculation server 230 is operative to execute a spreadsheet calculation server program 232. The spreadsheet calculation server program 232 comprises an executable program for retrieving and calculating a named object view of a report associated with electronic data. The electronic data may be any file such as a workbook 242 stored in a data store 240. It should be appreciated that in the embodiments of the invention described herein, the spreadsheet calculation server 230 may include many of the conventional hardware and software components discussed above with respect to FIG. 1.
  • [0021]
    The computer 100 may transmit a request to the application server 210 for a named object view of a report of the workbook 242 within the context of the web browser application 144. In response to such a request, the web application 220 communicates with the spreadsheet calculation server 230 through the server API 222. In particular, the web application 220 requests from the spreadsheet calculation server 230 the requested named object view of the report.
  • [0022]
    The spreadsheet calculation server program 232 loads the appropriate workbook 242 from the data store 240 and processes the workbook 242. The workbook 242 is processed as discussed in detail below. Briefly, the spreadsheet calculation server 230 identifies the objects to be published in the workbook 242. The spreadsheet calculation server 230generates the named object view of the report associated with the workbook 242 by publishing the identified objects. The report renderer 224 converts the published objects into HTML such that each object that is identified for publishing may be individually rendered by the web application 220. The application server 210 forwards the HTML version of the published objects to the client 100 for display by a web browser via the network 150. A user at the client 100 may then view the published objects of the workbook 242.
  • [0023]
    FIG. 3 is a functional block diagram illustrating the generation of a named object view of an electronic data report. The named object view of the report is generated from an electronic data file. As shown in the diagram, the electronic data file is a workbook 300 associated with a spreadsheet application. However, the electronic data file may be any file that may be associated with a report.
  • [0024]
    The workbook 300 includes multiple objects on different pages. The objects may be any item in the workbook 300 that can be individually selected or manipulated. For example, the objects may include a table 302, a paragraph 304, a single data cell 306, a bar graph 308, a pie chart 310, a named range 312, an image 314, a pivot table 316, a text box 318, and a line graph 320. In one embodiment, an object in the workbook 300 may be defined to encompass multiple smaller objects. For example, an object may correspond to multiple pages of the workbook 300. In another embodiment, an object may include dynamic information such that the size of the object changes over time. For example, the named range 312 may correspond to a range of cells in the workbook 300. The range of cells may increase or decrease in size in response to spreadsheet processing.
  • [0025]
    A user may access the workbook 300 from a server to generate a report 330. Alternatively, the workbook 300 may be accessed at a client. The user selects objects to publish in the report. For example, the user may select the single data cell 306, the named range 312, the text box 318, and the line graph 320 to appear in the report 330. The user may open the workbook 300 from a publisher interface. In one embodiment, names associated with the objects are provided in the publisher interface. The user may select the objects to publish from the list. In one embodiment, objects may be selected for publication from multiple workbooks.
  • [0026]
    Each object to be published is associated with a unique name. The user may select the objects for inclusion in the report 330 by name such that each published object may be easily identified. In one embodiment, the published object names may be automatically generated. For example, the table 302 may be automatically identified as “table”, “table1”, or some other unique name. The user may rename the automatically generated name. In another embodiment, the user defines a name for the published object. For example, the single cell data 306 may be defined as “special number”. Likewise, the named range 312 may be defined as “my data”.
  • [0027]
    The selected objects are published in the report 330. For example, the single data cell (“special number”) 306, the named range (“my data”) 312, the text box 318, and the line graph 320 are published in the report 330. The unselected portions of the workbook 300 are not published in the report 330.
  • [0028]
    A viewer at the client is presented with a named object view of the report 300. A report renderer converts the published objects into HTML when the workbook 300 is accessed from a server. The HTML version of the published objects is forwarded to a client for display via a web browser. In one embodiment, a published object is rendered on a user interface 350. For example, the user interface 350 may be a web part. A web part is a modular unit of information that has a single purpose. Web parts form the basic building blocks of many web pages. More than one web part may be simultaneously displayed on a dashboard at the client such that different published objects may be viewed side-by-side. For example, the viewer may select the text box 318 and the line graph 320 for display on different web parts because the text box 318 elaborates on data presented in the line graph 320.
  • [0029]
    A tool bar that includes the names of the published objects may also be rendered on the user interface 350. The tool bar may be used for accessing specific published objects. For example, the tool bar is a drop down menu 360 that includes a list of the names of the published objects. Specifically, the drop down menu 360 includes selectable entries for “special number”, “my data”, text box, and line graph. The named object view of the report is rendered on the user interface 350 with the first published object (i.e., “special number”). The other published objects may be rendered at the user interface 350 in response to user input. For example, the viewer may select an entry from the drop down menu 360 such that the user interface 350 refreshes and the published object corresponding to the selected entry is rendered on the user interface 350. Thus, each published object may be individually displayed to the viewer at the client. The named object view of the report focuses the viewer's attention on the published objects. The non-published objects of the workbook 300 are not displayed to the viewer.
  • [0030]
    Referring now to FIG. 4, an illustrative routine will be described illustrating a process for generating a named object view of a report associated with electronic data. When reading the discussion of the routine presented herein, it should be appreciated that the logical operations of various embodiments of the present invention are implemented (1) as a sequence of computer-implemented acts or program modules running on a computing system and/or (2) as interconnected machine logic circuits or circuit modules within the computing system. The implementation is a matter of choice dependent on the performance requirements of the computing system implementing the invention. Accordingly, the logical operations illustrated in FIG. 4, and comprising the embodiments of the present invention described herein are referred to variously as operations, structural devices, acts or modules. It will be recognized by one skilled in the art that these operations, structural devices, acts and modules may be implemented in software, in firmware, in special purpose digital logic, and any combination thereof without deviating from the spirit and scope of the present invention as recited within the claims attached hereto.
  • [0031]
    FIG. 4 is a process diagram showing aspects of an illustrative process for generating a named object view of a report associated with electronic data. Processing begins at a start block where electronic data is stored as a file in a data store. A report of the file is created by a user and rendered to a viewer at a client as discussed in detail below.
  • [0032]
    The file is retrieved from the data store and opened at block 400. The file includes multiple objects. The objects may be any item in the file that can be individually selected or manipulated. The objects may be associated with static or dynamic information.
  • [0033]
    Moving to block 410, the objects in the file are named. In one embodiment, an object is automatically assigned a name. For example, two images may be assigned the names “image1” and “image2” respectively. In another embodiment, the name of an object is user-defined. For example, a single cell or a named range in a spreadsheet file may be defined with a name that communicates meaning to the user. The name of any object may also be renamed by the user.
  • [0034]
    Transitioning to block 420, a selection of objects to publish in the report is received. In one embodiment, the user selects the objects to publish from a list of the named objects. In another embodiment, the user may navigate the file and select each object to be published directly from the file. In yet another embodiment, the user may select the objects to publish from multiple files.
  • [0035]
    Proceeding to block 430, the named object view of the report is generated using the published objects. Any objects in the file that are not selected for publication are not included in the report.
  • [0036]
    Continuing to decision block 435, a determination is made whether the named object view of the report is to be displayed on a web page. The named object view of the report is displayed on a web page when the file is retrieved from the data store via a server, in which case processing proceeds to block 440. The named object view of the report is not displayed on a web page when the file is retrieved from the data store at the client, in which case processing proceeds at block 455.
  • [0037]
    Continuing to block 440, a report renderer converts the published objects to a format suitable for display on a web page. For example, the report renderer may convert the published objects to HTML or XML. Advancing to block 450, the web-formatted version of the published objects is rendered at the client for display by a web browser. A viewer at the client is presented with a named object view of the report. In one embodiment, the first published object is rendered on a web part. The user may navigate to the other published objects such that one published object at a time is rendered in the web part.
  • [0038]
    Proceeding to block 455, the published objects are directly rendered at the client. A viewer at the client is presented with a named object view of the report. In one embodiment, the first published object is rendered in a user interface at the client. The user may navigate to the other published objects such that one published object at a time is rendered in the user interface.
  • [0039]
    Moving to block 460, a tool bar is rendered at the client. The tool bar includes the names of the published objects such that the viewer may navigate to specific published objects. In one embodiment, the tool bar is a drop down menu of a list of the names of the published objects. The drop down menu is rendered in the web part or the user interface.
  • [0040]
    Transitioning to block 470, a particular published object selection is received at the tool bar from the viewer. For example, the viewer may select a published object from the drop down menu. Proceeding to block 480, the selected published object is rendered at the client. For example, the web part or the user interface refreshes in response to the viewer input such that the selected published object is displayed on the web part or the user interface. Thus, the viewer's attention is focused on the published objects in the report. The unpublished file data is not presented to the viewer and may be disregarded. Processing then terminates at an end block.
  • [0041]
    Based on the foregoing, it should be appreciated that the various embodiments of the invention include a method, system, apparatus, and computer-readable medium for generating a named object view of a report associated with electronic data. The above specification, examples and data provide a complete description of the manufacture and use of the composition of the invention. Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the claims hereinafter appended.
Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US5339392 *Dec 28, 1990Aug 16, 1994Risberg Jeffrey SApparatus and method for creation of a user definable video displayed document showing changes in real time data
US5371675 *Jun 3, 1992Dec 6, 1994Lotus Development CorporationSpreadsheet program which implements alternative range references
US5418902 *Oct 12, 1993May 23, 1995International Computers LimitedElectronic spreadsheet system producing generalized answers including formulas
US5423034 *Nov 12, 1992Jun 6, 1995Cohen-Levy; LeonNetwork file management with user determined hierarchical file structures and means for intercepting application program open and save commands for inputting and displaying user inputted descriptions of the location and content of files
US5452447 *Dec 21, 1992Sep 19, 1995Sun Microsystems, Inc.Method and apparatus for a caching file server
US5613058 *Apr 15, 1994Mar 18, 1997Microsoft CorporationMethod and system for in-place interaction with contained objects
US5708827 *Sep 18, 1995Jan 13, 1998Hitchi, Ltd.Spread sheet calculation method and apparatus by extracting an area to be updated by a calculation formula
US5727161 *Sep 16, 1994Mar 10, 1998Planscan, LlcMethod and apparatus for graphic analysis of variation of economic plans
US5819292 *May 31, 1995Oct 6, 1998Network Appliance, Inc.Method for maintaining consistent states of a file system and for creating user-accessible read-only copies of a file system
US5852439 *Mar 1, 1996Dec 22, 1998Jba Holdings PlcObject browser and manipulation system
US5883623 *Apr 21, 1997Mar 16, 1999Borland International, Inc.System and methods for building spreadsheet applications
US5890174 *Nov 16, 1995Mar 30, 1999Microsoft CorporationMethod and system for constructing a formula in a spreadsheet
US5893125 *Sep 22, 1997Apr 6, 1999Borland International, Inc.Non-modal database system with methods for incremental maintenance
US5978818 *Apr 29, 1997Nov 2, 1999Oracle CorporationAutomated hypertext outline generation for documents
US5987481 *Jul 1, 1997Nov 16, 1999Microsoft CorporationMethod and apparatus for using label references in spreadsheet formulas
US6003012 *Dec 5, 1997Dec 14, 1999Square D CompanyMethodology and computer-based tools for design, production and sales of customized switchboards
US6009455 *Apr 20, 1998Dec 28, 1999Doyle; John F.Distributed computation utilizing idle networked computers
US6023691 *Dec 22, 1998Feb 8, 2000Ac Properties B.V.Goal based stimulator utilizing a spreadsheet architecture
US6157934 *Oct 15, 1996Dec 5, 2000Ultimus, L.L.C.Method and apparatus for using distributed spreadsheets in a client/server architecture for workflow automation
US6199099 *Mar 5, 1999Mar 6, 2001Ac Properties B.V.System, method and article of manufacture for a mobile communication network utilizing a distributed communication network
US6256651 *Jun 20, 1997Jul 3, 2001Raja TuliTime management workflow software
US6269403 *Jun 30, 1997Jul 31, 2001Microsoft CorporationBrowser and publisher for multimedia object storage, retrieval and transfer
US6298334 *Oct 15, 1998Oct 2, 2001Netdecide CorporationObject-based numeric-analysis engine
US6460059 *Aug 4, 1998Oct 1, 2002International Business Machines CorporationVisual aid to simplify achieving correct cell interrelations in spreadsheets
US6484186 *Feb 15, 2000Nov 19, 2002Novell, Inc.Method for backing up consistent versions of open files
US6501491 *Sep 21, 1998Dec 31, 2002Microsoft CorporationExtensible user interface for viewing objects over a network
US6507865 *Jan 14, 2000Jan 14, 2003Zaplet, Inc.Method and system for group content collaboration
US6592626 *Sep 20, 1999Jul 15, 2003International Business Machines CorporationMethod and system in an electronic spreadsheet for processing different cell protection modes
US6613098 *Jun 15, 1999Sep 2, 2003Microsoft CorporationStorage of application specific data in HTML
US6625603 *Sep 21, 1998Sep 23, 2003Microsoft CorporationObject type specific access control
US6626959 *Jun 14, 1999Sep 30, 2003Microsoft CorporationAutomatic formatting of pivot table reports within a spreadsheet
US6631497 *Jul 19, 1999Oct 7, 2003International Business Machines CorporationBinding data from data source to cells in a spreadsheet
US6631498 *Nov 18, 1998Oct 7, 2003Microsoft CorporationAdaptive rendering of hypermedia documents
US6632249 *Jan 16, 2001Oct 14, 2003Microsoft CorporationMethod for providing web-based services to an application program module
US6651075 *Feb 16, 2000Nov 18, 2003Microsoft CorporationSupport for multiple temporal snapshots of same volume
US6662341 *May 20, 1999Dec 9, 2003Microsoft CorporationMethod and apparatus for writing a windows application in HTML
US6691100 *Jun 20, 2001Feb 10, 2004Microstrategy, IncorporatedHTML/DHTML web interface system and method
US6701485 *Jun 15, 1999Mar 2, 2004Microsoft CorporationBinding spreadsheet cells to objects
US6757867 *Dec 6, 2000Jun 29, 2004International Business Machines CorporationMethod and system in an electronic spreadsheet for adding or removing elements from a cell named range according to different modes
US6832351 *Oct 1, 1999Dec 14, 2004Microsoft CorporationMethod and system for previewing and printing customized business forms
US6892211 *Apr 12, 2004May 10, 2005Network Appliance, Inc.Copy on write file system consistency and block usage
US6988241 *Nov 15, 2000Jan 17, 2006International Business Machines CorporationClient side, web-based spreadsheet
US6990632 *Feb 28, 2003Jan 24, 2006Microsoft CorporationMethod and system for inferring a schema from a hierarchical data structure for use in a spreadsheet
US7013312 *Jun 21, 2001Mar 14, 2006International Business Machines CorporationWeb-based strategic client planning system for end-user creation of queries, reports and database updates
US7015911 *Mar 31, 2003Mar 21, 2006Sas Institute Inc.Computer-implemented system and method for report generation
US7017112 *Feb 28, 2003Mar 21, 2006Microsoft CorporationImporting and exporting markup language data in a spreadsheet application document
US7031979 *Aug 31, 2001Apr 18, 2006Hewlett-Packard Development Company, L.P.Report generation system and method
US7231657 *Aug 21, 2002Jun 12, 2007American Management Systems, Inc.User authentication system and methods thereof
US7584414 *Feb 1, 2005Sep 1, 2009Microsoft CorporationExport to excel
US7640496 *Oct 31, 2003Dec 29, 2009Emc CorporationMethod and apparatus for generating report views
US20010055013 *May 17, 2001Dec 27, 2001Naoki FukiThree-dimensional modeling system having parametric function and parameter editing method according to same
US20020010743 *Feb 10, 2001Jan 24, 2002Ryan Mark H.Method and system for distributing and collecting spreadsheet information
US20020065846 *Nov 28, 2001May 30, 2002Atsuro OgawaSpreadsheet Web server system and spreadsheet Web system
US20020077803 *Sep 7, 2001Jun 20, 2002Michiharu KudohAccess control system and methods
US20020077842 *Aug 31, 2001Jun 20, 2002Dietrich CharisiusMethods and systems for integrating process modeling and project planning
US20020078086 *Dec 18, 2000Jun 20, 2002Alden Jeffrey MorganFunctional visualization of spreadsheets
US20020113822 *Oct 25, 2001Aug 22, 2002Helmut WindlDrop-enabled tabbed dialogs
US20020129054 *Aug 14, 2001Sep 12, 2002Ferguson Charles H.Method and system for integrating network-based functionality into productivity applications employing spreadsheets
US20020158887 *Aug 14, 2001Oct 31, 2002Sony Corporation And Sony Electronics, Inc.User interface for a digital production system including multiple window viewing and navigating
US20020184131 *Jun 29, 2001Dec 5, 2002Gatto Joseph G.Security analyst estimates performance viewing system and method
US20030018644 *Jun 21, 2001Jan 23, 2003International Business Machines CorporationWeb-based strategic client planning system for end-user creation of queries, reports and database updates
US20030033329 *Jun 22, 2001Feb 13, 2003Bergman Eric D.Method and apparatus for entry and editing of spreadsheet formulas
US20030044762 *Aug 28, 2002Mar 6, 2003Assessment Technology Inc.Educational management system
US20030051209 *Oct 31, 2002Mar 13, 2003Microsoft CorporationSystem and method for editing a spreadsheet via an improved editing and cell selection model
US20030061305 *Mar 26, 2002Mar 27, 2003Chyron CorporationSystem and method for enhancing streaming media delivery and reporting
US20030066030 *Jul 27, 2001Apr 3, 2003Curns Rick D.System and method for updating project management scheduling charts
US20030088586 *Nov 2, 2001May 8, 2003Fitzpatrick Alexander GordonUser interface for a multi-dimensional data store
US20030105765 *Mar 19, 2001Jun 5, 2003Smith Ian E.Represented object groups
US20030120999 *Dec 21, 2001Jun 26, 2003Miller Michelle A.Calculating in spreadsheet cells without using formulas
US20030212960 *Mar 31, 2003Nov 13, 2003Shaughnessy Jeffrey CharlesComputer-implemented system and method for report generation
US20030226105 *May 29, 2003Dec 4, 2003Mattias WaldauMethod in connection with a spreadsheet program
US20040003353 *May 12, 2003Jan 1, 2004Joey RiveraWorkflow integration system for automatic real time data management
US20040006539 *Mar 18, 2003Jan 8, 2004Coby RoyerSystem and method for facilitating the handling of a dispute using disparate architectures
US20040015783 *Jun 20, 2003Jan 22, 2004Canon Kabushiki KaishaMethods for interactively defining transforms and for generating queries by manipulating existing query data
US20040064449 *Jul 14, 2003Apr 1, 2004Ripley John R.Remote scoring and aggregating similarity search engine for use with relational databases
US20040103366 *Nov 26, 2002May 27, 2004Microsoft CorporationUser defined spreadsheet functions
US20040117731 *Sep 22, 2003Jun 17, 2004Sergey BlyashovAutomated report building system
US20040128147 *Dec 26, 2002Jul 1, 2004Sundar VallinayagamMethod and system to implement complex pricing rules
US20040143788 *Jan 31, 2002Jul 22, 2004Jean-Jacques AuregliaMethod and system in an electronic spreadsheet for handling graphical objects referring to working ranges of cells in a copy/cut and paste operation
US20040181748 *Mar 10, 2003Sep 16, 2004International Business Machines CorporationThin client framework deployment of spreadsheet applications in a web browser based environment
US20040199867 *Dec 16, 2003Oct 7, 2004Cci Europe A.S.Content management system for managing publishing content objects
US20040268364 *Nov 20, 2003Dec 30, 2004International Business Machines CorporationDisplay of and interaction with local and remote data objects
US20050039144 *Mar 5, 2004Feb 17, 2005Alan WadaMethod and system of providing customizable buttons
US20050049906 *May 13, 2004Mar 3, 2005International Business Machines CorporationProvisioning of software components via workflow management systems
US20050097146 *Aug 23, 2004May 5, 2005Konstantinou Alexander V.Methods and systems for autonomously managing a network
US20050102608 *Dec 10, 2004May 12, 2005Microsoft CorporationMethod and system for previewing and printing customized forms
US20050108052 *Oct 22, 2004May 19, 2005Omaboe Nortey J.Proces for diagnosic system and method applying artificial intelligence techniques to a patient medical record and that combines customer relationship management (CRM) and enterprise resource planning (ERP) software in a revolutionary way to provide a unique-and uniquely powerful and easy-to-use-tool to manage veterinary or human medical clinics and hospitals
US20050114661 *Nov 25, 2003May 26, 2005Tom ChengObject-based access control
US20070028159 *Jul 1, 2006Feb 1, 2007Ying Rui SChange-oriented electronic spreadsheet application
US20070050416 *Aug 30, 2005Mar 1, 2007Microsoft CorporationElectronic data snapshot generator
US20070061698 *Sep 9, 2005Mar 15, 2007Mictosoft CorporationDesignating, setting and discovering parameters for spreadsheet documents
US20070130517 *Dec 31, 2002Jun 7, 2007Business ObjectsApparatus and method for delivering portions of reports
US20070136653 *Dec 8, 2005Jun 14, 2007Microsoft CorporationSpreadsheet calculation as part of workflow
US20080046803 *Mar 17, 2003Feb 21, 2008Beauchamp Tim JApplication-specific personalization for data display
US20080235352 *Mar 22, 2007Sep 25, 2008Microsoft CorporationArchitecture for installation and hosting of server-based single purpose applications on clients
US20080271127 *Apr 24, 2007Oct 30, 2008Business Objects, S.A.Apparatus and method for creating stand-alone business intelligence widgets within an authentication framework
US20080294751 *May 23, 2007Nov 27, 2008Sap AgEnhanced widget architecture
US20080307385 *Jun 11, 2007Dec 11, 2008Sap AgEnhanced Widget Composition Platform
US20110145689 *Feb 25, 2011Jun 16, 2011Microsoft CorporationNamed object view over multiple files
Non-Patent Citations
Reference
1 *R. Person,"Special Edition Using Microsoft Excel '97," 1997 Que Corp., pp. 385-410.
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US7873676 *Sep 11, 2007Jan 18, 2011Opshub, Inc.Contextually analyzing data in tabular and graphical reports
US8566953Sep 24, 2007Oct 22, 2013Microsoft CorporationNamed object view of electronic data report
US9053083 *Nov 4, 2011Jun 9, 2015Microsoft Technology Licensing, LlcInteraction between web gadgets and spreadsheets
US9110570 *Oct 7, 2011Aug 18, 2015The Mathworks, Inc.Reversed links from graphical diagram representation
US9171099Aug 8, 2012Oct 27, 2015Microsoft Technology Licensing, LlcSystem and method for providing calculation web services for online documents
US9275032Apr 30, 2012Mar 1, 2016Microsoft Technology Licensing, LlcPrivate views of data and local calculations during real time collaboration
US9495337 *Oct 16, 2012Nov 15, 2016Microsoft Technology Licensing, LlcDynamically created links in reports
US9514116 *Jun 4, 2015Dec 6, 2016Microsoft Technology Licensing, LlcInteraction between web gadgets and spreadsheets
US9747270Jan 7, 2011Aug 29, 2017Microsoft Technology Licensing, LlcNatural input for spreadsheet actions
US20110104653 *Jan 7, 2009May 5, 2011Tufts UniversityInteractive digital workbook system and method
US20130117651 *Nov 4, 2011May 9, 2013Microsoft CorporationInteraction between web gadgets and spreadsheets
US20150347372 *Jun 4, 2015Dec 3, 2015Microsoft Technology Licensing, LlcInteraction between web gadgets and spreadsheets
WO2009089240A1 *Jan 7, 2009Jul 16, 2009Tufts UniversityInteractive digital workbook system and method
WO2012116355A2 *Feb 25, 2012Aug 30, 2012Microsoft CorporationNamed object view over multiple files
WO2012116355A3 *Feb 25, 2012Mar 14, 2013Microsoft CorporationNamed object view over multiple files
Classifications
U.S. Classification715/209
International ClassificationG06F17/24
Cooperative ClassificationG06F17/248
European ClassificationG06F17/24V
Legal Events
DateCodeEventDescription
Nov 4, 2005ASAssignment
Owner name: MICROSOFT CORPORATION, WASHINGTON
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BATTAGIN, DANIEL C.;BEN-TOVIM, YARIV;CAMPBELL, JOHN S.;AND OTHERS;REEL/FRAME:016734/0675;SIGNING DATES FROM 20050907 TO 20050908
Dec 9, 2014ASAssignment
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034543/0001
Effective date: 20141014