Summary: | Marc Modification Templates treat subfield 0 as no subfield set when moving fields | ||
---|---|---|---|
Product: | Koha | Reporter: | Nick Clemens (kidclamp) <nick> |
Component: | Tools | Assignee: | Nick Clemens (kidclamp) <nick> |
Status: | CLOSED FIXED | QA Contact: | Testopia <testopia> |
Severity: | normal | ||
Priority: | P5 - low | CC: | andrew, caroline.cyr-la-rose, fridolin.somers, martin.renvoize, victor |
Version: | Main | ||
Hardware: | All | ||
OS: | All | ||
Change sponsored?: | --- | Patch complexity: | --- |
Documentation contact: | Documentation submission: | ||
Text to go in the release notes: | Version(s) released in: |
21.05.00,20.11.02,20.05.08
|
|
Circulation function: | |||
Bug Depends on: | 17510, 26781 | ||
Bug Blocks: | |||
Attachments: |
Bug 26894: Handle subfield 0 and delete empty fields
Bug 26894: Handle subfield 0 and delete empty fields Bug 26894: Handle subfield 0 and delete empty fields |
Description
Nick Clemens (kidclamp)
2020-11-02 11:26:58 UTC
Created attachment 112827 [details] [review] Bug 26894: Handle subfield 0 and delete empty fields This patch corrects handling of subfield 0 when copying/moving. Before these patches copying from subfield 0 would copy the entire field. We also correct an error that if moving a single subfield, we can leave behind empty fields with no subfields. They should be deleted. To test: 1 - Define a new MARC Modification template with actions: Delete field 100$0 Add new field 100$0 with value Test Update existing or add new field 100$0 with value TestUpdated Move field 100$0 to 600$0 Copy field 600$0 to 100$0 Copy and replace field 245$0 to 700$0 2 - Define a new record like: LDR 00334nam a22001217a 4500 003 ff 005 20201102111604.0 008 201102b xxu||||| |||| 00| 0 eng d 040 _ _ ‡cvsd 100 1 _ ‡012345‡aKnuth, Donal Ervin‡d1938 245 _ _ ‡012345‡aThe aty of computer programming‡cDonald E. Knuth 650 _ 0 ‡042‡aComputer programming‡9462 3 - Modify this record using the template above 4 - Note that entier 245 is copied to 700, same for 600 field 5 - Apply patch 6 - Now only subfields 0 are copied Created attachment 114343 [details] [review] Bug 26894: Handle subfield 0 and delete empty fields This patch corrects handling of subfield 0 when copying/moving. Before these patches copying from subfield 0 would copy the entire field. We also correct an error that if moving a single subfield, we can leave behind empty fields with no subfields. They should be deleted. To test: 1 - Define a new MARC Modification template with actions: Delete field 100$0 Add new field 100$0 with value Test Update existing or add new field 100$0 with value TestUpdated Move field 100$0 to 600$0 Copy field 600$0 to 100$0 Copy and replace field 245$0 to 700$0 2 - Define a new record like: LDR 00334nam a22001217a 4500 003 ff 005 20201102111604.0 008 201102b xxu||||| |||| 00| 0 eng d 040 _ _ ‡cvsd 100 1 _ ‡012345‡aKnuth, Donal Ervin‡d1938 245 _ _ ‡012345‡aThe aty of computer programming‡cDonald E. Knuth 650 _ 0 ‡042‡aComputer programming‡9462 3 - Modify this record using the template above 4 - Note that entier 245 is copied to 700, same for 600 field 5 - Apply patch 6 - Now only subfields 0 are copied Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com> Tested well. Note that I was running manually misc/background_jobs_worker.pl, that must be restarted after applying patches. Created attachment 115076 [details] [review] Bug 26894: Handle subfield 0 and delete empty fields This patch corrects handling of subfield 0 when copying/moving. Before these patches copying from subfield 0 would copy the entire field. We also correct an error that if moving a single subfield, we can leave behind empty fields with no subfields. They should be deleted. To test: 1 - Define a new MARC Modification template with actions: Delete field 100$0 Add new field 100$0 with value Test Update existing or add new field 100$0 with value TestUpdated Move field 100$0 to 600$0 Copy field 600$0 to 100$0 Copy and replace field 245$0 to 700$0 2 - Define a new record like: LDR 00334nam a22001217a 4500 003 ff 005 20201102111604.0 008 201102b xxu||||| |||| 00| 0 eng d 040 _ _ ‡cvsd 100 1 _ ‡012345‡aKnuth, Donal Ervin‡d1938 245 _ _ ‡012345‡aThe aty of computer programming‡cDonald E. Knuth 650 _ 0 ‡042‡aComputer programming‡9462 3 - Modify this record using the template above 4 - Note that entier 245 is copied to 700, same for 600 field 5 - Apply patch 6 - Now only subfields 0 are copied Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Good catch, Passing QA Pushed to master for 21.05, thanks to everybody involved! Pushed to 20.11.x for 20.11.02 Pushed to 20.05.x for 20.05.08 Missing dependencies for 19.11.x, it shouldn't be affected, no backport. |