IP Library Granted Patent US 7,249,044
Granted Patent B2
US 7,249,044 · App. 09/972,383 · Granted Jul 24, 2007

Fulfillment management system for managing ATP data in a distributed supply chain environment

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 7,249,044
App. No.
09/972,383
Granted
Jul 24, 2007
Kind
B2
Abstract

A fulfillment management system includes a database operable to store product availability information associated with at least one product. The fulfillment management system also includes one or more processors collectively operable to receive at least one component available-to-promise (ATP) request. Each component ATP request corresponds to a particular ATP request line-item for a desired product. The one or more processors are also operable to retrieve at least a portion of the product availability information associated with the desired product from the database for each component ATP request, determine an ATP response for each component ATP request using the retrieved product availability information, generate a component quotation for each component ATP request according to the corresponding ATP response, and communicate the component quotation for consolidation with other component quotations.

Claims (149)

1. A fulfillment management system, comprising:

a local database operable to store consolidated product availability information associated with at least one product, the consolidated product availability information consolidated from a plurality of available-to-promise (ATP) servers, the local database separate and distinct from the plurality of ATP servers; and

one or more processors coupled to the local database and collectively operable to:

receive at least one component ATP request, each component ATP request corresponding to an ATP request line-item for a desired product;

retrieve from the local database at least a portion of the consolidated product availability information associated with the desired product for each component ATP request, the consolidated product availability information consolidated from the plurality of ATP servers;

determine an ATP response for each component ATP request using the consolidated product availability information retrieved from the local database, the consolidated product availability information consolidated from the plurality of ATP servers;

generate a component quotation for each component ATP request according to the corresponding ATP response; and

communicate the component quotation for consolidation with other component quotations;

the consolidated product availability information stored in the local database enabling the component quotation to be generated and communicated without retrieving product availability information from the plurality of ATP servers in response to receiving the at least one component ATP request.

2. The fulfillment management system of claim 1 , wherein the one or more processors are further collectively operable to:

receive at least one component quotation confirmation, each component quotation confirmation corresponding to a particular quotation line-item accepted at a client;

determine a promise response for each component quotation confirmation using at least a portion of the consolidated product availability information in the local database;

generate a component promise for each component quotation confirmation according to the corresponding promise response, the component promise representing a commitment of product availability for the corresponding accepted product; and

communicate the component promise for consolidation with other component promises.

3. The fulfillment management system of claim 2 , wherein the one or more processors are further collectively operable to:

receive a component request cancellation associated with a component ATP request or a component promise;

update the consolidated product availability information associated with the desired product in the local database; and

generate a component cancellation confirmation for communication.

4. The fulfillment management system of claim 2 , wherein the one or more processors are further collectively operable to:

receive a component acceptance corresponding to a particular promise line-item accepted at the client;

record the component acceptance in the local database; and

generate a component acceptance confirmation for communication.

5. The fulfillment management system of claim 2 , wherein the one or more processors are further collectively operable to:

identify a planning change that affects a component promise;

generate a planning change notification for communication;

receive at least one revised component ATP request; and

process the revised component ATP request to generate one or more revised component quotations.

6. The fulfillment management system of claim 1 , wherein the one or more processors are collectively operable to determine the ATP response for one of the component ATP requests by:

searching the retrieved consolidated product availability information, in reverse chronological order starting at a requested ship date, for a requested quantity of the desired product;

determining whether the total requested quantity is available between the requested ship date and a lower bound of a date range;

searching the retrieved consolidated product availability information, in chronological order starting at the requested ship date, for the remaining requested quantity when the total requested quantity is not available between the requested ship date and the lower bound of the date range; and

determining whether the total requested quantity is available between the lower bound and an upper bound of the date range.

7. The fulfillment management system of claim 1 , wherein:

the component ATP requests correspond to individual items;

the one or more processors are collectively operable to generate component quotations that include information and rules regarding how the component quotations may be mutated; and

the one or more processors are collectively operable to generate component promises that include information and rules regarding how the component promises may be mutated.

8. The fulfillment management system of claim 1 , wherein the one or more processors are further collectively operable to:

receive a sequence of component ATP requests, one or more first component ATP requests in the sequence targeted to the fulfillment management system;

process the first component ATP requests targeted for the fulfillment management system to generate one or more resulting component quotations; and

communicate the resulting component quotations, along with remaining component ATP requests in the sequence, to a second fulfillment management system targeted by one or more second component ATP requests in the sequence.

9. The fulfillment management system of claim 1 , wherein the one or more processors are collectively operable to:

support a seller hierarchy also supported by a fulfillment server;

