IP Library Granted Patent US 12,541,507
Granted Patent B2
US 12,541,507 · App. 18/779,972 · Granted Feb 3, 2026

Systems and methods for intelligent database report generation

Inventors: Nikunj Aggarwal (Secaucus, NJ); Utkarsh Bhatia (Uttar Pradesh, IN); Kyle Michael Boston (San Carlos, CA); Siddhartha Gunda (Milpitas, CA); Abhishek Gupta (Haryana, IN); VenuMadhav Kattagoni (Telangana, IN); Himanshu Nanda (Punjab, IN); Ayush Rai (Madhya Pradesh, IN)
Assignee: People Center, Inc.
G06F16/2428G06F16/24556G06F16/2456G06F16/24578
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 12,541,507
App. No.
18/779,972
Granted
Feb 3, 2026
Kind
B2
Abstract

A computing system includes computer-readable media to store instructions and processor(s) to execute the instructions to perform operations including: receiving a request for generation of a report having a plurality of data elements; identifying two or more different datasets that collectively contain the plurality of data elements; automatically generating one or more join configurations for combining the two or more different datasets based on a prioritization of data elements which define a join key for the one or more join configurations; executing the one or more join configurations to generate a combined dataset from the two or more different datasets; assigning unique identifier(s) to a portion of the combined dataset and expanding the combined dataset; performing an aggregation operation associated with the portion of the combined dataset by referencing the unique identifier(s); and generating the report based on the combined dataset and the aggregation operation.

Claims (74)

1 . A computing system, comprising:

one or more non-transitory computer-readable media to store instructions; and

one or more processors to execute the instructions to perform operations, the operations comprising:

receiving a request for generation of a document, wherein the document comprises a plurality of data elements;

identifying two or more different datasets that collectively contain the plurality of data elements;

automatically generating, based on a prioritization of the plurality of data elements, one or more join configurations for combining the two or more different datasets which define a join key for the one or more join configurations;

executing the one or more join configurations to generate a combined dataset from the two or more different datasets;

assigning one or more unique identifiers to a portion of the combined dataset and expanding the combined dataset to form an expanded combined dataset;

performing an aggregation operation associated with the portion of the expanded combined dataset by referencing the one or more unique identifiers; and

generating the document based on the expanded combined dataset and the aggregation operation.

2 . The computing system of claim 1 , wherein the portion of the combined dataset corresponds to a column of data.

3 . The computing system of claim 2 , wherein

expanding the combined dataset comprises adding a further column of data, and

each row from the further column of data references both a unique identifier from the one or more unique identifiers and information from another data element in a same row from the expanded combined dataset.

4 . The computing system of claim 3 , wherein performing the aggregation operation associated with the expanded combined dataset comprises deduplicating duplicate entries in the further column of data.

5 . The computing system of claim 1 , further comprising providing, for presentation on a display device, a graphical user interface including a plurality of selectable data elements,

wherein

one or more of the plurality of data elements are selected from the plurality of selectable data elements, and

the plurality of selectable data elements are associated with an attribute of organizational data of an organization.

6 . The computing system of claim 5 , further comprising determining an order in which the plurality of selectable data elements are to be presented on the display device based on an intent of a user associated with the display device.

7 . The computing system of claim 6 , further comprising determining the intent of the user based on at least one of:

previous documents having data elements associated with the attribute which were requested by the user,

previous documents having data elements associated with the attribute which were requested by a plurality of users associated with the organization which the user is also associated with, or

default document recipes defined for the organization.

8 . The computing system of claim 6 , wherein determining the order in which the plurality of selectable data elements are to be presented on the display device based on the intent of the user associated with the display device comprises determining the order in which the plurality of selectable data elements are to be presented on the display device if a number of the selectable data elements is greater than a threshold value.

9 . The computing system of claim 1 , further comprising:

monitoring a model to check a status of one or more attributes associated with the plurality of data elements;

detecting a change in status of at least one of the one or more attributes associated with the plurality of data elements;

notifying an entity corresponding to the model of the change in status of the at least one of the one or more attributes associated with the plurality of data elements; and

executing a cache update operation to update a cache storing the one or more attributes associated with the plurality of data elements.

10 . The computing system of claim 9 , further comprising determining a data freshness of the cache by determining a time difference between a time at which the change in status of the at least one of the one or more attributes associated with the plurality of data elements occurred and a time at which the cache update operation occurred.

11 . The computing system of claim 9 , wherein

notifying the entity corresponding to the model of the change in status of the at least one of the one or more attributes associated with the plurality of data elements comprises publishing a message to the entity, and

the message includes information relating to at least one of changed fields, new record instances, or metadata related to the change in status.

12 . The computing system of claim 1 , wherein generating the document based on the expanded combined dataset and the aggregation operation comprises:

retrieving data responsive to a query associated with at least one of the plurality of data elements from a first database when a processing power needed to process the query is less than a threshold amount, and

retrieving data responsive to the query associated with the at least one of the plurality of data elements from a second database when the processing power needed to process the query is greater than the threshold amount.

