Client-Side Table Data Sorting via Local Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for reordering tables in Web pages are cumbersome, requiring additional programming and software, and do not allow users to easily manipulate tables based on user-defined parameters like column and row sorting without resorting to external applications or server interactions.

Innovation Solution

A system and method that enables a client machine to detect and manipulate tables within a loaded graphical user interface, allowing users to sort data locally by extracting, caching, and displaying data in a user-defined order through a browser or Web browser interface, without needing additional server interactions or specific software.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If tables are programmed with reorder functions using DHTML and JavaScript, then table reordering capability is improved, but device complexity and programming effort increase

Engineering Contradiction:
Improvetable reordering capabilityVSAvoidprogramming complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent enables tables to reorder themselves automatically based on user selection without requiring complex programming. The system detects user clicks on table rows or columns and automatically reorders the data accordingly, eliminating the need for manual DHTML and JavaScript programming that would otherwise be required to achieve this functionality.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces an intermediary mechanism between the user interface and the table data that handles reordering logic. This intermediary layer processes user selections and manages the reordering operation, separating the complexity from the user interface and allowing standard HTML tables to gain advanced functionality without direct programming intervention.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If users copy tables from Web pages and paste into spreadsheet software, then table manipulation capability is improved, but ease of operation deteriorates due to requiring additional software

Engineering Contradiction:
Improvetable manipulation capabilityVSAvoidease of operation
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent makes the Web browser itself a universal tool that can perform both display and manipulation functions for tables. By enabling sorting, filtering, and reordering operations directly within the browser using standard HTML tables, the system eliminates the need for users to switch to external spreadsheet applications, making the browser a multi-functional tool that handles both viewing and data manipulation tasks.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Measurement precision

If server interactions are used for table reordering, then data accuracy is improved, but loss of time and network traffic increase

Engineering Contradiction:
Improvedata accuracyVSAvoidreordering time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by pre-loading and caching table data in the client's browser memory. This allows subsequent reordering operations to be performed locally on the cached data without requiring additional server interactions, thereby maintaining data accuracy while significantly reducing the time required for reordering operations and minimizing network traffic.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8812551B2Client-side manipulation of tables
Publication Date: 2014.08.19 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8812551B2 patent drawing
  • US8812551B2 patent drawing
  • US8812551B2 patent drawing

AI summary

Provided is a system and method for providing a browser functionality to determine the existence of a table, identify data therein and manipulate the data according to a user's input. Thus, a method for manipulating data tables in a client machine includes determining at the client machine, existence of a table via a loaded graphical user interface operable with a markup language; extracting data from the table; storing the data from the table in a local cache; manipulating the data in the local cache; and displaying the data in a user-defined table by applying a function within the graphical user interface. The table on the client computer can be generated by the graphical user interface loading a Web page from a server machine, a Web browser or can be operable with a Web browser. Alternatively, the function within the graphical user interface is a preset set of functions.