support a subset of products supported by the fulfillment server; and

generate component quotations or component promises on a per product basis based upon allocations throughout the seller hierarchy for the subset of products.

10. The fulfillment management system of claim 1 , wherein the one or more processors are collectively operable to:

support a subset of products in a hierarchy of related products supported by a fulfillment server; and

generate component quotations or component promises based upon allocations for the subset of products throughout the hierarchy.

11. The fulfillment management system of claim 10 , wherein the one or more processors are further collectively operable to generate an availability of generics of a product by communicating component ATP requests to a second fulfillment management system that corresponds to the generic products.

12. The fulfillment management system of claim 1 , wherein:

the fulfillment management system corresponds to a seller within a seller hierarchy supported by a fulfillment server; and

the one or more processors are further collectively operable to:

hold allocations of supply for the corresponding seller;

generate all component quotations or component promises possible with the allocations; and

communicate the component quotations or component promises for combination, for each product, as if the ATP request had been quoted or promised by a single system having all the allocations.

13. The fulfillment management system of claim 12 , wherein the one or more processors are further collectively operable to generate an availability of a corresponding parent seller by communicating component ATP requests to a second fulfillment management system corresponding to the parent seller.

14. The fulfillment management system of claim 1 , wherein the one or more processors are collectively operable to accept component ATP requests from multiple fulfillment servers and communicate component quotations or component promises to multiple fulfillment servers.

15. The fulfillment management system of claim 1 , wherein the one or more processors are collectively operable to support a subset of a product hierarchy and generate component quotations or component promises based on allocations to products in the hierarchy.

16. The fulfillment management system of claim 1 , wherein the product availability information comprises:

a list of at least one product; and

a supply vector identifying when one or more quantities of the product have or will become available.

17. The fulfillment management system of claim 1 , wherein the database is also operable to store:

one or more accepted component promises;

one or more commit transactions associated with each accepted component promise; and

one or more supply transactions associated with at least one product.

18. The fulfillment management system of claim 17 , wherein the supply transactions represent at least one of an addition, a modification, and a removal of availability of the product.

19. The fulfillment management system of claim 1 , wherein the one or more processors are collectively operable to receive at least one component ATP request through a web user interface.

20. The fulfillment management system of claim 19 , wherein the one or more processors are collectively operable to receive at least one component ATP request using Hypertext Transfer Protocol (HTTP).

21. The fulfillment management system of claim 1 , wherein the fulfillment management system operates in an electronic marketplace.

22. A computer-implemented method for managing available-to-promise (ATP) data, comprising:

receiving at least one component ATP request, each component ATP request corresponding to an ATP request line-item for a desired product;

retrieving from a local database, which is separate and distinct from a plurality of ATP servers and stores consolidated product availability information consolidated from the plurality of ATP servers, at least a portion of the consolidated product availability information associated with the desired product for each component ATP request;

determining an ATP response for each component ATP request using the consolidated product availability information retrieved from the local database, the consolidated product availability information consolidated from the plurality of ATP servers;

generating a component quotation for each component ATP request according to the corresponding ATP response; and

communicating the component quotation for consolidation with other component quotations;

the consolidated product availability information stored in the local database enabling the component quotation to be generated and communicated without retrieving product availability information from the plurality of ATP servers in response to receiving the at least one component ATP request.

23. The method of claim 22 , further comprising:

receiving at least one component quotation confirmation, each component quotation confirmation corresponding to a particular quotation line-item accepted at a client;

determining a promise response for each component quotation confirmation using at least a portion of the consolidate product availability information in the local database;

generating a component promise for each component quotation confirmation according to the corresponding promise response, the component promise representing a commitment of product availability for the corresponding accepted product; and

communicating the component promise for consolidation with other component promises.

24. The method of claim 23 , further comprising:

receiving a component request cancellation associated with a component ATP request or a component promise;

updating the consolidated product availability information associated with the desired product in the local database; and

generating a component cancellation confirmation for communication.

25. The method of claim 23 , further comprising:

receiving a component acceptance corresponding to a particular promise line-item accepted at the client;

recording the component acceptance in the local database; and

generating a component acceptance confirmation for communication.

26. The method of claim 23 , further comprising:

identifying a planning change that affects a component promise;

generating a planning change notification for communication;

receiving at least one revised component ATP request; and

processing the revised component ATP request to generate one or more revised component quotations.

27. The method of claim 22 , wherein determining the ATP response for one of the component ATP requests comprises:

searching the retrieved consolidated product availability information, in reverse chronological order starting at a requested ship date, for a requested quantity of the desired product;

