Systems and methods for automatically generating user interface elements for complex databases
DCFirst Claim
1. A method for displaying, within a user interface operating under control of a processor, an enhanced representation of data from a relational database, the relational database comprising machine-readable data representing a plurality of tables, constraints, and relationships and also operating under control of a processor, wherein the plurality of tables comprises a primary table and a foreign table, wherein each one of the primary table and the foreign table comprises at least one row, and wherein each row comprises a plurality of columns, the method comprising:
- using a processor to automatically construct a representation of data from a row of the primary table (primary-table row) by;
using a processor to identify a foreign key (FK) value in an FK column in the primary-table row, wherein the FK column references the foreign table;
using a processor to locate a row in the foreign table (foreign-table row) whose primary key (PK) value matches the identified FK value;
using a processor to select a value from the foreign-table row other than the PK value based on at least one of the following attributes of the column in the foreign table that contains the selected value;
column name;
column datatype;
at least one column constraint;
orcolumn position within the foreign table;
using a processor to derive a description of the foreign-table row using the selected value; and
using a processor to augment or supplant the FK value with the description in constructing the representation; and
using a processor to display the constructed representation.
0 Assignments
Litigations
1 Petition
Accused Products
Abstract
In one embodiment, a software system automatically generates a fully functional user interface (UI) based upon any underlying schema within a relational database management system (RDBMS). The UI derives from an automated interrogation of the schema, and comprises all mode displays (e.g., browse, search, edit, add) for all tables, along with integrated mechanisms for representing, navigating and managing relationships across tables. It utilizes a hierarchical “context stack” for suspending the working state of a particular table while “drilling down” to work with related-table information and (potentially) return relevant changes to the base table. The UI presentation resolves cross-table relationships so as to supplant internal key fields from the primary table with corresponding descriptive fields derived from the related tables. Techniques are also provided to enhance and extend the internal representation of table structures, constraints, relationships and special requirements (“business rules”) for improved discovery of the schema structure via automated interrogation.
65 Citations
22 Claims
-
1. A method for displaying, within a user interface operating under control of a processor, an enhanced representation of data from a relational database, the relational database comprising machine-readable data representing a plurality of tables, constraints, and relationships and also operating under control of a processor, wherein the plurality of tables comprises a primary table and a foreign table, wherein each one of the primary table and the foreign table comprises at least one row, and wherein each row comprises a plurality of columns, the method comprising:
-
using a processor to automatically construct a representation of data from a row of the primary table (primary-table row) by; using a processor to identify a foreign key (FK) value in an FK column in the primary-table row, wherein the FK column references the foreign table; using a processor to locate a row in the foreign table (foreign-table row) whose primary key (PK) value matches the identified FK value; using a processor to select a value from the foreign-table row other than the PK value based on at least one of the following attributes of the column in the foreign table that contains the selected value; column name; column datatype; at least one column constraint;
orcolumn position within the foreign table; using a processor to derive a description of the foreign-table row using the selected value; and using a processor to augment or supplant the FK value with the description in constructing the representation; and using a processor to display the constructed representation. - View Dependent Claims (2, 3, 4, 9, 10, 11, 12, 13, 14, 15)
-
-
5. A non-transitory machine-readable medium, on which there has been recorded machine-readable code for a program executable on a processor, said program comprising routines for displaying, within a user interface operating under control of a processor, an enhanced representation of data from a relational database, the relational database comprising machine-readable data representing a plurality of tables, constraints, and relationships and also operating under control of a processor, wherein the plurality of tables comprises a primary table and a foreign table, wherein each one of the primary table and the foreign table comprises at least one row, and wherein each row comprises a plurality of columns, the routines comprising:
-
a routine to automatically construct a representation of data from a row of the primary table (primary-table row) by; a routine to identify a foreign key (FK) value in an FK column in the primary-table row, wherein the FK column references the foreign table; a routine to locate a row in the foreign table (foreign-table row) whose primary key (PK) value matches the identified FK value; a routine to select a value from the foreign-table row other than the PK value based on at least one of the following attributes of the column in the foreign table that contains the selected value; column name; column datatype; at least one column constraint;
orcolumn position within the foreign table; a routine to derive a description of the foreign-table row using the selected value; and a routine to augment or supplant the FK value with the description in constructing the representation; and a routine to display the constructed representation. - View Dependent Claims (6, 7, 8, 16, 17, 18, 19, 20, 21, 22)
-
Specification