IP Library Granted Patent US 8,429,527
Granted Patent B1
US 8,429,527 · App. 11/486,397 · Granted Apr 23, 2013

Complex data merging, such as in a workflow application

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 8,429,527
App. No.
11/486,397
Granted
Apr 23, 2013
Kind
B1
Abstract

Merging data for use in a workflow application may include providing a user interface that facilitates collecting information from a user such as an indication of a first document and a second document that each include multiple records, a selection of a key indicator field common to both documents, and some indication of which of the two documents is a controlling document. Without the need for the user providing programming instructions, the workflow application joins information from both documents by identifying whether any of the records from the non-controlling document has a key indicator value that matches the key value of a select record from the controlling document. Based on this identifying, the workflow application dynamically generates a merged document which it can then use to perform one or more actions.

Claims (51)

1. A method for complex data merging, comprising:

at a computer having a workflow facility:

retrieving, at the workflow facility, multiple input components from one or more input sources accessible by the workflow facility, wherein the multiple input components comprise a first input component and a second input component, wherein the first input component contains a first sequence of information conforming to a first record type, wherein the first sequence of information relates to a first plurality of database records of results from a first prior task performed by the workflow facility, wherein the second input component contains a second sequence of information conforming to a second record type, and wherein the second sequence of information relates to a second plurality of database records of results from a second prior task performed by the workflow facility;

determining, at the workflow facility, a parent/child status between the first input component and the second input component;

identifying, at the workflow facility, one of the first input component and the second input component as a controlling input component based on the parent/child status between the first input component and the second input component;

matching, at the workflow facility, each foreign key contained in each of the first plurality of database records associated with the first input component with a corresponding primary key from the second plurality of database records associated with the second input component; and

producing, at the workflow facility, a single merged document based on a result of the matching, wherein a shape, size, format, or a configuration of the single merged document is determined at run-time based on the controlling input component.

2. The method according to claim 1 , wherein the first sequence of information comprises a sequence of invoices, with each invoice in the sequence associated with its own customer record, and wherein the second sequence of information comprises a sequence of customer records for a plurality of customers, with each of the plurality of customers associated with at least one of the customer records.

3. The method according to claim 1 , wherein the first input component and the second input component are Extensible Markup Language (XML) documents.

4. The method according to claim 1 , wherein the multiple input components further comprise documents, processes, and applications.

5. The method according to claim 1 , wherein the multiple input components comprise content that is internal or external to the workflow facility.

6. The method according to claim 1 , wherein the multiple input components comprise content that is internal to the workflow facility and content that is external to the workflow facility.

7. The method according to claim 1 , wherein the one or more input sources comprise software applications.

8. The method according to claim 1 , further comprising:

prior to performing the matching, determining if additional input components are needed; and

if one or more additional input components are needed, retrieving the one or more input components from the one or more input sources; or

if no additional input components are needed, performing the matching.

9. A computer program product comprising at least one non-transitory computer readable medium storing instructions translatable by at least one processor to perform, at a workflow facility:

retrieving multiple input components from one or more input sources accessible by the workflow facility, wherein the multiple input components comprises a first input component and a second input component, wherein the first input component contains a first sequence of information conforming to a first record type, wherein the first sequence of information relates to a first plurality of database records of results from a first prior task performed by the workflow facility, wherein the second input component contains a second sequence of information conforming to a second record type, and wherein the second sequence of information relates to a second plurality of database records of results from a second prior task performed by the workflow facility;

determining a parent/child status between the first input component and the second input component;

identifying one of the first input component and the second input component as a controlling input component based on the parent/child status between the first input component and the second input component;

matching each foreign key contained in each of the first plurality of database records associated with the first input component with a corresponding primary key from the second plurality of database records associated with the second input component; and

producing a single merged document based on a result of the matching, wherein a shape, size, format, or a configuration of the single merged document is determined at run-time based on the controlling input component.

10. The computer program product of claim 9 , wherein the first sequence of information comprises a sequence of invoices, with each invoice in the sequence associated with its own customer record, and wherein the second sequence of information comprises a sequence of customer records for a plurality of customers, with each of the plurality of customers associated with at least one of the customer records.

