IP Library Granted Patent US 11,030,273
Granted Patent B2
US 11,030,273 · App. 15/839,000 · Granted Jun 8, 2021

Converting spreadsheet applications to web-based applications using a data file that includes interactivity attributes of cells for the web-based applications

Inventors: Jonathan P. Rochelle (Chester, NJ); Micah Lemonik (New York, NY); Farzad Khosrowshahi (Pleasantville, NY); John Stephen Danaher (Brooklyn, NY)
Assignee: Google LLC
G06F16/972G06F21/6209G06F40/103G06F40/18G06F40/14G06F40/154
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,030,273
App. No.
15/839,000
Granted
Jun 8, 2021
Kind
B2
Abstract

A method includes receiving a spreadsheet application that is executable using a spreadsheet program; converting the spreadsheet application into a data file that defines characteristics of a networked version of the spreadsheet application that was converted from the spreadsheet application by applying permissions that are set in the spreadsheet application and not applied in the spreadsheet application, wherein the characteristics are defined based on the permissions and include information defining cells of the networked version of the spreadsheet application that are displayable to a user of the networked version of the spreadsheet application; and transmitting the data file to a server to make the data file available to network users as the networked version of the spreadsheet application.

Claims (45)

1. A method comprising:

receiving, by a processor, a spreadsheet application that is executable using a spreadsheet program;

generating, by the processor, a data file that is used to convert the spreadsheet application to a networked version of the spreadsheet application, the data file including interactivity attributes for cells in the networked version of the spreadsheet application and information defining logical functions implemented by cells in the spreadsheet application, the interactivity attributes indicating at least one of how the cells in the networked version are to be displayed or whether the cells in the networked version are to be editable, wherein the generating of the data file comprises:

determining an associated workbook of the spreadsheet application referenced in the logic functions, the associated workbook being different from a main workbook including the cells in the spreadsheet application,

determining whether the associated workbook is currently open,

in response to determining that the associated workbook is currently open, including, into the information defining the logic functions in the data file, a data structure that represents the associated workbook having cells with current values, and

in response to determining that the associated workbook is not currently open, including, into the information defining the logic functions in the data file, a data structure that represents the associated workbook having cells with last available values; and

transmitting, by the processor, the data file to a server to allow one or more client devices connected to the server to access the networked version of the spreadsheet application based on the data file.

2. The method of claim 1 , wherein the networked version of the spreadsheet application is a web-based version of the spreadsheet application.

3. The method of claim 1 , wherein the data file is an extensible markup language (XML) data file.

4. The method of claim 1 , wherein the information regarding the interactivity attributes of the cells in the networked version are abbreviated.

5. The method of claim 1 , wherein the logical functions include information defining formulas associated with the cells in the spreadsheet application.

6. The method of claim 1 , wherein the logical functions include information defining data filtering functions.

7. The method of claim 1 , wherein the logical functions include information defining a data interface between the spreadsheet application and other applications.

8. The method of claim 1 , wherein the logical functions are abbreviated in the data file.

9. The method of claim 1 , wherein the networked version of the spreadsheet application comprises the same logic as the spreadsheet application.

10. The method of claim 1 , wherein the generating of the data file further comprises:

including, into the interactivity attributes of the data file, a first interactivity attribute for a first cell in the networked version instead of a second interactivity attribute of a second cell in the spreadsheet application, the first cell in the networked version corresponding to the second cell in the spreadsheet application, wherein the first interactivity attribute for the first cell in the networked version differs from the second interactivity attribute of the second cell in the spreadsheet application.

11. A non-transitory computer-readable medium storing instructions, the instructions comprising:

one or more instructions which, when executed by a processor, cause the processor to:

receive a spreadsheet application that is executable using a spreadsheet program;

generate a data file that is used to convert the spreadsheet application to a networked version of the spreadsheet application, the data file including interactivity attributes for cells in the networked version of the spreadsheet application and information defining logical functions implemented by cells in the spreadsheet application, the interactivity attributes setting indicating at least one of how the cells in the networked version are to be displayed or whether the cells in the networked version are to be editable, wherein to generate the data file, the processor is to:

determine an associated workbook of the spreadsheet application referenced in the logic functions, the associated workbook being different from a main workbook including the cells in the spreadsheet application,

determine whether the associated workbook is currently open,

in response to determining that the associated workbook is currently open, include, into the information defining the logic functions in the data file, a data structure that represents the associated workbook having cells with current values, and

in response to determining that the associated workbook is not currently open, include, into the information defining the logic functions in the data file, a data structure that represents the associated workbook having cells with last available values; and

transmit the data file to a server to allow one or more client devices connected to the server to access the networked version of the spreadsheet application based on the data file.

12. The computer-readable medium of claim 11 , wherein the networked version of the spreadsheet application is a web-based version of the spreadsheet application.

13. The computer-readable medium of claim 11 , wherein the data file is an extensible markup language (XML) data file.

14. The computer-readable medium of claim 11 , wherein to generate the data file, the processor is further to:

include, into the interactivity attributes of the data file, a first interactivity attribute for a first cell in the networked version instead of a second interactivity attribute of a second cell in the spreadsheet application, the first cell in the networked version corresponding to the second cell in the spreadsheet application, wherein the first interactivity attribute for the first cell in the networked version differs from the second interactivity attribute of the second cell in the spreadsheet application.

15. A device comprising:

a memory to store instructions; and

a processor to execute the instructions to:

receive a spreadsheet application that is executable using a spreadsheet program;

generate a data file that is used to convert the spreadsheet application to a networked version of the spreadsheet application, the data file including interactivity attributes for cells in the networked version and information defining logical functions implemented by cells in the spreadsheet application, the interactivity attributes setting indicating at least one of how the cells in the networked version are to be displayed or whether the cells in the networked version are to be editable, wherein to generate the data file, the processor is to:

determine an associated workbook of the spreadsheet application referenced in the logic functions, the associated workbook being different from a main workbook including the cells in the spreadsheet application,

determine whether the associated workbook is currently open,

in response to determining that the associated workbook is currently open, include, into the information defining the logic functions in the data file, a data structure that represents the associated workbook having cells with current values, and

in response to determining that the associated workbook is not currently open, include, into the information defining the logic functions in the data file, a data structure that represents the associated workbook having cells with last available values; and

transmit the data file to a server to allow one or more client devices connected to the server to access the networked version of the spreadsheet application based on the data file.

16. The device of claim 15 , wherein the networked version of the spreadsheet application is a web-based version of the spreadsheet application.

17. The device of claim 15 , wherein the data file is an extensible markup language (XML) data file.

18. The device of claim 15 , wherein to generate the data file, the processor is further to:

include, into the interactivity attributes of the data file, a first interactivity attribute for a first cell in the networked version instead of a second interactivity attribute of a second cell in the spreadsheet application, the first cell in the networked version corresponding to the second cell in the spreadsheet application, wherein the first interactivity attribute for the first cell in the networked version differs from the second interactivity attribute of the second cell in the spreadsheet application.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Jan 19, 2018
From: GOOGLE INC.; GOOGLE LLC
To: GOOGLE LLC
Reel/Frame 045095/0169 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2018
From: ROCHELLE, JONATHAN P.; LEMONIK, MICAH G.; KHOSROWSHAHI, FARZAD; DANAHER, JOHN
To: GOOGLE INC.
Reel/Frame 044620/0837 →
Continuity (4)
Continuation 14681820 · Apr 8, 2015
Division 11281898 · Nov 18, 2005
Provisional Application 60629577 · Nov 19, 2004
Related Publication 20180101620A1 · Apr 12, 2018