Koha/C4
Marcel de Rooy f952067cb2
Bug 21800: Make TransformKohaToMarc aware of non-repeatable subfields
If a kohafield (in Koha to MARC mappings) contains a pipe char (say A | B),
we split it up into two subfields A and B in MARC.
We will only do that for repeatable subfields now. If the field is not
repeatable, the value will just be 'A | B'.

Note 1: As bug 10306 and its friends (19096) made the Default framework
authoritative, we do no longer have the frameworkcode in this routine.
Formally, we should check the corresponding framework.

Note 2: Does this impact the reverse operation in TransformMarcToKoha?
No, the check on repeatable subfields is done in the interface and not
in TransformMarcToKoha. This routine simply translates two instances of the
same subfield, say A and B, into the value 'A | B' for a kohafield. Not
allowing two instances of a non-repeatable subfield is not in the scope of
this report.

Test plan:
[1] Mark an item field as repeatable in the Default framework.
    Edit an item. Insert A|B in this field and another not-repeatable
    field. Save and reopen. Verify that the repeatable field is duplicated
    and the other one contains the pipe character in the text box.
[2] Look for a repeatable subfield in MARC like e.g. 260$c.
    Go to the cataloguing editor and add A|B in this field.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Ere Maijala <ere.maijala@helsinki.fi>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-24 10:54:46 +00:00