determining whether the total requested quantity is available between the requested ship date and a lower bound of a date range;

searching the retrieved consolidated product availability information, in chronological order starting at the requested ship date, for the remaining requested quantity when the total requested quantity is not available between the requested ship date and the lower bound of the date range; and

determining whether the total requested quantity is available between the lower bound and an upper bound of the date range.

28. The method of claim 22 , wherein:

the component ATP requests correspond to individual items; and

generating the component quotations comprises generating component quotations that include information and rules regarding how the component quotations may be mutated.

29. The method of claim 22 , further comprising:

receiving a sequence of component ATP requests, one or more first component ATP requests in the sequence targeted to a first fulfillment management system;

processing the first component ATP requests targeted for the first fulfillment management system to generate one or more resulting component quotations; and

communicating the resulting component quotations, along with remaining component ATP requests in the sequence, to a second fulfillment management system targeted by one or more second component ATP requests in the sequence.

30. The method of claim 22 , further comprising generating component quotations or component promises on a per product basis based upon allocations throughout a seller hierarchy for a subset of products, the seller hierarchy and the subset of products supported by a fulfillment server.

31. The method of claim 22 , further comprising generating component quotations or component promises based upon allocations for a subset of products throughout a hierarchy of related products, the subset of products in the hierarchy of related products supported by a fulfillment server.

32. The method of claim 22 , further comprising generating an availability of generics of a product by communicating component ATP requests to a fulfillment management system that corresponds to the generic products.

33. The method of claim 22 , further comprising:

holding allocations of supply for a seller within a seller hierarchy that is supported by a fulfillment server;

generating all component quotations or component promises possible with the allocations; and

communicating the component quotations or component promises for combination, for each product, as if the ATP request had been quoted or promised by a single system having all the allocations.

34. The method of claim 33 , further comprising generating an availability of a corresponding parent seller by communicating component ATP requests to a fulfillment management system corresponding to the parent seller.

35. The method of claim 22 , wherein:

receiving at least one component ATP request comprises receiving component ATP requests from multiple fulfillment servers; and

communicating the component quotation comprises communicating component quotations to multiple fulfillment servers.

36. The method of claim 22 , wherein generating the component quotations for the component ATP requests comprises generating the component quotations based on allocations to products in a product hierarchy.

37. The method of claim 22 , wherein receiving at least one component ATP request comprises receiving at least one component ATP request through a web user interface.

38. The method of claim 37 , receiving at least one component ATP request comprises receiving at least one component ATP request using Hypertext Transfer Protocol (HTTP).

39. Software for managing available-to-promise (ATP) data in a distributed supply chain planning environment, the software embodied in at least one computer-readable medium and, when executed by one or more processors coupled to a local database, operable to:

receive at least one component ATP request, each component ATP request corresponding to an ATP request line-item for a desired product;

retrieve from the local database, which is separate and distinct from a plurality of ATP servers and stores consolidated product availability information consolidated from the plurality of ATP servers, at least a portion of the consolidated product availability information associated with the desired product for each component ATP request;

determine an ATP response for each component ATP request using the consolidated product availability information retrieved from the local database, the consolidated product availability information consolidated from the plurality of ATP servers;

generate a component quotation for each component ATP request according to the corresponding ATP response; and

communicate the component quotation for consolidation with other component quotations;

the consolidated product availability information stored in the local database enabling the component quotation to be generated and communicated without retrieving product availability information from the plurality of ATP servers in response to receiving the at least one component ATP request.

40. A fulfillment management system, comprising:

means for storing consolidated product availability information associated with at least one product, the consolidated product availability information consolidated from a plurality of available-to-promise (ATP) servers, the storing means separate and distinct from a plurality of ATP servers;

means for receiving at least one component ATP request, each component ATP request corresponding to an ATP request line-item for a desired product;

means for retrieving from the storing means at least a portion of the product availability information associated with the desired product for each component ATP request, the consolidated product availability information consolidated from the plurality of ATP servers;

means for determining an ATP response for each component ATP request using the consolidated product availability information retrieved from the storing means, the consolidated product availability information consolidated from the plurality of ATP servers;

means for generating a component quotation for each component ATP request according to the corresponding ATP response; and

means for communicating the component quotation for consolidation with other component quotations;

the consolidated product availability information stored in the storing means enabling the component quotation to be generated and communicated without retrieving product availability information from the plurality of ATP servers in response to receiving the at least one component ATP request.

41. A fulfillment management system for use in an electronic marketplace, comprising:

a local database separate and distinct from a plurality of available-to-promise (ATP) servers and operable to store:

