Search

US-12619585-B1 - Automatic rewriting of subtotal calculations

US12619585B1US 12619585 B1US12619585 B1US 12619585B1US-12619585-B1

Abstract

Automatic rewriting of subtotal calculations including presenting, by a table manager, a spreadsheet structure on a GUI of a client computing system, wherein the spreadsheet structure presents a data set from a cloud-based data warehouse; receiving, at a first column of the spreadsheet structure by the table manager, a formula that includes a reference to a second column of the spreadsheet structure, wherein the formula is received from the client computing system; detecting, by the table manager, that the second column includes a subtotal calculation of a third column of the spreadsheet structure; and rewriting, by the table manager, the formula by replacing the reference to the second column with the subtotal calculation of the third column.

Inventors

  • JASON D. FRANTZ
  • Robert C. Woollen
  • Joseph M. Hain

Assignees

  • SIGMA COMPUTING, INC.

Dates

Publication Date
20260505
Application Date
20240606

Claims (18)

  1. 1 . A method for automatic rewriting of subtotal calculations, the method comprising: presenting, by a table manager, a spreadsheet structure on a GUI of a client computing system, wherein the spreadsheet structure presents a data set from a cloud-based data warehouse; receiving, at a first column of the spreadsheet structure by the table manager, a formula that includes a reference to a second column of the spreadsheet structure, wherein the formula is received from the client computing system; detecting, by the table manager, that the second column includes a subtotal calculation of a third column of the spreadsheet structure; and rewriting, by the table manager, the formula by replacing the reference to the second column with the subtotal calculation of the third column.
  2. 2 . The method of claim 1 , wherein the subtotal calculation is an arbitrary expression received from the client computing system.
  3. 3 . The method of claim 1 , wherein the formula in the first column calculates a value at a different granularity than a value calculated for the second column.
  4. 4 . The method of claim 1 , wherein the subtotal calculation of the second column changes depending on a level of granularity selected for the second column.
  5. 5 . The method of claim 1 , wherein each subtotal calculation of the second column uses a portion of existing rows in the third column as input.
  6. 6 . The method of claim 1 , wherein presenting the spreadsheet structure on the GUI of the client computing system comprises issuing a database statement to the cloud-based data warehouse and receiving the data set as query results from the cloud-based data warehouse.
  7. 7 . The method of claim 1 , wherein detecting that the second column includes the subtotal calculation of the third column comprises evaluating the received formula for the reference to any column comprising the subtotal calculation.
  8. 8 . The method of claim 1 , wherein the spreadsheet structure is within a workbook, and wherein rewriting the formula comprises storing the workbook with the rewritten formula on an intermediary computing system between the client computing system and the cloud-based data warehouse.
  9. 9 . The method of claim 1 , wherein the table manager is on an intermediary computing system between the client computing system and the cloud-based data warehouse.
  10. 10 . An apparatus for automatic rewriting of subtotal calculations, 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: presenting a spreadsheet structure on a GUI of a client computing system, wherein the spreadsheet structure presents a data set from a cloud-based data warehouse; receiving, at a first column of the spreadsheet structure, a formula that includes a reference to a second column of the spreadsheet structure, wherein the formula is received from the client computing system; detecting that the second column includes a subtotal calculation of a third column of the spreadsheet structure; and rewriting the formula by replacing the reference to the second column with the subtotal calculation of the third column.
  11. 11 . The apparatus of claim 10 , wherein the subtotal calculation is an arbitrary expression received from the client computing system.
  12. 12 . The apparatus of claim 10 , wherein the formula in the first column calculates a value at a different granularity than a value calculated for the second column.
  13. 13 . The apparatus of claim 10 , wherein the subtotal calculation of the second column changes depending on a level of granularity selected for the second column.
  14. 14 . The apparatus of claim 10 , wherein each subtotal calculation of the second column uses a portion of existing rows in the third column as input.
  15. 15 . The apparatus of claim 10 , wherein presenting the spreadsheet structure on the GUI of the client computing system comprises issuing a database statement to the cloud-based data warehouse and receiving the data set as query results from the cloud-based data warehouse.
  16. 16 . The apparatus of claim 10 , wherein detecting that the second column includes the subtotal calculation of the third column comprises evaluating the received formula for the reference to any column comprising the subtotal calculation.
  17. 17 . The apparatus of claim 10 , wherein the spreadsheet structure is within a workbook, and wherein rewriting the formula comprises storing the workbook with the rewritten formula on an intermediary computing system between the client computing system and the cloud-based data warehouse.
  18. 18 . A computer program product for automatic rewriting of subtotal calculations, the computer program product disposed upon a computer readable medium, the computer program product comprising computer program instructions that, when executed, cause a computer to carry out the steps of: presenting a spreadsheet structure on a GUI of a client computing system, wherein the spreadsheet structure presents a data set from a cloud-based data warehouse; receiving, at a first column of the spreadsheet structure, a formula that includes a reference to a second column of the spreadsheet structure, wherein the formula is received from the client computing system; detecting that the second column includes a subtotal calculation of a third column of the spreadsheet structure; and rewriting the formula by replacing the reference to the second column with the subtotal calculation of the third column.

