×

Fast rich application view initiation

  • US 7,765,207 B2
  • Filed: 04/29/2005
  • Issued: 07/27/2010
  • Est. Priority Date: 04/29/2005
  • Status: Active Grant
First Claim
Patent Images

1. A system for servicing data requests from an application, said system comprising:

  • at least one computer comprising a database storing data, wherein the data is stored according to a schema comprising a plurality of tables, each table comprising a column;

    a view provider, operably connected to said database, said view provider adapted to;

    receive an initial query from an application, wherein the initial query includes a view definition defining an application view, the application view comprising a complete set of pages to be retrieved from the database, wherein the view definition comprises a preliminary query and specifies how to order the complete set of pages in the application view and a number N of initial pages, each page in the complete set of pages including a plurality of columns of data, the view definition further specifying at least one spine column and one at least one non-spine column from among the plurality of columns of data, each spine column in a page being deemed to constitute core information in the page that should be displayed relatively sooner than non-core information and each non-spine column in a page being deemed to constitute non-core information that should be displayed relatively later than core information;

    generate an application view from the view definition, wherein the application view provides a container for storing a subset of information from the database commensurate with the view definition;

    based upon the view definition, formulate a first query, wherein the first query is designed to retrieve a predefined initial set of pages comprising the first N pages from the complete set of pages as ordered according to the order specified by the view definition;

    submit the first query to the database;

    receive first response data from the database relating to the first query;

    store the first response data in the application view;

    generate a display based upon the first response data;

    after generating the display based upon the first response data, formulate a second query, wherein the second query is designed to retrieve a first portion of each of a remaining set of pages, the remaining set of pages comprising all the pages after the first N pages from the complete set of pages as ordered according to the order specified by the view definition, the retrieved first portion of each of the remaining set of pages comprising data from the database relating to each spine column specified in the view definition;

    submit the second query to the database;

    receive second response data from the database relating to the second query;

    store the second response data in the application view;

    update the display based upon the application view with the second response data;

    after updating the display based upon the application view with the second response data, based upon the view definition, formulate a third query, wherein the third query is designed to retrieve a second portion of each of the remaining set of pages, the retrieved second portion of each of the remaining set of pages comprising data from the database relating to each non-spine column specified in the view definition;

    submit the third query to the database;

    receive third response data from the database relating to the third query;

    store the third response data in the application view;

    update the display based upon the application view with the third response data, wherein the second and third queries and associated updating of the display are performed asynchronously, wherein an event is fired upon completion of updating the application view with the second response data and upon an attempt to sort data associated with a particular spine column before the event is fired, an indication of an illegal operation is generated.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×