IP Library Granted Patent US 9,880,696
Granted Patent B2
US 9,880,696 · App. 15/252,021 · Granted Jan 30, 2018

System for providing dynamic linked panels in user interface

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 9,880,696
App. No.
15/252,021
Granted
Jan 30, 2018
Kind
B2
Abstract

A computer system may be configured to: execute a first query associated with a first panel; display the first panel in a user interface based on first display settings of the first panel, the first panel displaying at least a portion of the result of the first query, the result of the first query associated with a variable; execute a second query associated with a second panel, wherein the second query refers to the variable associated with the first query; display the second panel in the user interface based on second display settings of the second panel, the second panel displaying at least a portion of the result of the second query; and in response to user input changing the displayed result in the first panel: re-execute the second query; and update the display of the second panel in the user interface based on results of the re-executed second query.

Claims (37)

1. A computer system configured to display data from one or more data sources, the computer system comprising:

one or more hardware computer processors configured to execute code in order to cause the system to:

provide a first user interface configured to display a plurality of panels including at least a first panel and a second panel, wherein the first panel is associated with a first variable and a first query, and wherein the second panel is associated with a second query;

provide a second user interface configured to include a coding of the second query that comprises a first section of code that comprises an identifier of the first variable, wherein the second query is written in a first programming language and the first section of code is written in a template syntax;

in response to a first user input:

execute the first query associated with the first panel to cause first data to be retrieved from the one or more data sources, wherein the execution of the first query also causes the first variable associated with the first panel to be defined with a first value; and

update the first panel in the first user interface to include at least a portion of the first data retrieved from the one or more data sources; and

in response to a second user input changing the first variable associated with the first panel to be defined with a second value:

execute the second query associated with the second panel to cause second data to be retrieved from the one or more data sources, wherein the second data is retrieved, based at least in part, on the second value of the first variable associated with the first query of the first panel; and

update the second panel in the first user interface to include at least a portion of the second data.

2. The computer system of claim 1 , wherein the template syntax comprises at least one of: Handlebars, Mustache, or a semantic template language.

3. The computer system of claim 1 , wherein the one or more hardware computer processors are further configured to execute code in order to cause the system to:

execute any query comprising a second section of code written in the first programming language and a third section of code written in the template syntax;

wherein the second section of code includes an instruction to write new information to the one or more data sources; and

wherein the third section of code comprises a function call on a parameter referencing the new information.

4. The computer system of claim 3 , wherein the one or more hardware computer processors are further configured to execute code in order to cause the system to:

write the new information to the one or more data sources.

5. The computer system of claim 4 , wherein the one or more hardware computer processors are further configured to execute code in order to cause the system to:

process the parameter according to the function call before executing the second section of code.

6. The computer system of claim 5 , wherein processing the parameter according to the function call comprises:

storing the new information in an array; and

replacing a coding of the second section of code with different code.

7. The computer system of claim 6 , wherein processing the parameter according to the function call further comprises:

preserving a type of the new information.

8. The computer system of claim 5 , wherein processing the parameter according to the function call further comprises:

changing the parameter to have a string format.

9. The computer system of claim 4 , wherein Java DataBase Connectivity (JDBC) code is used to write the new information to the one or more data sources.

10. The computer system of claim 3 , wherein the function is written in the template syntax.

11. The computer system of claim 3 ,

wherein the first panel and the second panel are each referenced as a template that is rendered by a template engine; and

the function is registered with the template engine.

12. The computer system of claim 1 , wherein the one or more hardware computer processors are further configured to execute code in order to cause the system to:

prior to executing the first query associated with the first panel, invoke one or more functions to determine whether a table, row, or a column referenced in the first query exists in the one or more data sources.

13. The computer system of claim 1 , wherein the one or more hardware computer processors are further configured to execute code in order to cause the system to:

generate the first user interface according to a style defined in a cascading style sheet, and

wherein the first user interface is configured to display the first panel according to first display settings associated with the first panel, the first display settings configured to format the first data as part of at least one of: a chart, a control, a map, a table, or a text box.

14. The computer system of claim 1 , wherein the first programming language comprises Structured Query Language (SQL) or JavaScript Object Notation (JSON).

Assignments (8)
ASSIGNMENT OF INTELLECTUAL PROPERTY SECURITY AGREEMENTS Recorded Jul 3, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0640 →
SECURITY INTEREST Recorded Jul 3, 2022
From: PALANTIR TECHNOLOGIES INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0506 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUSLY LISTED PATENT BY REMOVING APPLICATION NO. 16/832267 FROM THE RELEASE OF SECURITY INTEREST PREVIOUSLY RECORDED ON REEL 052856 FRAME 0382. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 26, 2021
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 057335/0753 →
SECURITY INTEREST Recorded Jun 4, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 052856/0817 →
RELEASE OF SECURITY INTEREST Recorded Jun 4, 2020
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 052856/0382 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 051713/0149 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: ROYAL BANK OF CANADA, AS ADMINISTRATIVE AGENT
Reel/Frame 051709/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2017
From: WARD, LINDSAY; CICERONE, DEREK; BISWAL, PUNYASHLOKA; LI, SIXIN; CAMERON, GEOFF; STORR, ADAM; RAMASWAMY, ASHWIN
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 044053/0416 →