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
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.
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
Created attachment 89745 [details] Orders to test with, using default funds
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>
Created attachment 90035 [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> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Not the cleanest implementation ever, but it does work well and is sufficiently commented to understand.. It would be nice to see some selenium tests in a followup next cycle. PQA
Awesome work all! Pushed to master for 19.05
I'm not entirely sure if we need a port of this or not for 18.11.x series, but I don't feel confident I can deliver on in time to 18.11.06 I'm afraid.. deferring to next rmaint (sorry Frido)
(In reply to Martin Renvoize from comment #8) > I'm not entirely sure if we need a port of this or not for 18.11.x series, > but I don't feel confident I can deliver on in time to 18.11.06 I'm afraid.. > deferring to next rmaint (sorry Frido) The two easiest paths here I think are: 1 - Back 22743 and apply this on top - that gets things in line with master 2 - revert 20830 - this removes the problematic code that causes this
Something wrong from this patch: > Add orders from MARC file > "show inactive funds" is not checked > expand the order div to see the details You see Fund: Select a fund (will use default if set) > Check "show inactive funds" You see Select a fund (will populate orders/items if set) > Uncheck "show inactive funds" You see Select a fund (will populate orders/items if set) I have no idea what it means but it's not consistent.