13 . The computing system of claim 12 , wherein the first database is an online analytical processing database and the second database is an online transaction processing database.

14 . The computing system of claim 12 , wherein the first database stores the at least one of the plurality of data elements in a columnar format.

15 . The computing system of claim 12 , wherein generating the document based on the expanded combined dataset and the aggregation operation comprises:

retrieving data responsive to a query associated with at least one of the plurality of data elements from a first database when processing the query includes processing data from one or more columns of a table, and

retrieving data responsive to the query associated with the at least one of the plurality of data elements from a second database when processing the query includes processing data from one or more rows and from one or more columns of the table.

16 . A computer-implemented method, the method comprising:

receiving, by a computing system comprising one or more processors, a request for generation of a document, wherein the document comprises a plurality of data elements;

identifying, by the computing system, two or more different datasets that collectively contain the plurality of data elements;

automatically generating, by the computing system and based on a prioritization of the plurality of data elements, one or more join configurations for combining the two or more different datasets which define a join key for the one or more join configurations;

executing, by the computing system, the one or more join configurations to generate a combined dataset from the two or more different datasets;

assigning, by the computing system, one or more unique identifiers to a portion of the combined dataset and expanding the combined dataset to form an expanded combined dataset;

performing, by the computing system, an aggregation operation associated with the portion of the expanded combined dataset by referencing the one or more unique identifiers; and

generating, by the computing system, the document based on the expanded combined dataset and the aggregation operation.

17 . The computer-implemented method of claim 16 , wherein

the portion of the combined dataset corresponds to a column of data from a table,

expanding the combined dataset comprises adding a further column of data,

each row from the further column of data references both a unique identifier from the one or more unique identifiers and information from another data element in a same row from the expanded combined dataset, and

performing the aggregation operation associated with the expanded combined dataset comprises deduplicating duplicate entries in the further column of data.

18 . The computer-implemented method of claim 16 , further comprising:

determining, by the computing system, an order in which a plurality of selectable data elements are to be presented on a display device based on an intent of a user associated with the display device, when a number of the selectable data elements is greater than a threshold value; and

providing, by the computing system for presentation on a display device, a graphical user interface including the plurality of selectable data elements,

wherein

one or more of the plurality of data elements are selected from the plurality of selectable data elements, and

the plurality of selectable data elements are associated with an attribute of organizational data of an organization.

19 . The computer-implemented method of claim 16 , further comprising:

monitoring, by the computing system, a model to check a status of one or more attributes associated with the plurality of data elements;

detecting, by the computing system, a change in status of at least one of the one or more attributes associated with the plurality of data elements;

notifying, by the computing system, an entity corresponding to the model of the change in status of the at least one of the one or more attributes associated with the plurality of data elements; and

executing, by the computing system, a cache update operation to update a cache storing the one or more attributes associated with the plurality of data elements.

20 . A non-transitory computer readable medium storing instructions which, when executed by a processor, cause the processor to perform operations, the operations comprising:

receiving a request for generation of a document, wherein the document comprises a plurality of data elements;

identifying two or more different datasets that collectively contain the plurality of data elements;

automatically generating, based on a prioritization of the plurality of data elements, one or more join configurations for combining the two or more different datasets which define a join key for the one or more join configurations;

executing the one or more join configurations to generate a combined dataset from the two or more different datasets;

assigning one or more unique identifiers to a portion of the combined dataset and expanding the combined dataset to form an expanded combined dataset;

performing an aggregation operation associated with the portion of the expanded combined dataset by referencing the one or more unique identifiers; and

generating the document based on the expanded combined dataset and the aggregation operation.

Assignments (2)
PATENT SECURITY AGREEMENT Recorded Jun 16, 2026
From: PEOPLE CENTER, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 075922/0414 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2024
From: AGGARWAL, NIKUNJ; BHATIA, UTKARSH; BOSTON, KYLE MICHAEL; GUNDA, SIDDHARTHA; GUPTA, ABHISHEK; KATTAGONI, VENUMADHAV; NANDA, HIMANSHU; RAI, AYUSH
To: PEOPLE CENTER, INC.
Reel/Frame 068512/0230 →
Priority Claims (1)
IN 202211057365 · Oct 7, 2022 · national
Continuity (2)
Continuation 18482661 · Oct 6, 2023
Related Publication 20240378195A1 · Nov 14, 2024
References Cited (10)
US 7331015B2 · Hays et al. · 2008 [cited by applicant]
US 8244714B1 · Collins · 2012 [cited by examiner]
US 20050039033A1 · Meyers et al. · 2005 [cited by applicant]
US 20050060647A1 · Doan · 2005 [cited by examiner]
US 20070027904A1 · Chow · 2007 [cited by examiner]
US 20080059524A1 · Biedenstein · 2008 [cited by examiner]
US 20080104542A1 · Cohen · 2008 [cited by examiner]
US 20190108265A1 · Barmentloo · 2019 [cited by examiner]
US 20210224250A1 · Griffith · 2021 [cited by examiner]
US 20220207061A1 · Failer et al. · 2022 [cited by applicant]