[UXPROD-2737] Bulk APIs for Orders Storage Module Created: 07/Oct/20  Updated: 05/May/21

Status: Open
Project: UX Product
Components: None
Affects versions: None
Fix versions: None

Type: New Feature Priority: TBD
Reporter: Ian Walls Assignee: Ian Walls
Resolution: Unresolved Votes: 0
Labels: bulk-api
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original estimate: Not Specified

Issue links:
Blocks
is blocked by UXPROD-2818 RMB Work to Support Bulk Delete APIs Closed
Defines
is defined by MODORDSTOR-178 Bulk Create/Update API for PO Lines Open
is defined by MODORDSTOR-179 Bulk DELETE API for PO Lines Open
is defined by MODORDSTOR-180 Bulk Create/Update API for purchase o... Open
is defined by MODORDSTOR-181 Bulk DELETE API for purchase orders Open
Development Team: None
PO Rank: 75
PO Ranking Note: Not all institutions will be migrating Orders, and there is a lot of business logic associated, but if it's going to be loaded, it needs to be bulk
Rank: Chalmers (Impl Aut 2019): R4
Rank: Chicago (MVP Sum 2020): R4
Rank: Cornell (Full Sum 2021): R2
Rank: Duke (Full Sum 2021): R2
Rank: 5Colleges (Full Jul 2021): R2
Rank: GBV (MVP Sum 2020): R2
Rank: U of AL (MVP Oct 2020): R5

 Description   

Current situation or problem:

In order to facilitate migrations in a timely and efficient manner, the Orders Storage module needs to have batch APIs. POSTing, PUTting and DELETEing records one HTTP request and database commit at a time is unusably slow for large data sets.

In scope:

  • Bulk Create/Update for PO Lines
  • Bulk Delete (with CQL query parameters) for PO Lines
  • Bulk Create/Update for Purchase Orders
  • Bulk Delete (with CQL query parameters) for Purchase Orders

Out of scope:

Batch APIs for acquisitions units, alerts, order templates and prefixes/suffixes are not required. The anticipated order of magnitude for these record sets is not sufficient to require batch handling. The individual record APIs are sufficient.

Use case(s):

  • Initial Data Migration, including iterative data load/delete

Comments:

In order for these APIs to be effective, they need to bypass the business logic and go directly to the storage module. This means that bulk creation of purchase orders will not connect data to the Invoices, Receiving or Finance modules. The user of these APIs is responsible for maintaining data integrity; documentation needs to reflect this.

Questions:

Can the Orders module function properly with just purchase orders and PO Lines, or do titles and pieces need to be created as well? If so, then these would probably need bulk APIs, as well.


Generated at Fri Feb 09 00:26:26 UTC 2024 using Jira 1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d.