IP Library Granted Patent US 12,244,654
Granted Patent B2
US 12,244,654 · App. 17/715,718 · Granted Mar 4, 2025

Live editing a workbook with multiple clients

Inventors: Jason D. Frantz (San Francisco, CA); Nipurn Doshi (Redwood City, CA); Christopher Messer (San Francisco, CA); Neil F. Lugovoy (Los Gatos, CA)
Assignee: SIGMA COMPUTING, INC.
H04L65/4015H04L65/403
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 12,244,654
App. No.
17/715,718
Granted
Mar 4, 2025
Kind
B2
Abstract

Live editing a workbook with multiple clients including receiving, by a table manager, a request by a first client on a first client computing system to edit a workbook in an exploration mode that displays edits to the workbook without altering the workbook; receiving, by the table manager from the first client, an exploration edit targeting the exploration of the workbook; applying, by the table manager, the exploration edit to the exploration of the workbook; and presenting, by the table manager to a second client on a second client computing system, the application of the exploration edit to the exploration of the workbook.

Claims (44)

1. A method for live editing a workbook with multiple clients, the method comprising:

receiving, by a table manager, a request to edit a workbook in an exploration mode by a first client on a first client computing system with permission to edit the workbook in the exploration mode and without permission to edit the workbook, wherein the exploration mode displays edits to the workbook without altering the workbook, and wherein the workbook presents a data set retrieved by the table manager from a database included within a cloud-based data warehouse;

receiving, by the table manager from the first client, an exploration edit targeting the exploration of the workbook;

applying, by the table manager, the exploration edit to the exploration of the workbook without changing the workbook underlying the exploration of the workbook, including:

creating a temporary workbook file using the workbook as a data source; and

applying the exploration edit to the temporary workbook file;

presenting, by the table manager to a second client on a second client computing system, the application of the exploration edit to the exploration of the workbook;

storing, by the table manager separate from the workbook, a bookmark for the exploration of the workbook comprising the exploration edit and an identifier of the workbook, wherein the bookmark describes a state of the exploration of the workbook comprising the exploration edit; and

in response to a request for the bookmark from a third client on a third client computing system, presenting, to the third client, the application of the exploration edit to the workbook in the exploration mode.

2. The method of claim 1 , further comprising:

detecting that an update has been made to the workbook by a client accessing the workbook; and

presenting the exploration of the workbook comprising the update to the first client on the first client computing system and the second client on the second client computing system.

3. The method of claim 1 , wherein presenting, to the second client on the second client computing system, the application of the exploration edit to the exploration of the workbook is performed contemporaneously with presenting, to the first client on the first client computing system, the application of the exploration edit to the exploration of the workbook.

4. The method of claim 1 , wherein presenting, to the second client on the second client computing system, the application of the exploration edit to the exploration of the workbook comprises presenting an animation of the change to the exploration of the workbook caused by the exploration edit.

5. The method of claim 1 , wherein the exploration edit modifies a visualization of the workbook.

6. The method of claim 1 , wherein the exploration edit modifies a spreadsheet structure of the workbook.

7. The method of claim 1 , wherein the cloud-based data warehouse is separate from a computing system comprising the table manager.

8. The method of claim 1 , wherein the table manager is on an intermediary computing system.

9. An apparatus for live editing a workbook with multiple clients, the apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

receiving, by a table manager, a request to edit a workbook in an exploration mode by a first client on a first client computing system with permission to edit the workbook in the exploration mode and without permission to edit the workbook, wherein the exploration mode displays edits to the workbook without altering the workbook, wherein the workbook presents a data set retrieved by the table manager from a database included within a cloud-based data warehouse;

receiving, by the table manager from the first client, an exploration edit targeting the exploration of the workbook;

applying, by the table manager, the exploration edit to the exploration of the workbook without changing the workbook underlying the exploration of the workbook, including:

creating a temporary workbook file using the workbook as a data source; and

applying the exploration edit to the temporary workbook file;

presenting, by the table manager to a second client on a second client computing system, the application of the exploration edit to the exploration of the workbook;

storing, by the table manager separate from the workbook, a bookmark for the exploration of the workbook comprising the exploration edit and an identifier of the workbook, wherein the bookmark describes a state of the exploration of the workbook comprising the exploration edit; and

in response to a request for the bookmark from a third client on a third client computing system, presenting, to the third client, the application of the exploration edit to the workbook in the exploration mode.

