IP Library Granted Patent US 7,523,401
Granted Patent B1
US 7,523,401 · App. 10/783,891 · Granted Apr 21, 2009

System and method for providing a browser-based user interface

Assignee: Theoris Software, LLC
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,523,401
App. No.
10/783,891
Granted
Apr 21, 2009
Kind
B1
Abstract

A computer system and method is disclosed that provides a single-page zero-footprint browser-based user interface with rich user interface features more commonly found in a traditional client-server application. The system and method includes one or more web servers, reporting servers, relational database servers, data warehouse servers, and client workstations for providing the browser-based application. A user requests that the browser-based application be retrieved from a server. A single page is received from the web server that contains code for a user interface for the application. The user interface with multiple content windows is displayed to a user. When at least one piece of data needs to be retrieved from a data source, an asynchronous request is sent to the server for the data from a hidden frame in the page. The data is received from the server and used in the application. Other requests for data are also made asynchronously.

Claims (38)

1. A method comprising:

requesting that a browser-based application be retrieved from a server, said browser-based application requiring no web components to be installed before using the application other than a web browser;

receiving a single web page from the server that contains code for a user interface for the application;

displaying the user interface to a user, said user interface containing a plurality of content windows, wherein the user interface remains on said single web page and does not change pages as the user interacts with the application;

determining that at least one piece of data needs to be retrieved from a data source;

from a hidden frame in the single page, sending an asynchronous request to the server for the at least one piece of data;

receiving the at least one piece of data from the server; and

using the at least one piece of data in the application.

2. The method of claim 1 , wherein the user can continue interacting with the user interface of the application while the asynchronous request for the at least one piece of data is pending.

3. The method of claim 1 , wherein the request for the at least one piece of data is based on a specific action taken by the user that requires the at least one piece of data to be requested.

4. The method of claim 1 , wherein the request for the at least one piece of data is based on a prediction of a future data that is likely to be needed and wherein the at least one piece of data is then only used in the application if needed.

5. The method of claim 1 , wherein the user interface resembles a client-server application.

6. The method of claim 1 , wherein the plurality of content windows have content displays that can be customized by a user.

7. The method of claim 1 , wherein each of the plurality of content windows displays at least one piece of content that is selected from the group consisting of: a report, at least one database field, a web page, a word processing document, a result of a SQL statement, a content of a file, and a result of a web service.

8. The method of claim 7 , wherein the at least one piece of content is displayed in a format selected from the group consisting of a table, a graph, a gauge, and a list.

9. The method of claim 1 , wherein an alert can be defined for any of the plurality of content windows to indicate a particular event has occurred.

10. A method comprising:

receiving a request from a user to access a browser-based application, said browser-based application requiring no web components to be installed before using the application other than a web browser;

determining that at least one piece of data needs to be displayed in the application;

retrieving the at least one piece of data from at least one data source to include in the application;

generating a single web page that contains code for a user interface of the application, wherein the user interface remains on a single page and does not change pages as the user interacts with the application;

returning the single page to the browser so the user interface can be displayed to the user;

receiving an asynchronous request for additional data from the single page;

retrieving the additional data from a data source asynchronously so the user can continue interacting with the user interface while the additional data is being retrieved; and

returning the additional data to the single page for use in the application.

11. The method of claim 10 , wherein the single page contains a plurality of documents for displaying each of a plurality of content windows to the user.

12. The method of claim 11 , wherein each of the plurality of content windows displays at least one piece of content that is selected from the group consisting of: a report, at least one database field, a web page, a word processing document, a result of a SQL statement, a content of a file, and a result of a web service.

13. The method of claim 10 , wherein the request for additional data is based on a specific action taken by the user that requires the additional data to be requested.

14. The method of claim 10 , wherein the request for additional data is based on a prediction of future data that is likely to be needed.

15. The method of claim 10 , wherein the user interface resembles a client-server application.

16. A system comprising:

a server computer;

a client computer coupled to the server computer over a network;

wherein the client computer has a browser-based user interface requiring no web components to be installed before using the user interface other than a web browser;

wherein the client computer is operable to send an initial request to the server for the browser-based user interface having multiple content windows, to allow the user to interact with the user interface on a single page and without changing to a different page, and to send to the server asynchronous requests for data as a user interacts with the user interface; and

wherein the server computer is operable to receive the initial request from the client computer for the browser-based user interface, to generate the user interface into a single page, to send the single page user interface to the client computer, to receive the asynchronous requests for data, to use an application business logic to retrieve the asynchronously requested data from at least one data source, and to return the asynchronously requested data to the client computer.

17. The system of claim 16 , wherein the server computer is further operable to generate the single page having a plurality of documents for displaying each of the multiple content windows.

18. The system of claim 16 , wherein the at least one data source is selected from the group consisting of a reporting server, a relational database server, and a data warehouse server.

Assignments (3)
SECURITY INTEREST Recorded Nov 16, 2023
From: THEORIS SOFTWARE, INC.
To: BSC AV INVESTOR LLLC
Reel/Frame 065590/0387 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2006
From: THEORIS, INC.
To: THEORIS SOFTWARE, LLC
Reel/Frame 017133/0747 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2004
From: ALDRIDGE, GREGORY E.
To: THEORIS, INC.
Reel/Frame 015021/0443 →
Continuity (1)
Provisional Application 6049975100 · Sep 3, 2003