]> git.koha-community.org Git - koha.git/commit
Bug 26894: Handle subfield 0 and delete empty fields
authorNick Clemens <nick@bywatersolutions.com>
Mon, 2 Nov 2020 12:05:47 +0000 (12:05 +0000)
committerAndrew Fuerste-Henry <andrew@bywatersolutions.com>
Fri, 22 Jan 2021 16:50:02 +0000 (16:50 +0000)
commit567d5b9875a9ee52d0f35a999a5599920b688c59
treeffee46f3577be425b21f14028d0bd564d3e18c3f
parent1e2d8599d3ed49207a9952d8370b9af5d9e07725
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>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 77f3d48dee24ad51dfbed65922712064dedff1ff)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
(cherry picked from commit eb24579aef3b6461ac61044a5d78b0472bbcb68f)

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Koha/SimpleMARC.pm
t/db_dependent/MarcModificationTemplates.t