Bug 22802 - When ordering form a staged file, if funds are populated per item order level fund should not be required
Summary: When ordering form a staged file, if funds are populated per item order level...
Status: Signed Off
Alias: None
Product: Koha
Classification: Unclassified
Component: Acquisitions (show other bugs)
Version: master
Hardware: All All
: P5 - low blocker (vote)
Target Milestone: ---
Assignee: Nick Clemens
QA Contact: Testopia
URL:
Whiteboard:
Keywords:
Depends on: 20830 22734
Blocks:
  Show dependency treegraph
 
Reported: 2019-04-29 12:34 UTC by Nick Clemens
Modified: 2019-05-16 19:08 UTC (History)
6 users (show)

See Also:
Change sponsored?: ---
Patch complexity: ---
Bot Control: ---
When did the bot last check this:
Who signed the patch off:
Text to go in the release notes:
Version(s) released in:


Attachments
Bug 22802: Check item funds, order funds, and default funds when ordering from a file (10.12 KB, patch)
2019-05-14 13:30 UTC, Nick Clemens
Details | Diff | Splinter Review
Orders to test with, using default funds (1.35 KB, application/x-wine-extension-mrc)
2019-05-14 13:32 UTC, Nick Clemens
Details
Bug 22802: Check item funds, order funds, and default funds when ordering from a file (10.15 KB, patch)
2019-05-15 17:47 UTC, Liz Rea
Details | Diff | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Nick Clemens 2019-04-29 12:34:41 UTC
To recreate:
1 - Set MarcItemFieldsToOder:
  homebranch: 975$a
  holdingbranch: 975$b
  itype: 975$y
  nonpublic_note: 975$x 
  public_note: 975$z
  loc: 975$c
  ccode: 970$c
  notforloan: 975$7
  uri: 975$u
  copyno: 975$n
  quantity: 975$q
  budget_code: 975$h
  price: 975$g
  replacementprice: 975$p
2 - Create a MARC record with a 975 like:
  =975  \\$aCPL$bCPL$g27.99$oONORDER$q1$p22.39$7-1$yBK$hBUDGET_CODE
3 - Ensure budget code, itype, and branches are valid values for your system
4 - In a basket with create items so to 'on ordering' add the file above
5 - Try to add the order
6 - Order level fund is required
Comment 1 Jonathan Druart 2019-05-04 13:45:36 UTC
This is not trivial at all and I have no idea how to fix it easily before the release. I would opt to revert bug 22734 if no fix is provided here.
Comment 2 Nick Clemens 2019-05-14 13:30:51 UTC
Created attachment 89744 [details] [review]
Bug 22802: Check item funds, order funds, and default funds when ordering from a file

This patch tries to centralise the logic of order funds requirements into a single routine.
If propogates defaults down into items/order as necessary, it also prevents unsetting lower values if
a default is set.

To test:
1 - Populate 'MarcItemFieldsToOrder'
2 - Add to a basket from a file
3 - Use a file containing some item records with funds defined or not
4 - Confirm if all items have funds defined, you can order
5 - Confirm that setting the default for an order populates items and you can order
6 - Confirm that setting the default for all orders populates items if present/ order if not
7 - Confirm that if defaults are set the lower levels cannot be unset
8 - Try various settings and confirm all work as expected
Comment 3 Nick Clemens 2019-05-14 13:32:13 UTC
Created attachment 89745 [details]
Orders to test with, using default funds
Comment 4 Liz Rea 2019-05-15 17:47:14 UTC
Created attachment 89791 [details] [review]
Bug 22802: Check item funds, order funds, and default funds when ordering from a file

This patch tries to centralise the logic of order funds requirements into a single routine.
If propogates defaults down into items/order as necessary, it also prevents unsetting lower values if
a default is set.

To test:
1 - Populate 'MarcItemFieldsToOrder'
2 - Add to a basket from a file
3 - Use a file containing some item records with funds defined or not
4 - Confirm if all items have funds defined, you can order
5 - Confirm that setting the default for an order populates items and you can order
6 - Confirm that setting the default for all orders populates items if present/ order if not
7 - Confirm that if defaults are set the lower levels cannot be unset
8 - Try various settings and confirm all work as expected

Signed-off-by: Liz Rea <wizzyrea@gmail.com>