Merge overlay profile doesn't null columns when input field is an empty string
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Evergreen |
New
|
Undecided
|
Unassigned |
Bug Description
EG 3.11+ and any version going back to the introduction of the AngularJS MARC Import/Export interface.
When using the AngularJS Batch Import/Export -> Merge Overlay profiles interface, it's possible to cause the resulting row in the database to be non-null.
1. Create a new Overlay profile
2. Type something into the preserve specification box
3. Delete the thing you typed
4. Enter any field number into Replace specification (ensuring that nothing is typed in preserve specification)
5. Make sure you've satisfied the form name requirements
6. Click save
Run this query on the database:
select * from vandelay.
You will find that your new template exists with a non-null preserve_spec column.
This has implications in another interface where the preserve_spec column is required to be null: the Z39.50 import interface, overlay existing Evergreen bibs with an external bib. You can choose from a dropdown list of overlay profiles. That list is filtered on the preserve_spec column:
filter=
summary: |
- Merge overlay profile doesn't null columns when blank + Merge overlay profile doesn't null columns when input field is an empty + string |
tags: | added: angularjs database |