a supply vector identifying when one or more quantities of at least one product have or will become available, the supply vector comprising product availability information consolidated from the plurality of ATP servers;

at least one accepted component promise;

at least one commit transaction associated with each accepted component promise; and

at least one supply transaction associated with a product; and one or more processors coupled to the local database and collectively operable to:

receive at least one component ATP request using Hypertext Transfer Protocol (HTTP), each component ATP request corresponding to an ATP request line-item for a desired product;

retrieve from the local database at least a portion of the supply vector associated with the desired product for each component ATP request, the supply vector comprising product availability information consolidated from the plurality of ATP servers;

search the retrieved information, in reverse chronological order starting at a requested ship date, for a requested quantity of the desired product;

determine whether the total requested quantity is available between the requested ship date and a lower bound of a date range;

search the retrieved information, in chronological order starting at the requested ship date, for the remaining requested quantity when the total requested quantity is not available;

determine whether the total requested quantity is available between the lower bound and an upper bound of the date range;

generate a component quotation for each component ATP request based on the search of the retrieved information; and

communicate the component quotation for consolidation with other component quotations;

the supply vector stored in the local database, comprising product availability information consolidated from the plurality of ATP servers, enabling the component quotation to be generated and communicated without retrieving product availability information from the one or more ATP servers in response to receiving the at least one component ATP request.

Assignments (11)
RELEASE OF SECURITY INTEREST Recorded Sep 16, 2021
From: JPMORGAN CHASE BANK, N.A.
To: BLUE YONDER GROUP, INC.; BLUE YONDER, INC.; JDA SOFTWARE SERVICES, INC.; I2 TECHNOLOGIES INTERNATIONAL SERVICES, LLC; MANUGISTICS SERVICES, INC.; MANUGISTICS HOLDINGS DELAWARE II, INC.; REDPRAIRIE COLLABORATIVE FLOWCASTING GROUP, LLC; JDA SOFTWARE RUSSIA HOLDINGS, INC.; REDPRAIRIE SERVICES CORPORATION; BY BOND FINANCE, INC.; BY NETHERLANDS HOLDING, INC.; BY BENELUX HOLDING, INC.
Reel/Frame 057724/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REEL 026468 FRAME NUMBER FROM 0199 TO 0119 PREVIOUSLY RECORDED ON REEL 055136 FRAME 0623. ASSIGNOR(S) HEREBY CONFIRMS THE CORRECTION ASSIGNMENT. Recorded Apr 19, 2021
From: I2 TECHNOLOGIES US, INC.
To: JDA TECHNOLOGIES US, INC.
Reel/Frame 056813/0110 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF THE CONVEYING AND RECEIVING PARTIES TO INCLUDE A PERIOD AFTER THE TERM INC PREVIOUSLY RECORDED AT REEL: 026740 FRAME: 0676. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 8, 2021
From: JDA TECHNOLOGIES US, INC.
To: JDA SOFTWARE GROUP, INC.
Reel/Frame 055257/0747 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF THE CONVEYING AND RECEIVING PARTIES TO INCLUDE A PERIOD AFTER THE TERM INC PREVIOUSLY RECORDED ON REEL 026468 FRAME 0199. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME FROM I2 TECHNOLOGIES US, INC. TO JDA TECHNOLOGIES US, INC.. Recorded Dec 12, 2020
From: I2 TECHNOLOGIES US, INC.
To: JDA TECHNOLOGIES US, INC.
Reel/Frame 055136/0623 →
CHANGE OF NAME Recorded Apr 14, 2020
From: JDA SOFTWARE GROUP, INC.
To: BLUE YONDER GROUP, INC.
Reel/Frame 052392/0712 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL/FRAME NO. 29556/0809 Recorded Oct 12, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: JDA SOFTWARE GROUP, INC.
Reel/Frame 040337/0356 →
SECURITY AGREEMENT Recorded Oct 12, 2016
From: RP CROWN PARENT, LLC; RP CROWN HOLDING LLC; JDA SOFTWARE GROUP, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 040326/0449 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL/FRAME NO. 29556/0697 Recorded Oct 12, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: JDA SOFTWARE GROUP, INC.
Reel/Frame 040337/0053 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jan 2, 2013
From: JDA SOFTWARE GROUP, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 029556/0697 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jan 2, 2013
From: JDA SOFTWARE GROUP, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 029556/0809 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Dec 21, 2012
From: WELLS FARGO CAPITAL FINANCE, LLC
To: JDA TECHNOLOGIES US, INC.
Reel/Frame 029529/0812 →