10. The apparatus of claim 9 , wherein the computer program instructions further cause the apparatus to carry out the steps of:

detecting that an update has been made to the workbook by a client accessing the workbook; and

presenting the exploration of the workbook comprising the update to the first client on the first client computing system and the second client on the second client computing system.

11. The apparatus of claim 9 , wherein presenting, to the second client on the second client computing system, the application of the exploration edit to the exploration of the workbook is performed contemporaneously with presenting, to the first client on the first client computing system, the application of the exploration edit to the exploration of the workbook.

12. The apparatus of claim 9 , wherein presenting, to the second client on the second client computing system, the application of the exploration edit to the exploration of the workbook comprises presenting an animation of the change to the exploration of the workbook caused by the exploration edit.

13. The apparatus of claim 9 , wherein the exploration edit modifies a visualization of the workbook.

14. The apparatus of claim 9 , wherein the exploration edit modifies a spreadsheet structure of the workbook.

15. The apparatus of claim 9 , wherein the cloud-based data warehouse is separate from a computing system comprising the table manager.

16. A computer program product for live editing a workbook with multiple clients, the computer program product disposed upon a non-transitory computer readable medium, the computer program product comprising computer program instructions that, when executed, cause a computer to carry out the steps of:

receiving, by a table manager, a request to edit a workbook in an exploration mode by a first client on a first client computing system with permission to edit the workbook in the exploration mode and without permission to edit the workbook, wherein the exploration mode displays edits to the workbook without altering the workbook, wherein the workbook presents a data set retrieved by the table manager from a database included within a cloud-based data warehouse;

receiving, by the table manager from the first client, an exploration edit targeting the exploration of the workbook;

applying, by the table manager, the exploration edit to the exploration of the workbook without changing the workbook underlying the exploration of the workbook, including:

creating a temporary workbook file using the workbook as a data source; and

applying the exploration edit to the temporary workbook file;

presenting, by the table manager to a second client on a second client computing system, the application of the exploration edit to the exploration of the workbook;

storing, by the table manager separate from the workbook, a bookmark for the exploration of the workbook comprising the exploration edit and an identifier of the workbook, wherein the bookmark describes a state of the exploration of the workbook comprising the exploration edit; and

in response to a request for the bookmark from a third client on a third client computing system, presenting, to the third client, the application of the exploration edit to the workbook in the exploration mode.