..
AuthoritiesMarc Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
Barcodes
ClassSortRoutine
ClassSplitRoutine
Creators Bug 24545: Fix license statements 2020-02-24 13:31:26 +00:00
External
Form
Heading Bug 24269: Adjust C4::Heading to generate headings from auth tags 2020-02-19 13:33:32 +00:00
ILSDI Bug 20443: (follow-up) Move GetBorrowerAttributes to Koha::Patron - ILSDI 2020-03-23 13:49:22 +00:00
Installer Bug 24545: Fix license statements 2020-02-24 13:31:26 +00:00
Labels Bug 23900: Teach label maker to concat database fields 2020-03-20 15:16:17 +00:00
Linker Bug 24269: Adjust C4::Heading to generate headings from auth tags 2020-02-19 13:33:32 +00:00
Members Bug 20443: Remove extended_attributes_code_value_arrayref AND C4::Members::Attributes 2020-03-23 13:49:22 +00:00
OAI Bug 23084: Replace grep {^$var$} with grep {$_ eq $var} 2020-02-17 10:44:45 +00:00
Output
Patroncards Bug 23488: Line wrapping doesn't always respect word order in Patron card creator 2020-03-02 09:49:57 +00:00
Reports Bug 24511: Update variable names to avoid confusion 2020-01-27 10:14:15 +00:00
Search Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
Serials
SIP Bug 24553: Use 'barcode' not 'item_id' when removing hold from SIP patron 2020-03-20 15:39:24 +00:00
Utils Bug 20443: Remove SearchIdMatchingAttribute 2020-03-23 13:49:21 +00:00
Accounts.pm Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
Acquisition.pm Bug 20443: Add missing use statement 2020-03-23 15:53:12 +00:00
Auth.pm Bug 22943: Renames the in_ipset function to in_iprange in C4::Auth 2020-03-16 11:00:21 +00:00
Auth_cas_servers.yaml.sample
Auth_with_cas.pm
Auth_with_ldap.pm Bug 20443: Use search_with_library_limits for attribute types 2020-03-23 13:49:22 +00:00
Auth_with_shibboleth.pm Bug 24199: (bug 23042 follow-up) Prevent t/Auth_with_shibboleth.t to fail randomly 2019-12-10 10:43:20 +00:00
AuthoritiesMarc.pm Bug 24735: Remove QueryParser-related code 2020-03-02 11:13:03 +00:00
BackgroundJob.pm Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
Barcodes.pm
Biblio.pm Bug 21800: Make TransformKohaToMarc aware of non-repeatable subfields 2020-03-24 10:54:46 +00:00
Bookseller.pm Bug 24002: Incorrect DATE value: '' in C4/Bookseller.pm 2019-11-12 13:50:06 +00:00
Boolean.pm
Breeding.pm Bug 24052: Rename XSLT_Handler 2020-03-24 10:42:23 +00:00
Budgets.pm Bug 24361: (bug 24217 follow-up) Fix several warnings in C4 modules 2020-01-07 13:59:51 +00:00
Calendar.pm
Charset.pm
Circulation.pm Bug 24759: Rename renewalbranch to renewal_branchcode 2020-03-24 10:48:41 +00:00
ClassSortRoutine.pm
ClassSource.pm
ClassSplitRoutine.pm
Context.pm Bug 17845: Remove unused code related to printers 2020-03-10 15:18:27 +00:00
Contract.pm Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
CourseReserves.pm Bug 23463: Fix CourseReserves/CourseItems.t 2020-03-23 10:37:34 +00:00
Creators.pm
Debug.pm
Heading.pm Bug 24269: Adjust C4::Heading to generate headings from auth tags 2020-02-19 13:33:32 +00:00
HoldsQueue.pm Bug 23934: Item level holds not checked for LocalHoldsPriority in Holds Queue 2020-01-10 16:19:40 +00:00
HTML5Media.pm
Images.pm Revert "Bug 21987: Do not generate true color thumbnails if not needed" 2019-11-04 13:21:53 +00:00
ImportBatch.pm Bug 23463: Remove DelItemCheck and ItemSafeToDelete 2020-03-23 09:26:31 +00:00
ImportExportFramework.pm
InstallAuth.pm Bug 17845: Remove unused code related to printers 2020-03-10 15:18:27 +00:00
Installer.pm Bug 24872: Set languages prefererences after install 2020-03-24 09:31:34 +00:00
ItemCirculationAlertPreference.pm
Items.pm Bug 23463: Fix wrong variable name 2020-03-23 10:38:30 +00:00
Koha.pm Bug 17845: Remove unused code related to printers 2020-03-10 15:18:27 +00:00
Labels.pm
Languages.pm
Letters.pm Bug 20443: Remove UpdateBorrowerAttribute and SetBorrowerAttributes 2020-03-23 13:44:16 +00:00
Linker.pm
Log.pm Bug 23896: logaction should pass the correct interface to Koha::Logger 2020-01-30 10:53:56 +00:00
MarcModificationTemplates.pm
Matcher.pm Bug 24735: Remove QueryParser-related code 2020-03-02 11:13:03 +00:00
Members.pm Bug 20443: Remove SearchIdMatchingAttribute 2020-03-23 13:49:21 +00:00
Message.pm
NewsChannels.pm Bug 24002: Incorrect DATE value: '00-00-0000' in NewsChannels.pm 2019-11-12 13:49:58 +00:00
Output.pm Bug 24369: Add CORS support to output_with_http_headers() 2020-03-05 12:59:44 +00:00
Overdues.pm Bug 23084: Replace grep {^$var$} with grep {$_ eq $var} 2020-02-17 10:44:45 +00:00
Patroncards.pm
Record.pm Bug 24052: Rename XSLT_Handler 2020-03-24 10:42:23 +00:00
Reports.pm Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
Reserves.pm Bug 24436: Add handling for reserve transfer triggers 2020-03-20 15:59:45 +00:00
Ris.pm
RotatingCollections.pm Bug 24299: Record 'RotatingCollection' as a transfer trigger 2020-03-20 15:54:55 +00:00
Scheduler.pm Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
Scrubber.pm
Search.pm Bug 19279: performance of linked items in search 2020-03-18 17:51:25 +00:00
Serials.pm Bug 24002: (follow-up) Incorrect DATE value: '00-00-0000' in C4/Serials.pm 2020-02-18 13:53:31 +00:00
Service.pm
ShelfBrowser.pm
SMS.pm
SocialData.pm
Stats.pm Bug 23084: Replace grep {^$var$} with grep {$_ eq $var} 2020-02-17 10:44:45 +00:00
Suggestions.pm Bug 24723: Update EmailPurchaseSuggestions to use inbound_email_address 2020-03-19 09:33:48 +00:00
Tags.pm Bug 23084: Replace grep {^$var$} with grep {$_ eq $var} 2020-02-17 10:44:45 +00:00
Templates.pm
TmplToken.pm
TmplTokenType.pm Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
TTParser.pm
UsageStats.pm Bug 24854: Remove IDreamBooks integration 2020-03-24 08:07:23 +00:00
XISBN.pm Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
XSLT.pm Bug 24052: Rename XSLT_Handler 2020-03-24 10:42:23 +00:00