US20060107196A1 - Method for expanding and collapsing data cells in a spreadsheet report - Google Patents

Method for expanding and collapsing data cells in a spreadsheet report Download PDF

Info

Publication number
US20060107196A1
US20060107196A1 US10/987,013 US98701304A US2006107196A1 US 20060107196 A1 US20060107196 A1 US 20060107196A1 US 98701304 A US98701304 A US 98701304A US 2006107196 A1 US2006107196 A1 US 2006107196A1
Authority
US
United States
Prior art keywords
report
spreadsheet
child
parent
cell
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
US10/987,013
Inventor
Lakshmi Thanu
Peter Eberhardy
Dylan Huang
Xiaohong Yang
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Priority to US10/987,013 priority Critical patent/US20060107196A1/en
Assigned to MICROSOFT CORPORATION reassignment MICROSOFT CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: EBERHARDY, PETER, HUANG, DYLAN HAI, THANU, LAKSHMI N., YANG, XIAOHONG MARK
Publication of US20060107196A1 publication Critical patent/US20060107196A1/en
Priority to US12/843,745 priority patent/US8473837B2/en
Priority to US13/923,189 priority patent/US10133721B2/en
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC reassignment MICROSOFT TECHNOLOGY LICENSING, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MICROSOFT CORPORATION
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines

Definitions

  • a spreadsheet is a table of values arranged in rows and columns. Each value can have a predefined relationship to the other values. If one value is changed, other values may also need to be changed.
  • Spreadsheet applications are computer programs that allow for the electronic creation and manipulation of spreadsheets. In a spreadsheet application, each value sits in a data cell. A user may define what type of data is in each cell and how different cells depend on each other. The relationships between cells are called formulas, and the names of the cells are called labels. Data may be entered into the spreadsheet after the cells and the formulas for linking the cells together are defined. Selected values may be modified and other values may change accordingly.
  • Data may be extracted from one or more files and presented to a spreadsheet application in a specified format.
  • the data may be formatted into a report in rows and columns.
  • a free-form report includes data cells that are each formula-based such that the individual cells may be moved around the spreadsheet without affecting the functionality of the report.
  • a free-form report is not confined to pre-defined ranges. Extra rows and columns may be inserted into a free-form report to customize the report according to user needs.
  • a parent cell in a free-form report may have a number of associated descendent (or child) cells.
  • a cell labeled U.S.A. (the parent cell) may be associated with up to fifty child cells (one cell for each state of the union).
  • a user may expand the parent cell to display the associated child cells.
  • a user may also collapse the parent cell such that the child cells are not displayed.
  • the collapsed parent cell may be displayed in the report proximate associated sibling cells (e.g., Canada, China, France).
  • the expansion and collapse of child cells in a free-form report may disrupt other reports or text in the spreadsheet.
  • the expansion of a parent cell to display the associated child cells may extend occupied data cells in the spreadsheet beyond the spreadsheet border since the number of spreadsheet cells is limited (e.g. 65536 rows and 256 columns).
  • the present invention is directed to the collapse and expansion of data cells in a spreadsheet report such that the display of data in other areas of the spreadsheet is not disrupted.
  • a report may be expanded by displaying any child members associated with a parent member in the report. The child members may be displayed proximate the parent member.
  • the expanded report may also be collapsed such that the child members associated with the parent member are not displayed in the report.
  • the data integrity of the spreadsheet is preserved by scanning the spreadsheet for information associated with the data cells of the report, and then expanding or collapsing the report based on the information.
  • a user may want to drill down on data corresponding to the parent member to display more detailed information about the parent member. Likewise, a user may want to drill up the displayed information corresponding to the parent member to hide detailed information associated with the parent member.
  • the spreadsheet is scanned for information to determine whether other reports or text in the spreadsheet would be disrupted by the expand/collapse operation.
  • the information may include cross-join information associated with the report, the number of child members associated with the parent member, the dimension of the report created by the parent member and the associated child members, and other reports that may be linked to the report that includes the parent member.
  • the parent member is expanded into a report including the associated child members.
  • the parent member is expanded based on the information obtained by scanning the spreadsheet such that the expansion does not disrupt the display of data cells in other areas of the spreadsheet external to the report. If the spreadsheet area between the vertical borders of the report and the vertical borders of the spreadsheet do not include any occupied data cells, then the rows in the spreadsheet may be replaced with rows that include the child members such that the child members appear in the expanded report without disrupting the integrity of data in the spreadsheet external to the report. If data cells in the spreadsheet area to the left or to the right of the report are occupied with values, but data cells in the spreadsheet area above or below the report are not occupied with values, then the report may be expanded by adding blank ranges of data cells to the report. The child members may then be written to the added data cells. If data cells in the spreadsheet area above or below the report are occupied with values, then the report may only be expanded if the display of the spreadsheet data external to the report is not disrupted by the expansion.
  • the child members may be collapsed such that only the associated parent member is displayed in the report.
  • the child members are collapsed based on the information obtained by scanning the spreadsheet such that the collapse does not disrupt the display of data cells in other areas of the spreadsheet external to the report. If the data cells are empty in the spreadsheet area to the left and to the right of the report, all of the rows in the report that contain the child members are removed from display in the report. Any occupied spreadsheet data cells that are located below the report may be moved upward to occupy any data cells vacated by the removed child members.
  • the spreadsheet area between the left border of the report and the left border of the spreadsheet and right border of the report and the right border of the spreadsheet contains at least one occupied data cell but the spreadsheet area between the lower border of the report and the lower border of the spreadsheet does not contain any occupied data cells, the rows containing the child members are removed from the report range such that other data in the spreadsheet area to the right and to the left of the report is not disrupted. If the spreadsheet area between the lower (or upper) border of the report and the lower (or upper) border of the spreadsheet contains occupied data cells, the report may only be collapsed if the display of data in the spreadsheet would not be disrupted. Any remaining members of the report are moved upward as necessary.
  • FIG. 1 illustrates a computing device that may be used according to an example embodiment of the present invention.
  • FIG. 2 illustrates a block diagram of a system for expanding and collapsing data cells in a spreadsheet report, in accordance with the present invention.
  • FIG. 3 illustrates the expansion and collapse of data cells in a spreadsheet report, in accordance with the present invention.
  • FIG. 4 illustrates the expansion and collapse of data cells in a cross-joined report in a spreadsheet application, in accordance with the present invention.
  • FIG. 5 illustrates how a determination is made to expand or collapse data cells in a spreadsheet report without disrupting other data in the spreadsheet, in accordance with the present invention.
  • FIG. 6 is an operational flow diagram illustrating a process for expanding data cells in a spreadsheet report, in accordance with the present invention.
  • FIG. 7 is an operational flow diagram illustrating a process for collapsing data cells in a spreadsheet report, in accordance with the present invention.
  • Data cells in a spreadsheet report are collapsed and expanded without disrupting the display of other spreadsheet data external to the report.
  • a user may want to drill down on data corresponding to a parent member of the report to display more detailed information about the parent member. The more detailed information is presented as child members that include detailed information about the data of the parent member. Likewise, a user may want to drill up the displayed information corresponding to the parent member to hide detailed information associated with the parent member.
  • the expanded report is collapsed such that the child members associated with the parent member are not displayed in the report.
  • the spreadsheet is scanned for information to determine whether spreadsheet data external to the report would be disrupted by the expansion/collapse.
  • the information may include cross-join information associated with the parent member, the number of child members associated with the parent member, the dimension of the report created by the parent member and the associated child members, and other reports that may be linked to the report that includes the parent member.
  • computing device 100 includes a computing device, such as computing device 100 .
  • Computing device 100 may be configured as a client, a server, a mobile device, or any other computing device that interacts with data in a network based collaboration system.
  • computing device 100 typically includes at least one processing unit 102 and system memory 104 .
  • system memory 104 may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.) or some combination of the two.
  • System memory 104 typically includes an operating system 105 , one or more applications 106 , and may include program data 107 .
  • a reporting module 108 which is described in detail below, is implemented within applications 106 .
  • Computing device 100 may have additional features or functionality.
  • computing device 100 may also include additional data storage devices (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape.
  • additional storage is illustrated in FIG. 1 by removable storage 109 and non-removable storage 110 .
  • Computer storage media may include volatile and nonvolatile, 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.
  • System memory 104 , removable storage 109 and non-removable storage 110 are all examples of computer storage media.
  • Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other 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 computing device 100 . Any such computer storage media may be part of device 100 .
  • Computing device 100 may also have input device(s) 112 such as keyboard, mouse, pen, voice input device, touch input device, etc.
  • Output device(s) 114 such as a display, speakers, printer, etc. may also be included.
  • Computing device 100 also contains communication connections 116 that allow the device to communicate with other computing devices 118 , such as over a network.
  • Networks include local area networks and wide area networks, as well as other large scale networks including, but not limited to, intranets and extranets.
  • Communication connection 116 is one example of communication media.
  • Communication media may typically be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media.
  • modulated data signal means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
  • communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media.
  • wireless media such as acoustic, RF, infrared and other wireless media.
  • computer readable media includes both storage media and communication media.
  • FIG. 2 illustrates a block diagram of a system for expanding and collapsing data cells in a spreadsheet report.
  • the system includes spreadsheet application 200 , reporting module 210 , and data store 220 .
  • Spreadsheet application 200 may be provided at a client.
  • Data store 220 may be provided at a server.
  • Reporting module 210 communicates with data store 220 to provide data to spreadsheet application 200 .
  • Data in data store 220 may be processed by Online Analytical Processing (OLAP).
  • OLAP is a category of software tools that provides analysis of data stored in a database. OLAP tools enable users to analyze different dimensions of multiple data. For example, OLAP provides time series and trend analysis views. OLAP is often used in data mining.
  • the chief component of OLAP is the OLAP server, which is provided between a client and a database management system. The OLAP server understands how data is organized in the database and has special functions for analyzing the data.
  • Reporting module 210 may be a program that extracts data from one or more files and presents the information to spreadsheet application 200 in a specified format. Reporting module 210 may format the data into a report in rows and columns. The present invention is directed to the collapse and expansion of data cells in a free-form report using reporting module 210 . The processing performed by reporting module 210 is described in detail below.
  • FIG. 3 illustrates the expansion and collapse of data cells in a spreadsheet report.
  • the figure shows a collapsed report 300 and an expanded report 350 .
  • Collapsed report 300 includes parent members 310 and sibling member 320 .
  • a member may be one individual data cell, or a group of related data cells.
  • the group of related data cells may be included within one row, one column, or a data region.
  • a data region may include multiple data cells in adjacent rows and columns.
  • the data region is expanded/collapsed as one entity.
  • parent member 310 includes three data cells each occupied with a value (e.g., USA, 9, and 18).
  • a user may wish to expand parent member 310 .
  • the user may expand parent member 310 by double clicking or right-clicking a mouse anywhere within parent member 310 .
  • expanding parent member 310 causes child members 360 , 370 , 380 to be displayed in the report in rows below parent member 310 .
  • Sibling member 320 is moved downward to make room for child members 360 , 370 , 380 .
  • the report is expanded such that the child members appear above the associated parent member.
  • the parent member may be a column of values such that when the report is expanded, new columns appear in the report proximate the parent member. The new columns may appear proximate the parent member.
  • Expanded report 350 may be collapsed to form collapsed report 300 by double clicking or right clicking a mouse on any child member 360 , 370 , 380 .
  • Known processes of expanding and collapsing reports may disrupt other data in the spreadsheet that is external to the report.
  • the present invention preserves the integrity of data in the spreadsheet by scanning the spreadsheet for information associated with the parent and child members of the report. The report may then be expanded or collapsed based on the information.
  • FIG. 4 illustrates the expansion and collapse of data cells in a cross-joined spreadsheet report.
  • a collapsed report 400 and an expanded report 450 display data from two dimensions that are used in conjunction with each other (i.e., a cross-joined report). For example, sales information related to both food and drink may be combined to form one cross-joined report.
  • a user may expand parent member 410 to reveal child members 460 , 470 , 480 .
  • child members 460 , 470 , 480 in expanded report 450 may be collapsed to form collapsed report 400 .
  • the spreadsheet is scanned and analyzed to determine if an expansion or collapse operation may be performed without disrupting the display of other data in the spreadsheet.
  • the other data in the spreadsheet may be other reports or text. For example, a determination is made about the existence of empty data cells to the left and to the right of the report. If there are not any occupied data cells on either side of the report, the report may be expanded by replacing the rows of the spreadsheet with the rows that include the child members such that the child members are displayed in the report proximate the parent member without disrupting the display of other spreadsheet data.
  • a spreadsheet may contain so many occupied data cells that some of the occupied data cells are located proximate the spreadsheet border. Since the area of the spreadsheet is limited (e.g. 65536 rows by 256 columns) report expansion may cause spreadsheet data to be pushed off the spreadsheet. For example, a parent member may be expanded such that new columns/rows are added that cause data cells proximate the spreadsheet boundary to expand beyond the boundary. In order to avoid data loss due to overexpansion, a determination is made whether the display of spreadsheet data would be disrupted before a parent member is expanded.
  • FIG. 5 illustrates how a determination is made to expand or collapse data cells in a spreadsheet report without disrupting other data in the spreadsheet.
  • Spreadsheet 500 includes collapsed report 510 (outlined in bold).
  • Collapsed report 510 includes parent member 520 .
  • Parent member 520 may include only one data cell or a group of data cells that form a portion of a row, a portion of a column, or a data region comprised of portions of rows and columns. As shown in the figure, parent member 520 includes a row of three data cells.
  • Sibling members 530 , 540 are related to parent member 520 and may be expanded to display associated child members.
  • a user may request the expansion of parent member 520 by double-clicking or right clicking anywhere on the parent member.
  • spreadsheet 500 is scanned for information related to parent member 520 to determine whether the display of other data in spreadsheet 500 would be disrupted by the expansion.
  • Area 1 includes the data cells in spreadsheet 500 between the left border of spreadsheet 500 and the left border of collapsed report 510 .
  • Area 2 includes the data cells in spreadsheet 500 between the right border of spreadsheet 500 and the right border of collapsed report 510 .
  • Area 3 includes the data cells in spreadsheet 500 between the bottom border of spreadsheet 500 and the bottom border of collapsed report 510 .
  • Area 4 includes the data cells in spreadsheet 500 between the top border of spreadsheet 500 and the top border of collapsed report 510 .
  • the number of rows required for expansion may be added to the spreadsheet proximate parent member 520 .
  • Each row includes a child member associated with parent member 520 .
  • the child members associated with parent member 520 are displayed in the report.
  • expanded report 550 includes parent member 520 and child members 560 , 570 , 580 .
  • Sibling members 530 , 540 are moved downward into Area 3 to make room for child members 560 , 570 , 580 which are added directly below parent member 520 .
  • child members 560 , 570 , 580 may be located above parent member 520 .
  • the associated child members may be displayed in columns to the left or the right of the parent member.
  • an exact number of rows may be added within the data cell range of the report. For example, as shown in the lower portion of the figure, three rows may be added to create expanded report 550 . The added rows correspond to child members 560 , 570 , 580 . Each row added to the report is three data cells long which corresponds to the horizontal data cell range of the report. Thus, the display of data in Areas 1 , 2 , 3 or 4 is not disrupted by the expansion.
  • expansion may only be performed if the expansion does not disrupt the display of data in Areas 3 and 4 .
  • a single data member three data cells in length is located in Area 3 at least four data cells above the lower border of the spreadsheet.
  • the display of the data member would not be disrupted by the expansion of collapsed report 500 because the expansion would merely push the data member downward toward the lower border of spreadsheet 500 .
  • the expansion of collapsed report 510 would disrupt the display of the data member because the data member would be pushed off spreadsheet 500 .
  • Expanded report 550 may also be collapsed. Expanded report 550 is scanned for information associated with parent member 520 and child members 560 , 570 , 580 . The information is analyzed to determine how the display of related data in other areas of the spreadsheet would be affected by the collapse. The information may include any cross-join information and dependencies associated with parent member 520 and child members 560 , 570 , 580 . The information may also include the total number of child members associated with parent member 520 . A determination is then made about how to collapse child members 560 , 570 , 580 .
  • sibling members 530 , 540 may be moved upward proximate parent member 520 , as shown in collapsed report 510 . If there are any occupied data cells in Areas 1 or 2 and data cells in Areas 3 and 4 are empty, the rows within the report range where the child members are located are removed from the report such that the display of data in Areas 1 and 2 is not disrupted by the collapse. Sibling members 530 , 540 may be moved upward proximate parent member 520 . If any data cells in Areas 1 , 2 , 3 and 4 are occupied with values, then collapse may only be performed if the display of data in Areas 3 and 4 would not be disrupted.
  • FIG. 6 is an operational flow diagram illustrating a process for expanding a parent member in a spreadsheet report.
  • the process begins at a start block where a spreadsheet includes a number of occupied data cells and a report.
  • the report includes at least one parent member. If the parent member is not associated with at least one associated child member, then expansion cannot be performed.
  • the parent member may be a single data cell, or a group of data cells arranged in a row, column, or a data region.
  • a request is received to expand a parent member. Expanding the parent member displays any associated child members in the report in a location proximate the parent member.
  • the request to expand is submitted by a user. For example, the user may double click or right-click a mouse on the parent member to submit an expand request. The user may want to expand the parent member to display more detailed information associated with the parent member.
  • information related to the parent member is retrieved.
  • the information is a unique member name that is retrieved by scanning the spreadsheet.
  • the information is retrieved from a data store associated with the spreadsheet.
  • the information retrieved from the data store may include the quantity of child members associated with the parent member, the names of the child members and the dimension of the expanded report created by the parent member and the associated child members.
  • any dependencies on the parent member are determined by scanning the spreadsheet.
  • the dependencies may be cross-join information associated with the parent member. The cross-join information allows the report to display data from two or more dimensions that are used in conjunction with each other.
  • the dependencies may be other reports that are linked to the parent member. For example, when a parent member is expanded in a first report, an associated parent member may be expanded in a second report that is linked to the first report. All of the data cells that are dependent on the parent member are tallied to determine the total number of data cells that would be displayed upon expansion.
  • the number of child members associated with the parent member is determined by batch. For example, a determination is made whether a group of data cells are all child members. If so, a determination is made whether a next group of data cells are child members. If all of the data cells in the batch are not identified as child members that are associated with the parent member, each data cell is checked individually to determine where the list of child members ends.
  • the data cells above or below the report may only be used to expand the report if the display of data in the areas above or below the report is not disrupted by the expansion. If the display of data in the areas above or below the report would be disrupted by the expansion, then the parent member cannot be expanded.
  • any sibling members are moved such that the child members may be displayed proximate the parent member.
  • a parent member in a collapsed report is displayed with a sibling member located directly below the parent member.
  • the sibling member is moved three rows down, and the three child members are displayed in the three rows below the parent member.
  • the format and formula associated with the parent member is spread to the child members.
  • the format and formula may be spread across the range of the expanded report in one direction (e.g., horizontally across a row) and then in a different direction (vertically through columns of the report). Any cross-join references are also accounted for such that sufficient space is made available to display all of the child members associated with the parent member.
  • FIG. 7 is an operational flow diagram illustrating a process for collapsing a group of child members in a spreadsheet report.
  • the process begins at a start block where a spreadsheet includes a number of occupied data cells and a report.
  • the report includes a parent member that has at least one associated child member. The parent cell member and the associated child members are displayed in the report.
  • a request is received to collapse a report such that the child members are not displayed in the report.
  • the request to collapse the report is submitted by a user.
  • the user may submit a collapse request by double clicking or right-clicking a mouse on the report to be collapsed.
  • the user may want to collapse the report to remove detailed information associated with the parent member.
  • information related to the child members displayed in the report to be collapsed is obtained.
  • the information may be obtained by scanning the spreadsheet.
  • the information may include the number of parent members and associated child members in the report, and the dimension of the expanded report created by the parent member and the associated child members.
  • the dimension of the expanded report indicates the location of data cells that are not included in the expanded report (i.e., the position where the collapse ends).
  • any dependencies on the child members are determined.
  • the dependencies may be cross-join information.
  • the expanded report is scanned to determine whether any cross-join information exists.
  • the dependencies may be other reports that are related to the child members or otherwise linked to the expanded report. For example, when a group of child members is collapsed in one report, an associated group of child members may be collapsed in a linked report. The number of data cells that are dependent on the child members are tallied to determine the spreadsheet area affected by the collapse of the child members.
  • the report may only be collapsed if the display of data in other areas of the spreadsheet external to the report is not disrupted.
  • the collapse of the report is then performed at block 740 in accordance with the determined child member collapse method. Processing then terminates at an end block.

Abstract

Data cells in a spreadsheet report are collapsed and expanded without disrupting other spreadsheet data. A user may want to drill down on data corresponding to a parent member of the report to display more detailed information about the parent member. Likewise, a user may want to drill up the displayed information corresponding to the parent member to hide detailed information associated with the parent member. Before expanding or collapsing a report, the spreadsheet is scanned for information to determine whether the display of other data in the spreadsheet would be disrupted by the expansion/collapse. The information may include cross-join information associated with the parent member, the number of child members associated with the parent member, the dimension of the report created by the parent member and the associated child members, and other reports that may be linked to the report that includes the parent member.

Description

    BACKGROUND OF THE INVENTION
  • A spreadsheet is a table of values arranged in rows and columns. Each value can have a predefined relationship to the other values. If one value is changed, other values may also need to be changed. Spreadsheet applications are computer programs that allow for the electronic creation and manipulation of spreadsheets. In a spreadsheet application, each value sits in a data cell. A user may define what type of data is in each cell and how different cells depend on each other. The relationships between cells are called formulas, and the names of the cells are called labels. Data may be entered into the spreadsheet after the cells and the formulas for linking the cells together are defined. Selected values may be modified and other values may change accordingly.
  • Data may be extracted from one or more files and presented to a spreadsheet application in a specified format. The data may be formatted into a report in rows and columns. A free-form report includes data cells that are each formula-based such that the individual cells may be moved around the spreadsheet without affecting the functionality of the report. A free-form report is not confined to pre-defined ranges. Extra rows and columns may be inserted into a free-form report to customize the report according to user needs.
  • A parent cell in a free-form report may have a number of associated descendent (or child) cells. For example, a cell labeled U.S.A. (the parent cell) may be associated with up to fifty child cells (one cell for each state of the union). A user may expand the parent cell to display the associated child cells. A user may also collapse the parent cell such that the child cells are not displayed. The collapsed parent cell may be displayed in the report proximate associated sibling cells (e.g., Canada, China, France). The expansion and collapse of child cells in a free-form report may disrupt other reports or text in the spreadsheet. Furthermore, the expansion of a parent cell to display the associated child cells may extend occupied data cells in the spreadsheet beyond the spreadsheet border since the number of spreadsheet cells is limited (e.g. 65536 rows and 256 columns).
  • SUMMARY OF THE INVENTION
  • The present invention is directed to the collapse and expansion of data cells in a spreadsheet report such that the display of data in other areas of the spreadsheet is not disrupted. A report may be expanded by displaying any child members associated with a parent member in the report. The child members may be displayed proximate the parent member. The expanded report may also be collapsed such that the child members associated with the parent member are not displayed in the report. The data integrity of the spreadsheet is preserved by scanning the spreadsheet for information associated with the data cells of the report, and then expanding or collapsing the report based on the information.
  • A user may want to drill down on data corresponding to the parent member to display more detailed information about the parent member. Likewise, a user may want to drill up the displayed information corresponding to the parent member to hide detailed information associated with the parent member. Before expanding or collapsing a report, the spreadsheet is scanned for information to determine whether other reports or text in the spreadsheet would be disrupted by the expand/collapse operation. The information may include cross-join information associated with the report, the number of child members associated with the parent member, the dimension of the report created by the parent member and the associated child members, and other reports that may be linked to the report that includes the parent member.
  • The parent member is expanded into a report including the associated child members. The parent member is expanded based on the information obtained by scanning the spreadsheet such that the expansion does not disrupt the display of data cells in other areas of the spreadsheet external to the report. If the spreadsheet area between the vertical borders of the report and the vertical borders of the spreadsheet do not include any occupied data cells, then the rows in the spreadsheet may be replaced with rows that include the child members such that the child members appear in the expanded report without disrupting the integrity of data in the spreadsheet external to the report. If data cells in the spreadsheet area to the left or to the right of the report are occupied with values, but data cells in the spreadsheet area above or below the report are not occupied with values, then the report may be expanded by adding blank ranges of data cells to the report. The child members may then be written to the added data cells. If data cells in the spreadsheet area above or below the report are occupied with values, then the report may only be expanded if the display of the spreadsheet data external to the report is not disrupted by the expansion.
  • The child members may be collapsed such that only the associated parent member is displayed in the report. The child members are collapsed based on the information obtained by scanning the spreadsheet such that the collapse does not disrupt the display of data cells in other areas of the spreadsheet external to the report. If the data cells are empty in the spreadsheet area to the left and to the right of the report, all of the rows in the report that contain the child members are removed from display in the report. Any occupied spreadsheet data cells that are located below the report may be moved upward to occupy any data cells vacated by the removed child members. If the spreadsheet area between the left border of the report and the left border of the spreadsheet and right border of the report and the right border of the spreadsheet contains at least one occupied data cell but the spreadsheet area between the lower border of the report and the lower border of the spreadsheet does not contain any occupied data cells, the rows containing the child members are removed from the report range such that other data in the spreadsheet area to the right and to the left of the report is not disrupted. If the spreadsheet area between the lower (or upper) border of the report and the lower (or upper) border of the spreadsheet contains occupied data cells, the report may only be collapsed if the display of data in the spreadsheet would not be disrupted. Any remaining members of the report are moved upward as necessary.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 illustrates a computing device that may be used according to an example embodiment of the present invention.
  • FIG. 2 illustrates a block diagram of a system for expanding and collapsing data cells in a spreadsheet report, in accordance with the present invention.
  • FIG. 3 illustrates the expansion and collapse of data cells in a spreadsheet report, in accordance with the present invention.
  • FIG. 4 illustrates the expansion and collapse of data cells in a cross-joined report in a spreadsheet application, in accordance with the present invention.
  • FIG. 5 illustrates how a determination is made to expand or collapse data cells in a spreadsheet report without disrupting other data in the spreadsheet, in accordance with the present invention.
  • FIG. 6 is an operational flow diagram illustrating a process for expanding data cells in a spreadsheet report, in accordance with the present invention.
  • FIG. 7 is an operational flow diagram illustrating a process for collapsing data cells in a spreadsheet report, in accordance with the present invention.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
  • Data cells in a spreadsheet report are collapsed and expanded without disrupting the display of other spreadsheet data external to the report. A user may want to drill down on data corresponding to a parent member of the report to display more detailed information about the parent member. The more detailed information is presented as child members that include detailed information about the data of the parent member. Likewise, a user may want to drill up the displayed information corresponding to the parent member to hide detailed information associated with the parent member. The expanded report is collapsed such that the child members associated with the parent member are not displayed in the report. Before expanding or collapsing the report, the spreadsheet is scanned for information to determine whether spreadsheet data external to the report would be disrupted by the expansion/collapse. The information may include cross-join information associated with the parent member, the number of child members associated with the parent member, the dimension of the report created by the parent member and the associated child members, and other reports that may be linked to the report that includes the parent member.
  • Illustrative Operating Environment
  • With reference to FIG. 1, one example system for implementing the invention includes a computing device, such as computing device 100. Computing device 100 may be configured as a client, a server, a mobile device, or any other computing device that interacts with data in a network based collaboration system. In a very basic configuration, computing device 100 typically includes at least one processing unit 102 and system memory 104. Depending on the exact configuration and type of computing device, system memory 104 may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.) or some combination of the two. System memory 104 typically includes an operating system 105, one or more applications 106, and may include program data 107. A reporting module 108, which is described in detail below, is implemented within applications 106.
  • Computing device 100 may have additional features or functionality. For example, computing device 100 may also include additional data storage devices (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape. Such additional storage is illustrated in FIG. 1 by removable storage 109 and non-removable storage 110. Computer storage media may include volatile and nonvolatile, 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. System memory 104, removable storage 109 and non-removable storage 110 are all examples of computer storage media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other 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 computing device 100. Any such computer storage media may be part of device 100. Computing device 100 may also have input device(s) 112 such as keyboard, mouse, pen, voice input device, touch input device, etc. Output device(s) 114 such as a display, speakers, printer, etc. may also be included.
  • Computing device 100 also contains communication connections 116 that allow the device to communicate with other computing devices 118, such as over a network. Networks include local area networks and wide area networks, as well as other large scale networks including, but not limited to, intranets and extranets. Communication connection 116 is one example of communication media. Communication media may typically be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. The term computer readable media as used herein includes both storage media and communication media.
  • Expanding and Collapsing Data Cells in a Spreadsheet Report
  • FIG. 2 illustrates a block diagram of a system for expanding and collapsing data cells in a spreadsheet report. The system includes spreadsheet application 200, reporting module 210, and data store 220. Spreadsheet application 200 may be provided at a client. Data store 220 may be provided at a server. Reporting module 210 communicates with data store 220 to provide data to spreadsheet application 200.
  • Data in data store 220 may be processed by Online Analytical Processing (OLAP). OLAP is a category of software tools that provides analysis of data stored in a database. OLAP tools enable users to analyze different dimensions of multiple data. For example, OLAP provides time series and trend analysis views. OLAP is often used in data mining. The chief component of OLAP is the OLAP server, which is provided between a client and a database management system. The OLAP server understands how data is organized in the database and has special functions for analyzing the data.
  • Reporting module 210 may be a program that extracts data from one or more files and presents the information to spreadsheet application 200 in a specified format. Reporting module 210 may format the data into a report in rows and columns. The present invention is directed to the collapse and expansion of data cells in a free-form report using reporting module 210. The processing performed by reporting module 210 is described in detail below.
  • FIG. 3 illustrates the expansion and collapse of data cells in a spreadsheet report. The figure shows a collapsed report 300 and an expanded report 350. Collapsed report 300 includes parent members 310 and sibling member 320. A member may be one individual data cell, or a group of related data cells. The group of related data cells may be included within one row, one column, or a data region. A data region may include multiple data cells in adjacent rows and columns. The data region is expanded/collapsed as one entity. As shown in the figure, parent member 310 includes three data cells each occupied with a value (e.g., USA, 9, and 18).
  • A user may wish to expand parent member 310. In one embodiment, the user may expand parent member 310 by double clicking or right-clicking a mouse anywhere within parent member 310. As shown in expanded report 350, expanding parent member 310 causes child members 360, 370, 380 to be displayed in the report in rows below parent member 310. Sibling member 320 is moved downward to make room for child members 360, 370, 380. In one embodiment, the report is expanded such that the child members appear above the associated parent member. In another embodiment, the parent member may be a column of values such that when the report is expanded, new columns appear in the report proximate the parent member. The new columns may appear proximate the parent member.
  • Expanded report 350 may be collapsed to form collapsed report 300 by double clicking or right clicking a mouse on any child member 360, 370, 380. Known processes of expanding and collapsing reports may disrupt other data in the spreadsheet that is external to the report. The present invention preserves the integrity of data in the spreadsheet by scanning the spreadsheet for information associated with the parent and child members of the report. The report may then be expanded or collapsed based on the information.
  • FIG. 4 illustrates the expansion and collapse of data cells in a cross-joined spreadsheet report. A collapsed report 400 and an expanded report 450 display data from two dimensions that are used in conjunction with each other (i.e., a cross-joined report). For example, sales information related to both food and drink may be combined to form one cross-joined report. A user may expand parent member 410 to reveal child members 460, 470, 480. Likewise, child members 460, 470, 480 in expanded report 450 may be collapsed to form collapsed report 400.
  • When collapsing or expanding a report, a determination is made about the range of cells to be collapsed/expanded. The spreadsheet is scanned and analyzed to determine if an expansion or collapse operation may be performed without disrupting the display of other data in the spreadsheet. The other data in the spreadsheet may be other reports or text. For example, a determination is made about the existence of empty data cells to the left and to the right of the report. If there are not any occupied data cells on either side of the report, the report may be expanded by replacing the rows of the spreadsheet with the rows that include the child members such that the child members are displayed in the report proximate the parent member without disrupting the display of other spreadsheet data.
  • However, a spreadsheet may contain so many occupied data cells that some of the occupied data cells are located proximate the spreadsheet border. Since the area of the spreadsheet is limited (e.g. 65536 rows by 256 columns) report expansion may cause spreadsheet data to be pushed off the spreadsheet. For example, a parent member may be expanded such that new columns/rows are added that cause data cells proximate the spreadsheet boundary to expand beyond the boundary. In order to avoid data loss due to overexpansion, a determination is made whether the display of spreadsheet data would be disrupted before a parent member is expanded.
  • FIG. 5 illustrates how a determination is made to expand or collapse data cells in a spreadsheet report without disrupting other data in the spreadsheet. Spreadsheet 500 includes collapsed report 510 (outlined in bold). Collapsed report 510 includes parent member 520. Parent member 520 may include only one data cell or a group of data cells that form a portion of a row, a portion of a column, or a data region comprised of portions of rows and columns. As shown in the figure, parent member 520 includes a row of three data cells. Sibling members 530, 540 are related to parent member 520 and may be expanded to display associated child members.
  • A user may request the expansion of parent member 520 by double-clicking or right clicking anywhere on the parent member. Before expanding parent member 520, spreadsheet 500 is scanned for information related to parent member 520 to determine whether the display of other data in spreadsheet 500 would be disrupted by the expansion. Area 1 includes the data cells in spreadsheet 500 between the left border of spreadsheet 500 and the left border of collapsed report 510. Area 2 includes the data cells in spreadsheet 500 between the right border of spreadsheet 500 and the right border of collapsed report 510. Area 3 includes the data cells in spreadsheet 500 between the bottom border of spreadsheet 500 and the bottom border of collapsed report 510. Area 4 includes the data cells in spreadsheet 500 between the top border of spreadsheet 500 and the top border of collapsed report 510.
  • If none of the data cells in Areas 1 and 2 are occupied with values, the number of rows required for expansion may be added to the spreadsheet proximate parent member 520. Each row includes a child member associated with parent member 520. When the row is added to the spreadsheet, the child members associated with parent member 520 are displayed in the report. As shown in the lower portion of the figure, expanded report 550 includes parent member 520 and child members 560, 570, 580. Sibling members 530, 540 are moved downward into Area 3 to make room for child members 560, 570, 580 which are added directly below parent member 520. In another embodiment, child members 560, 570, 580 may be located above parent member 520. In the case where the parent member is a column, the associated child members may be displayed in columns to the left or the right of the parent member.
  • If any of the data cells in Areas 1 and 2 are occupied with values and there is a sufficient number of empty data cells in Area 3 such that the expansion of parent member 520 does not disrupt the display of data in Areas 3 and 4, an exact number of rows may be added within the data cell range of the report. For example, as shown in the lower portion of the figure, three rows may be added to create expanded report 550. The added rows correspond to child members 560, 570, 580. Each row added to the report is three data cells long which corresponds to the horizontal data cell range of the report. Thus, the display of data in Areas 1, 2, 3 or 4 is not disrupted by the expansion.
  • If data cells in each of Areas 1, 2, 3, and 4 are occupied with values, then expansion may only be performed if the expansion does not disrupt the display of data in Areas 3 and 4. For example, a single data member three data cells in length is located in Area 3 at least four data cells above the lower border of the spreadsheet. The display of the data member would not be disrupted by the expansion of collapsed report 500 because the expansion would merely push the data member downward toward the lower border of spreadsheet 500. However, if the data member was located within at least three data cells of the lower border of spreadsheet 500, the expansion of collapsed report 510 would disrupt the display of the data member because the data member would be pushed off spreadsheet 500.
  • Expanded report 550 may also be collapsed. Expanded report 550 is scanned for information associated with parent member 520 and child members 560, 570, 580. The information is analyzed to determine how the display of related data in other areas of the spreadsheet would be affected by the collapse. The information may include any cross-join information and dependencies associated with parent member 520 and child members 560, 570, 580. The information may also include the total number of child members associated with parent member 520. A determination is then made about how to collapse child members 560, 570, 580.
  • For example, if the data cells in Areas 1 and 2 are empty, then the entire rows where the child members are located may be removed from display in the report, and sibling members 530, 540 may be moved upward proximate parent member 520, as shown in collapsed report 510. If there are any occupied data cells in Areas 1 or 2 and data cells in Areas 3 and 4 are empty, the rows within the report range where the child members are located are removed from the report such that the display of data in Areas 1 and 2 is not disrupted by the collapse. Sibling members 530, 540 may be moved upward proximate parent member 520. If any data cells in Areas 1, 2, 3 and 4 are occupied with values, then collapse may only be performed if the display of data in Areas 3 and 4 would not be disrupted.
  • FIG. 6 is an operational flow diagram illustrating a process for expanding a parent member in a spreadsheet report. The process begins at a start block where a spreadsheet includes a number of occupied data cells and a report. The report includes at least one parent member. If the parent member is not associated with at least one associated child member, then expansion cannot be performed. The parent member may be a single data cell, or a group of data cells arranged in a row, column, or a data region.
  • Moving to block 600, a request is received to expand a parent member. Expanding the parent member displays any associated child members in the report in a location proximate the parent member. In one embodiment, the request to expand is submitted by a user. For example, the user may double click or right-click a mouse on the parent member to submit an expand request. The user may want to expand the parent member to display more detailed information associated with the parent member.
  • Proceeding to block 610, information related to the parent member is retrieved. In one embodiment, the information is a unique member name that is retrieved by scanning the spreadsheet. In another embodiment, the information is retrieved from a data store associated with the spreadsheet. The information retrieved from the data store may include the quantity of child members associated with the parent member, the names of the child members and the dimension of the expanded report created by the parent member and the associated child members.
  • Advancing to block 620, any dependencies on the parent member are determined by scanning the spreadsheet. In one embodiment, the dependencies may be cross-join information associated with the parent member. The cross-join information allows the report to display data from two or more dimensions that are used in conjunction with each other. In another embodiment, the dependencies may be other reports that are linked to the parent member. For example, when a parent member is expanded in a first report, an associated parent member may be expanded in a second report that is linked to the first report. All of the data cells that are dependent on the parent member are tallied to determine the total number of data cells that would be displayed upon expansion.
  • Transitioning to block 630, all of the child members associated with the parent member are determined. If the parent member does not have any associated child members, then expansion is not possible. In one embodiment, the number of child members associated with the parent member is determined by batch. For example, a determination is made whether a group of data cells are all child members. If so, a determination is made whether a next group of data cells are child members. If all of the data cells in the batch are not identified as child members that are associated with the parent member, each data cell is checked individually to determine where the list of child members ends.
  • Moving to block 640, a determination is made about how to expand the parent member without disrupting the display of data in other areas of the spreadsheet external to the report. If the areas between the vertical borders of the report and the vertical borders of the spreadsheet do not include any occupied data cells, then the rows in the spreadsheet may be replaced with rows that include the child members such that the child members appear in the expanded report without disrupting the display of spreadsheet data. If data cells in the areas to the left or to the right of the report are occupied with values, but data cells in the areas above or below the report are not occupied with values, then the rows within the range of the report may be replaced with the child members. If data cells in the areas above or below the report are occupied with values, then the data cells above or below the report may only be used to expand the report if the display of data in the areas above or below the report is not disrupted by the expansion. If the display of data in the areas above or below the report would be disrupted by the expansion, then the parent member cannot be expanded.
  • Proceeding to block 650, the expansion is performed. Any sibling members are moved such that the child members may be displayed proximate the parent member. For example, a parent member in a collapsed report is displayed with a sibling member located directly below the parent member. In order to make space for three child members associated with the parent member, the sibling member is moved three rows down, and the three child members are displayed in the three rows below the parent member. The format and formula associated with the parent member is spread to the child members. In one embodiment, the format and formula may be spread across the range of the expanded report in one direction (e.g., horizontally across a row) and then in a different direction (vertically through columns of the report). Any cross-join references are also accounted for such that sufficient space is made available to display all of the child members associated with the parent member.
  • FIG. 7 is an operational flow diagram illustrating a process for collapsing a group of child members in a spreadsheet report. The process begins at a start block where a spreadsheet includes a number of occupied data cells and a report. The report includes a parent member that has at least one associated child member. The parent cell member and the associated child members are displayed in the report.
  • Moving to block 700, a request is received to collapse a report such that the child members are not displayed in the report. In one embodiment, the request to collapse the report is submitted by a user. For example, the user may submit a collapse request by double clicking or right-clicking a mouse on the report to be collapsed. The user may want to collapse the report to remove detailed information associated with the parent member.
  • Proceeding to block 710, information related to the child members displayed in the report to be collapsed is obtained. The information may be obtained by scanning the spreadsheet. The information may include the number of parent members and associated child members in the report, and the dimension of the expanded report created by the parent member and the associated child members. The dimension of the expanded report indicates the location of data cells that are not included in the expanded report (i.e., the position where the collapse ends).
  • Advancing to block 720, any dependencies on the child members are determined. In one embodiment, the dependencies may be cross-join information. The expanded report is scanned to determine whether any cross-join information exists. In another embodiment, the dependencies may be other reports that are related to the child members or otherwise linked to the expanded report. For example, when a group of child members is collapsed in one report, an associated group of child members may be collapsed in a linked report. The number of data cells that are dependent on the child members are tallied to determine the spreadsheet area affected by the collapse of the child members.
  • Moving to block 730, a determination is made about how to collapse the child members of the expanded report. If the data cells are empty in the spreadsheet area to the left and to the right of the report, all of the rows containing the child members are removed from the spreadsheet. Any occupied data cells that are located below the report may be moved upward toward the collapsed report. If the area between the left (or right) border of the report and the left (or right) border of the spreadsheet contains at least one occupied data cell, but the area between the lower (or upper) border of the report and the lower (or upper) border of the spreadsheet does not contain any occupied data cells, the exact number of rows that include the child members are removed from the report range such that the display of data in other areas of the spreadsheet external to the report is not disrupted. If the area between the lower border of the report and the lower border of the spreadsheet contains occupied data cells, the report may only be collapsed if the display of data in other areas of the spreadsheet external to the report is not disrupted. The collapse of the report is then performed at block 740 in accordance with the determined child member collapse method. Processing then terminates at an end block.
  • 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.

Claims (19)

1. A computer-implemented method for expanding data cells in a report of a spreadsheet, comprising:
receiving a request to expand a parent member of a report;
scanning the spreadsheet for information related to the parent member; and
expanding the parent member in the report based on the information, wherein the parent member is expanded by displaying child members associated with the parent member in the report without disrupting the layout of data in areas of the spreadsheet external to the report.
2. The computer-implemented method of claim 1, wherein the report is a free-form report that comprises page filters.
3. The computer-implemented method of claim 1, wherein the parent member comprises a plurality of data cells.
4. The computer-implemented method of claim 1, wherein expanding the parent member further comprises displaying child members associated with a parent member in the report proximate the parent member.
5. The computer-implemented method of claim 1, wherein the report is a cross-joined report that assembles data from a plurality of sources.
6. The computer-implemented method of claim 1, wherein scanning the spreadsheet for information further comprises scanning the spreadsheet for at least one of:
empty data cells between the border of the report and the border of the spreadsheet,
cross-join information associated with the report,
data cells that are dependent on the parent member,
the number of child members associated with the parent member, and
the dimension of the report created by the parent member and the associated child members.
7. The computer-implemented method of claim 1, wherein expanding the parent member comprises at least one of a group comprising:
replacing a row in the spreadsheet with a row containing a child member,
replacing a row in the report with a row containing a child member,
replacing a column in the spreadsheet with a column containing a child member, and
replacing a column in the report with a column containing a child member.
8. The computer-implemented method of claim 1, further comprising determining whether a batch of child members are associated with the parent member.
9. The computer-implemented method of claim 1, further comprising copying a format and a formula associated with the parent member to the associated child members.
10. A computer-implemented method for collapsing data cells in a report of a spreadsheet, comprising:
receiving a request to collapse child cells associated with a parent cell of the report;
scanning the spreadsheet for information related to the parent cell and the associated child cells; and
collapsing the child cells in the report based on the information, wherein the child members are collapsed by removing the child members associated with the parent member from being displayed in the report without disrupting the layout of data in areas of the spreadsheet external to the report.
11. The computer-implemented method of claim 10, wherein collapsing the child cells further comprises at least one of:
removing a row containing a child cell from the spreadsheet,
removing a row containing a child cell from the report,
moving a row containing a sibling cell to be proximate a row containing the parent cell,
removing a column containing a child cell from the spreadsheet,
removing a column containing a child cell from the report, and
moving a column containing a sibling cell to be proximate a column containing the parent cell.
12. The computer-implemented method of claim 10, wherein the information comprises at least one of:
the total number of data cells in the report,
the dimension of the report,
the data cells in the report that are dependent on other data cells external to the report within the spreadsheet,
cross-join information associated with the report, and
other related reports within the spreadsheet.
13. A computer-readable medium having computer-executable instructions for expanding data cells in a report of a spreadsheet, comprising:
receiving a request to expand a parent cell in the report;
retrieving information related to the parent cell from the spreadsheet; and
expanding the parent cell in the report based on the information, wherein the parent cell is expanded by displaying a child cell associated with the parent cell in the report without disrupting the display of other occupied data cells in the spreadsheet external to the report.
14. The computer-readable medium of claim 13, wherein expanding the parent cell further comprises displaying the child cell in the report proximate the parent cell.
15. The computer-readable medium of claim 13, wherein retrieving information related to the parent cell further comprises scanning the spreadsheet for at least one of:
empty data cells between the border of the report and the border of the spreadsheet,
cross-join information associated with the report,
data cells that are dependent on the parent cell,
the number of child cells associated with the parent cell, and
the dimension of the report created by the parent cell and the associated child cells.
16. The computer-readable medium of claim 13, wherein expanding the parent cell comprises at least one of:
replacing a row in the spreadsheet with a row containing the child cell,
replacing a row in the report with a row containing the child cell,
replacing a column in the spreadsheet with a column containing the child cell, and
replacing a column in the report with a column containing the child cell.
17. A computer-readable medium having computer-executable instructions for collapsing child members associated with a parent member in a report of a spreadsheet, comprising:
receiving a request to collapse the child members;
retrieving information related to the parent member and the child members from the spreadsheet; and
collapsing the child members in the report based on the information, wherein the child members are collapsed by removing the child members from the report without disrupting the display of occupied data cells in the spreadsheet external to the report.
18. The computer-readable medium of claim 17, wherein collapsing the child members further comprises at least one of:
removing rows containing the child members from the spreadsheet,
removing rows containing the child members from the report,
moving a row containing a sibling member to be proximate a row containing the parent member,
removing columns containing the child members from the spreadsheet,
removing columns containing the child members from the report, and
moving a column containing a sibling member to be proximate a column containing the parent member.
19. The computer-readable medium of claim 17, wherein the information comprises at least one of:
the total number of data cells in the report,
the dimension of the report,
the data cells in the report that are dependent on other data cells external to the report within the spreadsheet,
cross-join information associated with the report, and
other related reports within the spreadsheet.
US10/987,013 2004-11-12 2004-11-12 Method for expanding and collapsing data cells in a spreadsheet report Abandoned US20060107196A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US10/987,013 US20060107196A1 (en) 2004-11-12 2004-11-12 Method for expanding and collapsing data cells in a spreadsheet report
US12/843,745 US8473837B2 (en) 2004-11-12 2010-07-26 Method for expanding and collapsing data cells in a spreadsheet report
US13/923,189 US10133721B2 (en) 2004-11-12 2013-06-20 Collapsing data cells in one or more reports in a spreadsheet

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/987,013 US20060107196A1 (en) 2004-11-12 2004-11-12 Method for expanding and collapsing data cells in a spreadsheet report

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/843,745 Division US8473837B2 (en) 2004-11-12 2010-07-26 Method for expanding and collapsing data cells in a spreadsheet report

Publications (1)

Publication Number Publication Date
US20060107196A1 true US20060107196A1 (en) 2006-05-18

Family

ID=36387920

Family Applications (3)

Application Number Title Priority Date Filing Date
US10/987,013 Abandoned US20060107196A1 (en) 2004-11-12 2004-11-12 Method for expanding and collapsing data cells in a spreadsheet report
US12/843,745 Expired - Fee Related US8473837B2 (en) 2004-11-12 2010-07-26 Method for expanding and collapsing data cells in a spreadsheet report
US13/923,189 Active 2027-03-22 US10133721B2 (en) 2004-11-12 2013-06-20 Collapsing data cells in one or more reports in a spreadsheet

Family Applications After (2)

Application Number Title Priority Date Filing Date
US12/843,745 Expired - Fee Related US8473837B2 (en) 2004-11-12 2010-07-26 Method for expanding and collapsing data cells in a spreadsheet report
US13/923,189 Active 2027-03-22 US10133721B2 (en) 2004-11-12 2013-06-20 Collapsing data cells in one or more reports in a spreadsheet

Country Status (1)

Country Link
US (3) US20060107196A1 (en)

Cited By (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050188352A1 (en) * 2004-02-17 2005-08-25 Bruno Jager Method for generating source code in a procedural, re-entrant-compatible programming language using a spreadsheet representation
US20060080594A1 (en) * 2004-10-07 2006-04-13 Chavoustie Michael D Methods, systems and computer program products for facilitating visualization of interrelationships in a spreadsheet
US20060129914A1 (en) * 2004-12-15 2006-06-15 Microsoft Corporation Filter and sort by color
US20060190463A1 (en) * 2004-12-29 2006-08-24 Andreas Stier Methods and systems for outputting data on a graphical user interface of a computer system
US20060212469A1 (en) * 2005-03-18 2006-09-21 Microsoft Corporation Method and system to associate cell and item metadata
US20070050697A1 (en) * 2005-08-23 2007-03-01 International Business Machines Corporation Integrated spreadsheet expanding table with collapsable columns
US20070055922A1 (en) * 2005-09-08 2007-03-08 Microsoft Corporation Autocompleting with queries to a database
US20070061344A1 (en) * 2005-09-09 2007-03-15 Microsoft Corporation Converting structured reports to formulas
US20070088691A1 (en) * 2005-10-14 2007-04-19 Microsoft Corporation Multidimensional cube functions
US20070168323A1 (en) * 2006-01-03 2007-07-19 Microsoft Corporation Query aggregation
US20070255574A1 (en) * 2005-11-07 2007-11-01 Business Objects Apparatus and method for facilitating trusted business intelligence through data context
US20070300168A1 (en) * 2006-03-23 2007-12-27 Oce-Technologies B.V. System for programming processing operations on an ordered set of objects
US20080104498A1 (en) * 2006-10-25 2008-05-01 International Business Machines Corporation Dynamically Merging Columns Within a Table
US20080162532A1 (en) * 2006-12-27 2008-07-03 Rakshit Daga Method and system for generating relational spreadsheets
US20080201309A1 (en) * 2007-02-16 2008-08-21 Microsoft Corporation Rendering database queries with blank space
US20080270886A1 (en) * 2007-04-30 2008-10-30 Google Inc. Hiding Portions of Display Content
US20090031208A1 (en) * 2007-07-26 2009-01-29 International Business Machines Corporation Expanding Rows and Cells Within a Table
US20100070914A1 (en) * 2008-09-18 2010-03-18 International Business Machines Corporation Expandable area for host table data display in a mobile device
US20100115390A1 (en) * 2008-11-04 2010-05-06 International Business Machines Corporation Amending the display property of grid elements
US20100257439A1 (en) * 2009-04-02 2010-10-07 Business Objects, S.A. Render engine for spreadsheet
US20100293449A1 (en) * 2004-11-12 2010-11-18 Microsoft Corporation Method for expanding and collapsing data cells in a spreadsheet report
US20120084708A1 (en) * 2010-09-18 2012-04-05 Oracle International Corporation Presentation of hierarchical data in multiple consistent views
US20120117500A1 (en) * 2007-02-23 2012-05-10 Enrico Maim Method for the extraction, combination, synthesis and visualisation of multi-dimensional data from different sources
US20120112997A1 (en) * 2008-01-23 2012-05-10 Mellmo Inc. User interface method and apparatus for data from data cubes and pivot tables
US20120131042A1 (en) * 2010-11-24 2012-05-24 David Mosimann Semantically guided report design
US8261204B1 (en) * 2009-01-30 2012-09-04 Intuit Inc. Method and system for obtaining form data from a user
US8359308B2 (en) 2010-04-01 2013-01-22 Microsoft Corporation Inline data correlation and hierarchical datasets
US20130290822A1 (en) * 2011-12-29 2013-10-31 Bibo Labs, Inc. Spreadsheet-based programming language adapted for report generation
US20130298085A1 (en) * 2012-05-02 2013-11-07 International Business Machines Corporation Displayed content drilling in a touch screen device
US20140047310A1 (en) * 2012-08-13 2014-02-13 Business Objects Software Ltd. Mobile drilldown viewer for standardized data
US20140143724A1 (en) * 2012-11-19 2014-05-22 Hewlett-Packard Development Company, L.P. Manipulating Timelines
US20140164896A1 (en) * 2012-12-06 2014-06-12 Can Do Gmbh Method And System For Expanding And Collapsing Data Cells In A Spreadsheet Application
US20150121188A1 (en) * 2013-10-31 2015-04-30 Nicolas Bissantz System for modifying a table
CN104679722A (en) * 2013-11-29 2015-06-03 国际商业机器公司 Method and system for data table multi-dimension
US20170017617A1 (en) * 2014-05-27 2017-01-19 Hitachi, Ltd. Management system for managing information system
WO2017079422A1 (en) * 2015-11-03 2017-05-11 Microsoft Technology Licensing, Llc Spreadsheet arrays
US9910894B2 (en) 2012-07-16 2018-03-06 Microsoft Technology Licensing, Llc Data scope origination within aggregation operations
US20190346979A1 (en) * 2003-11-17 2019-11-14 Bgc Partners, Inc. Customizable trading display of market data
US10540434B2 (en) * 2016-03-01 2020-01-21 Business Objects Software Limited Dynamic disaggregation and aggregation of spreadsheet data
US20200142551A1 (en) * 2018-11-05 2020-05-07 Sigma Computing, Inc. Nested pagination for presenting a data set in a graphical user interface
US10997356B1 (en) 2017-05-16 2021-05-04 Juniper Networks, Inc. Computing device user interface having auto-grouping of data columns
US20210334254A1 (en) * 2019-10-04 2021-10-28 Palantir Technologies Inc. Column lineage for resource dependency system and graphical user interface
US11227105B1 (en) * 2013-09-24 2022-01-18 Mehrdad Samadani Method and apparatus for structured documents
US11243914B2 (en) * 2019-05-03 2022-02-08 Microsoft Technology Licensing, Llc Table with one or more secondary rows
US11277361B2 (en) 2020-05-03 2022-03-15 Monday.com Ltd. Digital processing systems and methods for variable hang-time for social layer messages in collaborative work systems
US11277452B2 (en) 2020-05-01 2022-03-15 Monday.com Ltd. Digital processing systems and methods for multi-board mirroring of consolidated information in collaborative work systems
US11301623B2 (en) 2020-02-12 2022-04-12 Monday.com Ltd Digital processing systems and methods for hybrid scaling/snap zoom function in table views of collaborative work systems
US11307753B2 (en) 2019-11-18 2022-04-19 Monday.Com Systems and methods for automating tablature in collaborative work systems
US11361156B2 (en) 2019-11-18 2022-06-14 Monday.Com Digital processing systems and methods for real-time status aggregation in collaborative work systems
US11392556B1 (en) 2021-01-14 2022-07-19 Monday.com Ltd. Digital processing systems and methods for draft and time slider for presentations in collaborative work systems
US11410129B2 (en) 2010-05-01 2022-08-09 Monday.com Ltd. Digital processing systems and methods for two-way syncing with third party applications in collaborative work systems
US11436359B2 (en) 2018-07-04 2022-09-06 Monday.com Ltd. System and method for managing permissions of users for a single data type column-oriented data structure
US11526532B2 (en) * 2017-09-19 2022-12-13 Sap Se Dynamic data viewer
US11644949B2 (en) * 2016-06-27 2023-05-09 Oracle International Corporation Autotagging a template of a reporting workbook
US11698890B2 (en) 2018-07-04 2023-07-11 Monday.com Ltd. System and method for generating a column-oriented data structure repository for columns of single data types
US11741071B1 (en) 2022-12-28 2023-08-29 Monday.com Ltd. Digital processing systems and methods for navigating and viewing displayed content
US11829953B1 (en) 2020-05-01 2023-11-28 Monday.com Ltd. Digital processing systems and methods for managing sprints using linked electronic boards
US11886683B1 (en) 2022-12-30 2024-01-30 Monday.com Ltd Digital processing systems and methods for presenting board graphics
US11893381B1 (en) 2023-02-21 2024-02-06 Monday.com Ltd Digital processing systems and methods for reducing file bundle sizes
US11954428B2 (en) 2021-04-29 2024-04-09 Monday.com Ltd. Digital processing systems and methods for accessing another's display via social layer interactions in collaborative work systems

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10699038B2 (en) 2012-03-30 2020-06-30 Litmus Blue Technology LLC Configurable representation of domain models
US20130262056A1 (en) * 2012-03-30 2013-10-03 Litmus Blue, Llc Grid representation of domain models
US10178058B2 (en) * 2016-01-28 2019-01-08 International Business Machines Corporation Expanding captured portions of references in instant messaging systems
US9811572B2 (en) * 2016-04-06 2017-11-07 InsightSoftware.com International Multi-axis expand/collapse for relational databases

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5247611A (en) * 1989-09-15 1993-09-21 Emtek Health Care Systems, Inc. Spreadsheet cell having multiple data fields
US5604854A (en) * 1994-04-22 1997-02-18 Borland International, Inc. System and methods for reformatting multi-dimensional spreadsheet information
US5752253A (en) * 1994-06-28 1998-05-12 Bull, S.A. Process and device for the automatic generation of spreadsheets
US20020055952A1 (en) * 1997-09-19 2002-05-09 Modernsoft, Inc. Populating cells of an electronic financial statement
US20060085445A1 (en) * 2004-10-19 2006-04-20 Microsoft Corporation Query consolidation for structured reports
US7082569B2 (en) * 2001-01-17 2006-07-25 Outlooksoft Corporation Systems and methods providing dynamic spreadsheet functionality

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5416895A (en) * 1992-04-08 1995-05-16 Borland International, Inc. System and methods for improved spreadsheet interface with user-familiar objects
US7073133B2 (en) * 2001-05-16 2006-07-04 William Hughes Objects and methods for accessing a data source and enhancing an application
US7721197B2 (en) * 2004-08-12 2010-05-18 Microsoft Corporation System and method of displaying content on small screen computing devices
US20060107196A1 (en) * 2004-11-12 2006-05-18 Microsoft Corporation Method for expanding and collapsing data cells in a spreadsheet report
US20070050697A1 (en) * 2005-08-23 2007-03-01 International Business Machines Corporation Integrated spreadsheet expanding table with collapsable columns
US8869020B2 (en) * 2006-12-27 2014-10-21 Sap Ag Method and system for generating relational spreadsheets

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5247611A (en) * 1989-09-15 1993-09-21 Emtek Health Care Systems, Inc. Spreadsheet cell having multiple data fields
US5604854A (en) * 1994-04-22 1997-02-18 Borland International, Inc. System and methods for reformatting multi-dimensional spreadsheet information
US5752253A (en) * 1994-06-28 1998-05-12 Bull, S.A. Process and device for the automatic generation of spreadsheets
US20020055952A1 (en) * 1997-09-19 2002-05-09 Modernsoft, Inc. Populating cells of an electronic financial statement
US7082569B2 (en) * 2001-01-17 2006-07-25 Outlooksoft Corporation Systems and methods providing dynamic spreadsheet functionality
US20060085445A1 (en) * 2004-10-19 2006-04-20 Microsoft Corporation Query consolidation for structured reports

Cited By (138)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190346979A1 (en) * 2003-11-17 2019-11-14 Bgc Partners, Inc. Customizable trading display of market data
US20050188352A1 (en) * 2004-02-17 2005-08-25 Bruno Jager Method for generating source code in a procedural, re-entrant-compatible programming language using a spreadsheet representation
US8015481B2 (en) * 2004-02-17 2011-09-06 Xapio Gmbh Method for generating source code in a procedural, re-entrant-compatible programming language using a spreadsheet representation
US8745483B2 (en) * 2004-10-07 2014-06-03 International Business Machines Corporation Methods, systems and computer program products for facilitating visualization of interrelationships in a spreadsheet
US11036930B2 (en) 2004-10-07 2021-06-15 International Business Machines Corporation Methods, systems and computer program products for facilitating visualization of interrelationships in a spreadsheet
US20060080594A1 (en) * 2004-10-07 2006-04-13 Chavoustie Michael D Methods, systems and computer program products for facilitating visualization of interrelationships in a spreadsheet
US10180933B2 (en) 2004-10-07 2019-01-15 International Business Machines Corporation Methods, systems and computer program products for facilitating visualization of interrelationships in a spreadsheet
US20130290823A1 (en) * 2004-11-12 2013-10-31 Microsoft Corporation Method for expanding and collapsing data cells in a spreadsheet report
US20100293449A1 (en) * 2004-11-12 2010-11-18 Microsoft Corporation Method for expanding and collapsing data cells in a spreadsheet report
US8473837B2 (en) 2004-11-12 2013-06-25 Microsoft Corporation Method for expanding and collapsing data cells in a spreadsheet report
US10133721B2 (en) * 2004-11-12 2018-11-20 Microsoft Technology Licensing, Llc Collapsing data cells in one or more reports in a spreadsheet
US20100325526A1 (en) * 2004-12-15 2010-12-23 Microsoft Corporation Filter and sort by format
US20060129914A1 (en) * 2004-12-15 2006-06-15 Microsoft Corporation Filter and sort by color
US10169318B2 (en) 2004-12-15 2019-01-01 Microsoft Technology Licensing, Llc Filter and sort by format
US8745482B2 (en) 2004-12-15 2014-06-03 Microsoft Corporation Sorting spreadsheet data by format
US7849395B2 (en) * 2004-12-15 2010-12-07 Microsoft Corporation Filter and sort by color
US9507496B2 (en) 2004-12-15 2016-11-29 Microsoft Technology Licensing, Llc Filter and sort by format
US7827506B2 (en) * 2004-12-29 2010-11-02 Sap Ag Methods and systems for outputting data on a graphical user interface of a computer system
US20060190463A1 (en) * 2004-12-29 2006-08-24 Andreas Stier Methods and systems for outputting data on a graphical user interface of a computer system
US7693860B2 (en) 2005-03-18 2010-04-06 Microsoft Corporation Method and system to associate cell and item metadata
US20060212469A1 (en) * 2005-03-18 2006-09-21 Microsoft Corporation Method and system to associate cell and item metadata
US20070050697A1 (en) * 2005-08-23 2007-03-01 International Business Machines Corporation Integrated spreadsheet expanding table with collapsable columns
US20070055922A1 (en) * 2005-09-08 2007-03-08 Microsoft Corporation Autocompleting with queries to a database
US8234293B2 (en) 2005-09-08 2012-07-31 Microsoft Corporation Autocompleting with queries to a database
US7792847B2 (en) * 2005-09-09 2010-09-07 Microsoft Corporation Converting structured reports to formulas
US20070061344A1 (en) * 2005-09-09 2007-03-15 Microsoft Corporation Converting structured reports to formulas
US20070088691A1 (en) * 2005-10-14 2007-04-19 Microsoft Corporation Multidimensional cube functions
US20100312748A1 (en) * 2005-10-14 2010-12-09 Microsoft Corporation Multidimensional cube functions
US7805433B2 (en) 2005-10-14 2010-09-28 Microsoft Corporation Multidimensional cube functions
US20070255574A1 (en) * 2005-11-07 2007-11-01 Business Objects Apparatus and method for facilitating trusted business intelligence through data context
US8046673B2 (en) * 2005-11-07 2011-10-25 Business Objects Software Ltd. Apparatus and method for facilitating trusted business intelligence through data context
US20070168323A1 (en) * 2006-01-03 2007-07-19 Microsoft Corporation Query aggregation
US20070300168A1 (en) * 2006-03-23 2007-12-27 Oce-Technologies B.V. System for programming processing operations on an ordered set of objects
US20080104498A1 (en) * 2006-10-25 2008-05-01 International Business Machines Corporation Dynamically Merging Columns Within a Table
US20080162532A1 (en) * 2006-12-27 2008-07-03 Rakshit Daga Method and system for generating relational spreadsheets
US8869020B2 (en) * 2006-12-27 2014-10-21 Sap Ag Method and system for generating relational spreadsheets
US7617221B2 (en) 2007-02-16 2009-11-10 Microsoft Corporation Rendering database queries with blank space
US20080201309A1 (en) * 2007-02-16 2008-08-21 Microsoft Corporation Rendering database queries with blank space
US20120117500A1 (en) * 2007-02-23 2012-05-10 Enrico Maim Method for the extraction, combination, synthesis and visualisation of multi-dimensional data from different sources
US10254946B2 (en) 2007-04-30 2019-04-09 Google Llc Hiding portions of display content
US8065603B2 (en) * 2007-04-30 2011-11-22 Google Inc. Hiding portions of display content
US11036385B2 (en) 2007-04-30 2021-06-15 Google Llc Hiding portions of display content
US20080270886A1 (en) * 2007-04-30 2008-10-30 Google Inc. Hiding Portions of Display Content
US20090031208A1 (en) * 2007-07-26 2009-01-29 International Business Machines Corporation Expanding Rows and Cells Within a Table
US20120112997A1 (en) * 2008-01-23 2012-05-10 Mellmo Inc. User interface method and apparatus for data from data cubes and pivot tables
US20100070914A1 (en) * 2008-09-18 2010-03-18 International Business Machines Corporation Expandable area for host table data display in a mobile device
US8302028B2 (en) * 2008-09-18 2012-10-30 International Business Machines Corporation Expandable area for host table data display in a mobile device
US20100115390A1 (en) * 2008-11-04 2010-05-06 International Business Machines Corporation Amending the display property of grid elements
US8938672B2 (en) * 2008-11-04 2015-01-20 International Business Machines Corporation Amending the display property of grid elements
US8261204B1 (en) * 2009-01-30 2012-09-04 Intuit Inc. Method and system for obtaining form data from a user
US8707156B2 (en) * 2009-04-02 2014-04-22 Business Objects, S.A. Render engine for spreadsheet
US20100257439A1 (en) * 2009-04-02 2010-10-07 Business Objects, S.A. Render engine for spreadsheet
US8359308B2 (en) 2010-04-01 2013-01-22 Microsoft Corporation Inline data correlation and hierarchical datasets
US11410129B2 (en) 2010-05-01 2022-08-09 Monday.com Ltd. Digital processing systems and methods for two-way syncing with third party applications in collaborative work systems
US20120084708A1 (en) * 2010-09-18 2012-04-05 Oracle International Corporation Presentation of hierarchical data in multiple consistent views
US9740673B2 (en) * 2010-09-18 2017-08-22 Oracle International Corporation Presentation of hierarchical data in multiple consistent views
US9053176B2 (en) * 2010-11-24 2015-06-09 Business Objects Software Limited Semantically guided report design
US20120131042A1 (en) * 2010-11-24 2012-05-24 David Mosimann Semantically guided report design
US20130290822A1 (en) * 2011-12-29 2013-10-31 Bibo Labs, Inc. Spreadsheet-based programming language adapted for report generation
US10824802B2 (en) * 2011-12-29 2020-11-03 Bibo Labs, Inc. Spreadsheet-based programming language adapted for report generation
US20130293480A1 (en) * 2012-05-02 2013-11-07 International Business Machines Corporation Drilling of displayed content in a touch screen device
US20130298085A1 (en) * 2012-05-02 2013-11-07 International Business Machines Corporation Displayed content drilling in a touch screen device
US9323445B2 (en) * 2012-05-02 2016-04-26 International Business Machines Corporation Displayed content drilling in a touch screen device
US9323443B2 (en) * 2012-05-02 2016-04-26 International Business Machines Corporation Drilling of displayed content in a touch screen device
US9910894B2 (en) 2012-07-16 2018-03-06 Microsoft Technology Licensing, Llc Data scope origination within aggregation operations
US20140047310A1 (en) * 2012-08-13 2014-02-13 Business Objects Software Ltd. Mobile drilldown viewer for standardized data
US20140143724A1 (en) * 2012-11-19 2014-05-22 Hewlett-Packard Development Company, L.P. Manipulating Timelines
US9449406B2 (en) * 2012-11-19 2016-09-20 Hewlett Packard Enterprise Development Lp Manipulating timelines
US20140164896A1 (en) * 2012-12-06 2014-06-12 Can Do Gmbh Method And System For Expanding And Collapsing Data Cells In A Spreadsheet Application
US11227105B1 (en) * 2013-09-24 2022-01-18 Mehrdad Samadani Method and apparatus for structured documents
US20150121188A1 (en) * 2013-10-31 2015-04-30 Nicolas Bissantz System for modifying a table
US10282406B2 (en) * 2013-10-31 2019-05-07 Nicolas Bissantz System for modifying a table
US20150154248A1 (en) * 2013-11-29 2015-06-04 International Business Machines Corporation Representing multidimensionality of a data table
CN104679722A (en) * 2013-11-29 2015-06-03 国际商业机器公司 Method and system for data table multi-dimension
US10169303B2 (en) * 2014-05-27 2019-01-01 Hitachi, Ltd. Management system for managing information system
US20170017617A1 (en) * 2014-05-27 2017-01-19 Hitachi, Ltd. Management system for managing information system
US10545953B2 (en) 2015-11-03 2020-01-28 Microsoft Technology Licensing, Llc Modern spreadsheet arrays
WO2017079422A1 (en) * 2015-11-03 2017-05-11 Microsoft Technology Licensing, Llc Spreadsheet arrays
US10540434B2 (en) * 2016-03-01 2020-01-21 Business Objects Software Limited Dynamic disaggregation and aggregation of spreadsheet data
US11644949B2 (en) * 2016-06-27 2023-05-09 Oracle International Corporation Autotagging a template of a reporting workbook
US10997356B1 (en) 2017-05-16 2021-05-04 Juniper Networks, Inc. Computing device user interface having auto-grouping of data columns
US11526532B2 (en) * 2017-09-19 2022-12-13 Sap Se Dynamic data viewer
US11698890B2 (en) 2018-07-04 2023-07-11 Monday.com Ltd. System and method for generating a column-oriented data structure repository for columns of single data types
US11436359B2 (en) 2018-07-04 2022-09-06 Monday.com Ltd. System and method for managing permissions of users for a single data type column-oriented data structure
CN113287116A (en) * 2018-11-05 2021-08-20 西格玛计算机有限公司 Nested paging for rendering data sets in graphical users
US20200142551A1 (en) * 2018-11-05 2020-05-07 Sigma Computing, Inc. Nested pagination for presenting a data set in a graphical user interface
US11455079B2 (en) * 2018-11-05 2022-09-27 Sigma Computing, Inc. Nested pagination for presenting a data set in a graphical user interface
US11243914B2 (en) * 2019-05-03 2022-02-08 Microsoft Technology Licensing, Llc Table with one or more secondary rows
US20210334254A1 (en) * 2019-10-04 2021-10-28 Palantir Technologies Inc. Column lineage for resource dependency system and graphical user interface
US11526661B2 (en) 2019-11-18 2022-12-13 Monday.com Ltd. Digital processing systems and methods for integrated communications module in tables of collaborative work systems
US11361156B2 (en) 2019-11-18 2022-06-14 Monday.Com Digital processing systems and methods for real-time status aggregation in collaborative work systems
US11775890B2 (en) 2019-11-18 2023-10-03 Monday.Com Digital processing systems and methods for map-based data organization in collaborative work systems
US11307753B2 (en) 2019-11-18 2022-04-19 Monday.Com Systems and methods for automating tablature in collaborative work systems
US11727323B2 (en) 2019-11-18 2023-08-15 Monday.Com Digital processing systems and methods for dual permission access in tables of collaborative work systems
US11507738B2 (en) 2019-11-18 2022-11-22 Monday.Com Digital processing systems and methods for automatic updates in collaborative work systems
US11301623B2 (en) 2020-02-12 2022-04-12 Monday.com Ltd Digital processing systems and methods for hybrid scaling/snap zoom function in table views of collaborative work systems
US11275742B2 (en) 2020-05-01 2022-03-15 Monday.com Ltd. Digital processing systems and methods for smart table filter with embedded boolean logic in collaborative work systems
US11537991B2 (en) 2020-05-01 2022-12-27 Monday.com Ltd. Digital processing systems and methods for pre-populating templates in a tablature system
US11907653B2 (en) 2020-05-01 2024-02-20 Monday.com Ltd. Digital processing systems and methods for network map visualizations of team interactions in collaborative work systems
US11397922B2 (en) 2020-05-01 2022-07-26 Monday.Com, Ltd. Digital processing systems and methods for multi-board automation triggers in collaborative work systems
US11886804B2 (en) 2020-05-01 2024-01-30 Monday.com Ltd. Digital processing systems and methods for self-configuring automation packages in collaborative work systems
US11410128B2 (en) 2020-05-01 2022-08-09 Monday.com Ltd. Digital processing systems and methods for recommendation engine for automations in collaborative work systems
US11354624B2 (en) 2020-05-01 2022-06-07 Monday.com Ltd. Digital processing systems and methods for dynamic customized user experience that changes over time in collaborative work systems
US11416820B2 (en) 2020-05-01 2022-08-16 Monday.com Ltd. Digital processing systems and methods for third party blocks in automations in collaborative work systems
US11301814B2 (en) 2020-05-01 2022-04-12 Monday.com Ltd. Digital processing systems and methods for column automation recommendation engine in collaborative work systems
US11829953B1 (en) 2020-05-01 2023-11-28 Monday.com Ltd. Digital processing systems and methods for managing sprints using linked electronic boards
US11301813B2 (en) 2020-05-01 2022-04-12 Monday.com Ltd. Digital processing systems and methods for hierarchical table structure with conditional linking rules in collaborative work systems
US11475408B2 (en) 2020-05-01 2022-10-18 Monday.com Ltd. Digital processing systems and methods for automation troubleshooting tool in collaborative work systems
US11301812B2 (en) 2020-05-01 2022-04-12 Monday.com Ltd. Digital processing systems and methods for data visualization extrapolation engine for widget 360 in collaborative work systems
US11755827B2 (en) 2020-05-01 2023-09-12 Monday.com Ltd. Digital processing systems and methods for stripping data from workflows to create generic templates in collaborative work systems
US11501255B2 (en) 2020-05-01 2022-11-15 Monday.com Ltd. Digital processing systems and methods for virtual file-based electronic white board in collaborative work systems
US11501256B2 (en) 2020-05-01 2022-11-15 Monday.com Ltd. Digital processing systems and methods for data visualization extrapolation engine for item extraction and mapping in collaborative work systems
US11348070B2 (en) 2020-05-01 2022-05-31 Monday.com Ltd. Digital processing systems and methods for context based analysis during generation of sub-board templates in collaborative work systems
US11282037B2 (en) 2020-05-01 2022-03-22 Monday.com Ltd. Digital processing systems and methods for graphical interface for aggregating and dissociating data from multiple tables in collaborative work systems
US11301811B2 (en) 2020-05-01 2022-04-12 Monday.com Ltd. Digital processing systems and methods for self-monitoring software recommending more efficient tool usage in collaborative work systems
US11347721B2 (en) 2020-05-01 2022-05-31 Monday.com Ltd. Digital processing systems and methods for automatic application of sub-board templates in collaborative work systems
US11531966B2 (en) 2020-05-01 2022-12-20 Monday.com Ltd. Digital processing systems and methods for digital sound simulation system
US11367050B2 (en) 2020-05-01 2022-06-21 Monday.Com, Ltd. Digital processing systems and methods for customized chart generation based on table data selection in collaborative work systems
US11587039B2 (en) 2020-05-01 2023-02-21 Monday.com Ltd. Digital processing systems and methods for communications triggering table entries in collaborative work systems
US11277452B2 (en) 2020-05-01 2022-03-15 Monday.com Ltd. Digital processing systems and methods for multi-board mirroring of consolidated information in collaborative work systems
US11675972B2 (en) 2020-05-01 2023-06-13 Monday.com Ltd. Digital processing systems and methods for digital workflow system dispensing physical reward in collaborative work systems
US11687706B2 (en) 2020-05-01 2023-06-27 Monday.com Ltd. Digital processing systems and methods for automatic display of value types based on custom heading in collaborative work systems
US11277361B2 (en) 2020-05-03 2022-03-15 Monday.com Ltd. Digital processing systems and methods for variable hang-time for social layer messages in collaborative work systems
US11475215B2 (en) 2021-01-14 2022-10-18 Monday.com Ltd. Digital processing systems and methods for dynamic work document updates using embedded in-line links in collaborative work systems
US11726640B2 (en) 2021-01-14 2023-08-15 Monday.com Ltd. Digital processing systems and methods for granular permission system for electronic documents in collaborative work systems
US11531452B2 (en) 2021-01-14 2022-12-20 Monday.com Ltd. Digital processing systems and methods for group-based document edit tracking in collaborative work systems
US11687216B2 (en) 2021-01-14 2023-06-27 Monday.com Ltd. Digital processing systems and methods for dynamically updating documents with data from linked files in collaborative work systems
US11481288B2 (en) 2021-01-14 2022-10-25 Monday.com Ltd. Digital processing systems and methods for historical review of specific document edits in collaborative work systems
US11392556B1 (en) 2021-01-14 2022-07-19 Monday.com Ltd. Digital processing systems and methods for draft and time slider for presentations in collaborative work systems
US11782582B2 (en) 2021-01-14 2023-10-10 Monday.com Ltd. Digital processing systems and methods for detectable codes in presentation enabling targeted feedback in collaborative work systems
US11449668B2 (en) 2021-01-14 2022-09-20 Monday.com Ltd. Digital processing systems and methods for embedding a functioning application in a word processing document in collaborative work systems
US11397847B1 (en) 2021-01-14 2022-07-26 Monday.com Ltd. Digital processing systems and methods for display pane scroll locking during collaborative document editing in collaborative work systems
US11893213B2 (en) 2021-01-14 2024-02-06 Monday.com Ltd. Digital processing systems and methods for embedded live application in-line in a word processing document in collaborative work systems
US11928315B2 (en) 2021-01-14 2024-03-12 Monday.com Ltd. Digital processing systems and methods for tagging extraction engine for generating new documents in collaborative work systems
US11954428B2 (en) 2021-04-29 2024-04-09 Monday.com Ltd. Digital processing systems and methods for accessing another's display via social layer interactions in collaborative work systems
US11741071B1 (en) 2022-12-28 2023-08-29 Monday.com Ltd. Digital processing systems and methods for navigating and viewing displayed content
US11886683B1 (en) 2022-12-30 2024-01-30 Monday.com Ltd Digital processing systems and methods for presenting board graphics
US11893381B1 (en) 2023-02-21 2024-02-06 Monday.com Ltd Digital processing systems and methods for reducing file bundle sizes

Also Published As

Publication number Publication date
US10133721B2 (en) 2018-11-20
US20130290823A1 (en) 2013-10-31
US20100293449A1 (en) 2010-11-18
US8473837B2 (en) 2013-06-25

Similar Documents

Publication Publication Date Title
US10133721B2 (en) Collapsing data cells in one or more reports in a spreadsheet
RU2433449C2 (en) User filter interface for data summary table
US10579723B2 (en) User interface for creating a spreadsheet data summary table
RU2417421C2 (en) Automatic placement of fields in data summary table
US7747939B2 (en) Generating free form reports within a data array
US8127223B2 (en) User interface method and apparatus for data from data cubes and pivot tables
US7698349B2 (en) Dimension member sliding in online analytical processing
CN100541493C (en) The apparatus and method that are used for structured document management
US20040088650A1 (en) Methods and apparatus for generating a spreadsheet report template
US8527867B2 (en) Enabling users to edit very large XML data
US20020169799A1 (en) Systems and methods providing dynamic spreadsheet functionality
US20080215621A1 (en) Metamodel-based automatic report generation
US9536223B2 (en) Gathering, selecting and graphing n-grams
JP5113864B2 (en) Report information collection system, method and program
EP1256890A2 (en) Systems and methods providing dynamic spreadsheet functionality
Miller Application of Excel® pivot tables and pivot charts for efficient library data analysis and illustration
US11921797B2 (en) Computer service for indexing threaded comments with pagination support
KR20210147171A (en) A recording medium recorded with a computer program providing an interface for editing an Excel sheet for inventory management
Oliveira et al. Building OLAP tools over large databases
KR20210147170A (en) A method of providing inventory management services using a computer program providing an interface for editing Excel sheets for inventory management
JP2004341770A (en) Data management system and data management method
Juggins TRAN (version 1.8) and ZONE (version 1.2) user manual
WO2020170217A1 (en) A method and system for managing analytical schema
JPH10269304A (en) Method for generating document management information, medium for recording the same, method and device for managing document information and medium for recording document information management program
JP2008130063A (en) Input screen creation system which can fully separate web input screen and development of program

Legal Events

Date Code Title Description
AS Assignment

Owner name: MICROSOFT CORPORATION, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:THANU, LAKSHMI N.;EBERHARDY, PETER;HUANG, DYLAN HAI;AND OTHERS;REEL/FRAME:015957/0025

Effective date: 20041111

STCB Information on status: application discontinuation

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

AS Assignment

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034766/0001

Effective date: 20141014