Assignments (2)
SECURITY INTEREST Recorded Aug 1, 2025
From: SIGMA COMPUTING, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 072316/0724 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 7, 2022
From: FRANTZ, JASON D.; DOSHI, NIPURN; MESSER, CHRISTOPHER; LUGOVOY, NEIL F.
To: SIGMA COMPUTING, INC.
Reel/Frame 059536/0034 →
Continuity (1)
Related Publication 20230328122A1 · Oct 12, 2023
References Cited (78)
US 7496841B2 · Hadfield · 2009 [cited by examiner]
US 7756824B2 · Campbell et al. · 2010 [cited by applicant]
US 7769810B1 · Kaufman · 2010 [cited by examiner]
US 7933952B2 · Parker · 2011 [cited by examiner]
US 8453052B1 · Newman et al. · 2013 [cited by applicant]
US 8453112B1 · Brambley · 2013 [cited by examiner]
US 8516050B1 · Chapweske et al. · 2013 [cited by applicant]
US 8612380B2 · Kleppner et al. · 2013 [cited by applicant]
US 8738706B1 · Grieve et al. · 2014 [cited by applicant]
US 9092413B1 · Ho · 2015 [cited by examiner]
US 9367530B2 · Antebi · 2016 [cited by examiner]
US 9396279B1 · O'Donnell · 2016 [cited by examiner]
US 9785693B2 · Kapadia et al. · 2017 [cited by applicant]
US 10169401B1 · Ho · 2019 [cited by examiner]
US 10503822B1 · Spencer · 2019 [cited by examiner]
US 10606576B1 · Tung · 2020 [cited by examiner]
US 10721084B2 · Simonyi · 2020 [cited by examiner]
US 10740551B2 · Rochelle · 2020 [cited by examiner]
US 10872062B2 · Truong · 2020 [cited by examiner]
US 10887357B2 · Hardee · 2021 [cited by examiner]
US 10902185B1 · Cairns · 2021 [cited by applicant]
US 10970457B2 · Prakash · 2021 [cited by examiner]
US 11023445B2 · Bestfleisch · 2021 [cited by applicant]
US 11755825B2 · Smith · 2023 [cited by examiner]
US 20020065848A1 · Walker · 2002 [cited by examiner]
US 20040205653A1 · Hadfield · 2004 [cited by examiner]
US 20060195532A1 · Zlateff et al. · 2006 [cited by applicant]
US 20080059539A1 · Chin · 2008 [cited by examiner]
US 20090157811A1 · Bailor · 2009 [cited by examiner]
US 20090271696A1 · Bailor et al. · 2009 [cited by applicant]
US 20090327358A1 · Lukiyanov et al. · 2009 [cited by applicant]
US 20100083136A1 · Komine · 2010 [cited by examiner]
US 20100169269A1 · Chandrasekaran · 2010 [cited by applicant]
US 20100318922A1 · Strathearn et al. · 2010 [cited by applicant]
US 20110078246A1 · Dittmer-Roche · 2011 [cited by examiner]
US 20120110445A1 · Greenspan et al. · 2012 [cited by applicant]
US 20120192055A1 · Antebi · 2012 [cited by examiner]
US 20120233137A1 · Jakobson · 2012 [cited by examiner]
US 20130155071A1 · Chan · 2013 [cited by examiner]
US 20130226876A1 · Gati · 2013 [cited by examiner]
US 20130326323A1 · Siwoff · 2013 [cited by examiner]
US 20130326330A1 · Harris · 2013 [cited by examiner]
US 20140101310A1 · Savage · 2014 [cited by examiner]
US 20140195899A1 · Bastide · 2014 [cited by examiner]
US 20140245015A1 · Velamoor · 2014 [cited by examiner]
US 20150113390A1 · Vagell · 2015 [cited by examiner]
US 20150193406A1 · Lemonik · 2015 [cited by examiner]
US 20150378972A1 · Kapadia et al. · 2015 [cited by applicant]
US 20160048486A1 · Lopategui · 2016 [cited by examiner]
US 20160162461A1 · Simon et al. · 2016 [cited by applicant]
US 20160378737A1 · Keslin · 2016 [cited by examiner]
US 20170149906A1 · DeMaris · 2017 [cited by examiner]
US 20170357646A1 · Ayyar · 2017 [cited by examiner]
US 20180189369A1 · Baek · 2018 [cited by examiner]
US 20180196788A1 · Grigorovitch · 2018 [cited by examiner]
US 20180365263A1 · Mohan · 2018 [cited by examiner]
US 20190065526A1 · Ribeiro et al. · 2019 [cited by applicant]
US 20190129973A1 · Truong · 2019 [cited by examiner]
US 20190138588A1 · Silk · 2019 [cited by examiner]
US 20190147402A1 · Sitrick · 2019 [cited by examiner]
US 20190250780A1 · Feng · 2019 [cited by examiner]
US 20200034438A1 · Bestfleisch · 2020 [cited by applicant]
US 20210081605A1 · Smith · 2021 [cited by examiner]
US 20210133253A1 · Underwood et al. · 2021 [cited by applicant]
US 20210216704A1 · Peterson · 2021 [cited by examiner]
US 20210234908A1 · Wallhult et al. · 2021 [cited by applicant]
US 20220222625A1 · Haramati · 2022 [cited by examiner]
US 20220237371A1 · Simon · 2022 [cited by examiner]
US 20230055241A1 · Zionpour · 2023 [cited by examiner]
CN 101527837A · 2009 [cited by applicant]
EP 3230894B1 · 2021 [cited by applicant]
WO WO2002027434A2 · 2002 [cited by examiner]
WO 2009055531A2 · 2009 [cited by applicant]
WO WO2022153122A1 · 2022 [cited by examiner]
Preston Gralla, How to use Excel's new live collaboration features, Aug. 1, 2017, retrieved from—https://www.computerworld.com/ article/3212262/how-to-use-excel-live-collaboration.html, 10 pages (Year: 2017). [cited by examiner]
Google Sheets Connector by Fivetran, retrieved from—https://console.cloud.google.com/marketplace/product/fivetran-bq-dts/google-sheets, Apr. 3, 2021, 2 pages (Year: 2021). [cited by examiner]
How to choose a cloud data warehouse, retrieved from—https://www.infoworld.com/article/3640540/how-to-choose-a-cloud-data-warehouse.html, Dec. 13, 2021, 11 pages (Year: 2021). [cited by examiner]
International Search Report and Written Opinion, PCT/US2023/085269, Apr. 16, 2024, 9 pages. [cited by applicant]