11. The computer program product of claim 9 , wherein the first input component and the second input component are Extensible Markup Language (XML) documents.

12. The computer program product of claim 9 , wherein the multiple input components further comprise documents, processes, and applications.

13. The computer program product of claim 9 , wherein the multiple input components comprise content that is internal or external to the workflow facility.

14. The computer program product of claim 9 , wherein the multiple input components comprise content that is internal to the workflow facility and content that is external to the workflow facility.

15. The computer program product of claim 9 , wherein the one or more input sources comprise software applications.

16. The computer program product of claim 9 , wherein the instructions are further translatable by the at least one processor to perform:

prior to performing the matching, determining if additional input components are needed; and

if one or more additional input components are needed, retrieving the one or more input components from the one or more input sources; or

if no additional input components are needed, performing the matching.

17. A system for complex data merging, comprising:

at least one processor; and

at least one non-transitory computer readable medium storing instructions translatable by the at least one processor to perform, at a workflow facility:

retrieving multiple input components from one or more input sources accessible by the workflow facility, wherein the multiple input components comprises a first input component and a second input component, wherein the first input component contains a first sequence of information conforming to a first record type, wherein the first sequence of information relates to a first plurality of database records of results from a first prior task performed by the workflow facility, wherein the second input component contains a second sequence of information conforming to a second record type, and wherein the second sequence of information relates to a second plurality of database records of results from a second prior task performed by the workflow facility;

determining a parent/child status between the first input component and the second input component;

identifying one of the first input component and the second input component as a controlling input component based on the parent/child status between the first input component and the second input component;

matching each foreign key contained in each of the first plurality of database records associated with the first input component with a corresponding primary key from the second plurality of database records associated with the second input component; and

producing a single merged document based on a result of the matching, wherein a shape, size, format, or a configuration of the single merged document is determined at run-time based on the controlling input component.

18. The system of claim 17 , wherein the first sequence of information comprises a sequence of invoices, with each invoice in the sequence associated with its own customer record, and wherein the second sequence of information comprises a sequence of customer records for a plurality of customers, with each of the plurality of customers associated with at least one of the customer records.

19. The system of claim 17 , wherein the first input component and the second input component are Extensible Markup Language (XML) documents.

20. The system of claim 17 , wherein the multiple input components further comprise documents, processes, and applications.

21. The system of claim 17 , wherein the multiple input components comprise content that is internal or external to the workflow facility.

22. The system of claim 17 , wherein the multiple input components comprise content that is internal to the workflow facility and content that is external to the workflow facility.

23. The system of claim 17 , wherein the one or more input sources comprise software applications.

24. The system of claim 17 , wherein the instructions are further translatable by the at least one processor to perform:

prior to performing the matching, determining if additional input components are needed; and

if one or more additional input components are needed, retrieving the one or more input components from the one or more input sources; or

if no additional input components are needed, performing the matching.

Assignments (5)
IP BUSINESS SALE AGREEMENT Recorded Aug 30, 2016
From: OPEN TEXT S.A.
To: OT IP SUB, LLC
Reel/Frame 039872/0605 →
CERTIFICATE OF AMALGAMATION Recorded Aug 30, 2016
From: IP OT SUB ULC
To: OPEN TEXT SA ULC
Reel/Frame 039872/0662 →
CERTIFICATE OF CONTINUANCE Recorded Aug 30, 2016
From: OT IP SUB, LLC
To: IP OT SUB ULC
Reel/Frame 039986/0689 →
CORRECTION BY DECLARATION OF INCORRECT APPL. NO. 11/468,397, PREVIOUSLY RECORDED ON R/F 018487/0647. Recorded Jan 7, 2013
From: OPEN TEXT S.A.
To: OPEN TEXT S.A.
Reel/Frame 029619/0658 →
CORRECTION BY DECLARATION OF INCORRECT APPL. NO. 11/468,397 PREVIOUSLY RECORDED ON R/F 018768/0216. Recorded Jan 7, 2013
From: OPEN TEXT S.A.
To: OPEN TEXT S.A.
Reel/Frame 029619/0702 →