Independent Filter Management in Collaborative Spreadsheets

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Collaborative cloud computing services lack the ability for multiple users to independently apply and manage filters on spreadsheets, leading to interference and limitations in viewing and editing shared data, as changes are automatically propagated to all users, preventing independent filter applications and storage of multiple filters.

Innovation Solution

The system allows users to apply filters independently on their local copies of cloud-stored spreadsheets, with filter selections not being communicated to other collaborators, enabling each user to create, edit, and manage their own filters without affecting others, and sends mutations referenced to either the unfiltered or filtered sheet for proper display.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If filter selections are automatically propagated to all collaborators like normal edits, then real-time collaboration consistency is maintained, but independent filter application and management by multiple users becomes impossible

Engineering Contradiction:
ImproveIndependent filter applicationVSAvoidCollaboration consistency
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the filter application functionality from the collaboration propagation mechanism. Filters are applied locally to each user's view without being propagated to other collaborators, while still maintaining the ability to share filter definitions. This segmentation allows independent filter application while preserving collaboration consistency for actual data changes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary mechanism where filter definitions can be shared among collaborators, but filter applications themselves remain local. The system mediates between individual filter preferences and collaborative consistency by allowing filter definitions to be exchanged while keeping the actual filtering operation user-specific.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If a single filter is applied to the shared spreadsheet, then all users see consistent data views, but multiple users cannot apply different filters to overlapping data sets simultaneously

Engineering Contradiction:
ImproveMultiple filter configurationsVSAvoidFilter management system
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides the filter system into two independent components: filter definitions (which can be shared and stored on the server) and filter applications (which are local to each user). This segmentation enables multiple users to have different filter applications on the same data while maintaining a unified system architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local quality by allowing each user to apply filters locally to their own view of the spreadsheet. Each user's filter application is independent and affects only their local display, enabling diverse filter configurations across different users without requiring a complex centralized filter management system.

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If filter applications are communicated between collaborators, then filter consistency is maintained across users, but users cannot create and manage their own independent filters

Engineering Contradiction:
ImprovePersonal filter managementVSAvoidFilter selection information
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The patent extracts the filter application information from the collaboration propagation system. While filter definitions can be shared and stored on the server, the actual filter application selections are kept local to each user and are not propagated to other collaborators. This extraction preserves personal filter management while preventing loss of filter selection information.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses copying by allowing users to create and store filter definitions on the server, which can then be copied and applied locally by different users. The filter definitions themselves are shared, but the application of these filters remains local and independent for each user.

Inventive Principle:
Principle #26Copying

4Quantity of substance

If mutations are sent directly to the server without filter transformation, then server storage efficiency is maintained, but filtered sheet displays show incorrect data positioning

Engineering Contradiction:
ImproveData transmission volumeVSAvoidData display accuracy
Core Design Contradiction:
Quantity of substanceVSManufacturing precision

Solution Approach 1:

The patent applies preliminary action by transforming mutations against the filter before sending them to the server. This pre-transformation ensures that the server stores the correctly positioned data, and when filters are applied locally, the mutations are already in the correct format. This approach maintains data display accuracy while managing transmission volume efficiently.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses inversion by applying the filter transformation in reverse to the mutations before server storage. Instead of sending raw mutations and applying filters on the server, the system transforms mutations as if the filter were already applied, then stores them in the unfiltered sheet. This inverted approach ensures accurate display positioning while maintaining server storage efficiency.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS9298688B1Non-collaborative filters in a collaborative document
Publication Date: 2016.03.29 GOOGLE LLC
  • US9298688B1 patent drawing
  • US9298688B1 patent drawing
  • US9298688B1 patent drawing

AI summary

Systems and methods for processing user actions on a collaborative spreadsheet include accessing an unfiltered sheet of a spreadsheet stored on a server to display on a client computer, where a plurality of filters is associated with the unfiltered sheet, and receiving a selection by a user of a first filter in the plurality of filters to be applied to the unfiltered sheet. A filtered sheet is displayed to the user, where the filtered sheet is obtained by applying the first filter to the unfiltered sheet. User actions inputted by a user on the client computer are received that reference cells of the unfiltered sheet. User actions are sent to the server and transformed against the first filter. The display of the filtered sheet is updated based on the transformed user action.