Description

BACKGROUND Field of the Invention The field of the invention is data processing, or, more specifically, methods, apparatus, and products for automatic rewriting of subtotal calculations. Description of Related Art Modern businesses may store large amounts of data in remote databases within cloud-based data warehouses. This data may be accessed using database statement languages, such as structured query language (SQL). Manipulating the data stored in the database may require constructing complex queries beyond the abilities of most users. Further, composing and issuing database queries efficiently may also be beyond the abilities of most users. SUMMARY Methods, systems, and apparatus for automatic rewriting of subtotal calculations including presenting, by a table manager, a spreadsheet structure on a GUI of a client computing system, wherein the spreadsheet structure presents a data set from a cloud-based data warehouse; receiving, at a first column of the spreadsheet structure by the table manager, a formula that includes a reference to a second column of the spreadsheet structure, wherein the formula is received from the client computing system; detecting, by the table manager, that the second column includes a subtotal calculation of a third column of the spreadsheet structure; and rewriting, by the table manager, the formula by replacing the reference to the second column with the subtotal calculation of the third column. The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular descriptions of exemplary embodiments of the invention as illustrated in the accompanying drawings wherein like reference numbers generally represent like parts of exemplary embodiments of the invention. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 sets forth a block diagram of an example system configured for automatic rewriting of subtotal calculations according to embodiments of the present invention. FIG. 2 sets forth a block diagram of an example system configured for automatic rewriting of subtotal calculations according to embodiments of the present invention. FIG. 3 sets forth a block diagram of an example system configured for automatic rewriting of subtotal calculations according to embodiments of the present invention. FIG. 4 sets forth a flow chart illustrating an exemplary method for automatic rewriting of subtotal calculations according to embodiments of the present invention. FIG. 5 sets forth a flow chart illustrating an exemplary method for automatic rewriting of subtotal calculations according to embodiments of the present invention. DETAILED DESCRIPTION Exemplary methods, apparatus, and products for automatic rewriting of subtotal calculations in accordance with the present invention are described with reference to the accompanying drawings, beginning with FIG. 1. FIG. 1 sets forth a block diagram of automated computing machinery comprising an exemplary intermediary computing system 152 configured for automatic rewriting of subtotal calculations according to embodiments of the present invention. The intermediary computing system 152 of FIG. 1 includes at least one computer processor 156 or ‘CPU’ as well as random access memory 168 (‘RAM’) which is connected through a high speed memory bus 166 and bus adapter 158 to processor 156 and to other components of the intermediary computing system 152. Stored in RAM 168 is an operating system 154. Operating systems useful in computers configured for automatic rewriting of subtotal calculations according to embodiments of the present invention include UNIX™, Linux™, Microsoft Windows™, AIX™, and others as will occur to those of skill in the art. The operating system 154 in the example of FIG. 1 is shown in RAM 168, but many components of such software typically are stored in non-volatile memory also, such as, for example, on data storage 170, such as a disk drive. Also stored in RAM is the table manager 126, a module for automatic rewriting of subtotal calculations according to embodiments of the present invention. The intermediary computing system 152 of FIG. 1 includes disk drive adapter 172 coupled through expansion bus 160 and bus adapter 158 to processor 156 and other components of the intermediary computing system 152. Disk drive adapter 172 connects non-volatile data storage to the intermediary computing system 152 in the form of data storage 170. Disk drive adapters useful in computers configured for automatic rewriting of subtotal calculations according to embodiments of the present invention include Integrated Drive Electronics (‘IDE’) adapters, Small Computer System Interface (‘SCSI’) adapters, and others as will occur to those of skill in the art. Non-volatile computer memory also may be implemented for as an optical disk drive, electrically erasable programmable read-only memory (so-called ‘EEPROM’ or ‘Flash’ memory), RAM drives, and so on, as will occur to those of skill in the art. The examp