Web Client: z39.50 "Record with TCN 249 marked for overlay." uses record ID, not TCN

Bug #1731042 reported by Chris Sharp
60
This bug affects 10 people
Affects Status Importance Assigned to Milestone
Evergreen
Fix Released
Undecided
Unassigned
3.6
Fix Released
Undecided
Unassigned

Bug Description

In the web client z39.50 interface, the screen message showing the current record marked for overlay displays incorrectly. 1) it shows the bib ID (probably pulled from the MARC 001 tag) when the "cat.bib.use_id_for_tcn" global flag is set to false/unchecked. and 2) it has a trailing quote.

Example:

   Record with TCN 249 marked for overlay."

Evergreen 3.0.1 through current master
OpenSRF 3.0.0/master
Ubuntu 16.04 LTS
PostgreSQL 9.5

tags: added: bitesize
summary: - Web Client; z39.50 "Record with TCN 249 marked for overlay." uses record
+ Web Client: z39.50 "Record with TCN 249 marked for overlay." uses record
ID, not TCN
Elaine Hardy (ehardy)
Changed in evergreen:
status: New → Confirmed
Cesar V (cesardv)
Changed in evergreen:
assignee: nobody → Cesar V (cesardv)
Revision history for this message
Cesar V (cesardv) wrote :

Hey Chris, so it looks like the web staff's overlay record (along with others, i.e conjoined, vol tranfer) marking uses the bib record id (per line 453 of Open-ILS/web/js/ui/default/staff/cat/catalog/app.js) and it doesn't seem to check the "cat.bib.use_id_for_tcn" flag at all.

Could we just change the display to just read "Record with Id # marked for overlay"?

Revision history for this message
Elaine Hardy (ehardy) wrote :

PINES catalogers use the TCN for records and not the record ID. In the XUL client, the TCN and not the record id is displayed in this as well as other places. We do need the TCN to display.

Cesar V (cesardv)
Changed in evergreen:
assignee: Cesar V (cesardv) → nobody
Revision history for this message
Mary Llewellyn (mllewell) wrote :

To compound the TCN/Record ID confusion, in our version of 3.0.3, when you click on "Show in Catalog" when a native record is found, it uses the TCN to try to display the record, resulting in a null record display. The URL for the record actually uses the Record ID.

Revision history for this message
Sarah Childs (sarahc) wrote :

It's not just the Record marked for overlay, either. It also displays the Record ID in the column labeled TCN. (And there is no option to add a column for Record ID, which would be nice if the TCN column actually displayed the TCN)

Revision history for this message
Mary Llewellyn (mllewell) wrote :

Still experiencing the problem for Show in Catalog in version 3.1.4.

Revision history for this message
Mary Llewellyn (mllewell) wrote :

Correction to my earlier comment. What is being displayed in the TCN column for us is the value of tag 001, not the actual TCN.
Example: the TCN is m_burnham3910677
The 001 tag value is BHL1244
The record ID is 3910677.

In the Z39.50 interface, the column labeled as TCN displays the value BHL1244.
"Show in catalog" attempts to bring up a record with the URL https://theory.biblio.org/eg/staff/cat/catalog/record/BHL1244

tags: added: z3950
Revision history for this message
Ruth Frasur Davis (redavis) wrote :

Adding voice to this that both DB ID and TCN should display since different libraries use either/or. This problem persists in 3.4 and, I suspect up through all current releases.

Revision history for this message
Elaine Hardy (ehardy) wrote :

In 3.6.2, the TCN is displaying on the tab. The Record id may as well but is beyond the tab display area.

Revision history for this message
Elaine Hardy (ehardy) wrote :

Correction -- the TCN and title appear on the tab and are visible it you hover the mouse

Revision history for this message
Terran McCanna (tmccanna) wrote :

To review:

1) In z39.50 search, the record id (901 subfield c) is displaying in the TCN column. We should change the label on that to Record ID instead of TCN.

2) We should add a new column for TCN that displays the TCN data from 901 subfield a.

3) When you select a row for overlay, the text message says "Record with TCN [x] marked for overlay." where x is subfield c and it should be subfield a.

4) Change staff catalog tab title to get rid of "Bib " at the beginning to economize on screen real estate.

Revision history for this message
Elaine Hardy (ehardy) wrote :

I want to clarify comment #10 --- This is true when Local catalog is checked and native-evergreen-catalog records are listed.

I am not sure how other Z39.50 targets display, but for OCLC

 There is no 901 since the records have not yet been imported. The OCLC TCN displays with the prefixes (that are not internal to OCLC). This is likely pulled from the 001, since it is still the OCLC TCN.

Revision history for this message
Terran McCanna (tmccanna) wrote :

Ah, good point, Elaine!

Revision history for this message
Terran McCanna (tmccanna) wrote :
tags: removed: webstaffclient
Revision history for this message
Terran McCanna (tmccanna) wrote :

Here is a stab at a fix for this by Jessica Woolford and I - with much thanks to the New Developers Working Group and Elaine Hardy for talking through the different workflows and settings!

https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/mccanna/lp1786971-z3950-bibid-tcn-3

To test:

1. In Administration > Server Administration > Global Flags: Set cat.bib.use_id_for_tcn to No (we need to do this in order to be able to import a new record that has a TCN that does not match the Bib ID).
2. Go to Cataloging > Import Record from Z39.50
3. Do a Library of Congress or OCLC search for Gone Girl, select a record and import it
4. Go to the record and verify that the TCN and Bib ID are different from each other (also, verify that the tab now says "TCN" and not "Bib" and that the number displayed matches the TCN).
5. Click Mark For > Overlay Target
6. Go back to Cataloging > Import Record from Z39.50
7. Note that the screen now displays the TCN as well as the record number - eg, "Record 258 marked for overlay (TCN 18120438)"

tags: added: cataloging pullrequest
Revision history for this message
Mike Rylander (mrylander) wrote :

Hi Terran and Jessica,

I haven't analyzed all the code, but I gave it a scan and noticed one API-use issue.

When the code goes to select just the tcn value for the bib in the get_tcn() function it's using the flesh and flesh_fields clauses, but those are for pulling in subordinate/linked objects. You'll want to use the select clause, (minimally) documented here:
  https://wiki.evergreen-ils.org/doku.php?id=backend-devel:open-ils_cstore_api&s[]=select

That's cstore documentation, but pcrud works the same way, so you can replace the {flesh: ... } part with {select: { bre: ['id','tcn_value'] } } to avoid fetching stuff you don't need, like the marcxml.

Revision history for this message
Terran McCanna (tmccanna) wrote :

Thanks, Mike, that is helpful! Removing my pullrequest while I work on it.

tags: removed: pullrequest
Revision history for this message
Terran McCanna (tmccanna) wrote :

Okay, I've changed this to use select instead of flesh - and also tried squashing commits for the first time, so hopefully I've done that right.

https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/mccanna/lp1786971-z3950-bibid-tcn-4

To test:

1. In Administration > Server Administration > Global Flags: Set cat.bib.use_id_for_tcn to No (we need to do this in order to be able to import a new record that has a TCN that does not match the Bib ID).
2. Go to Cataloging > Import Record from Z39.50
3. Do a Library of Congress or OCLC search for Gone Girl, select a record and import it
4. Go to the record and verify that the TCN and Bib ID are different from each other (also, verify that the tab now says "TCN" and not "Bib" and that the number displayed matches the TCN).
5. Click Mark For > Overlay Target
6. Go back to Cataloging > Import Record from Z39.50
7. Note that the screen now displays the TCN as well as the record number - eg, "Record 258 marked for overlay (TCN 18120438)"

tags: added: pullrequest
Changed in evergreen:
assignee: nobody → Terran McCanna (tmccanna)
tags: removed: pullrequest
Changed in evergreen:
assignee: Terran McCanna (tmccanna) → nobody
Revision history for this message
Terran McCanna (tmccanna) wrote :

Thanks to Dan Briem & Josh Stompro for help with this. I've pushed a second commit to the patch at:

https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/mccanna/lp1786971-z3950-bibid-tcn-4

In addition to the testing in Comment #17, here is a second thing to test:

1. Mark a record for overlay (choose one from the Comment 17 testing that has a different TCN & Bib ID)
2. Go to Cataloging > Import Record from Z39.50 (confirm that the TCN appears in parentheses after the Bib ID)
3. Open a second tab to the staff catalog and mark a different record for overlay
4. Switch back to the z39.50 tab, select a new remote record, and click Overlay
5. The overlay modal should pop up, and on top of that a confirmation dialog box should appear that alerts you that a different record has been marked for overlay. This should show the TCNs of both the previously marked & currently marked records instead of just the Bib IDs.

tags: added: pullrequest
tags: removed: pullrequest
Revision history for this message
Terran McCanna (tmccanna) wrote :

Thanks very much to Bill Erickson who reviewed and updated our code. Latest branch including Bill's changes is at:

https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/mccanna/lp1786971-z3950-bibid-tcn-4

tags: added: pullrequest
Revision history for this message
Mary Llewellyn (mllewell) wrote :

I have tested this code and consent to signing off on it with my name, Mary Llewellyn and my email address, <email address hidden>.

Changed in evergreen:
assignee: nobody → Mary Llewellyn (mllewell)
tags: added: signedof
tags: added: signedoff
removed: signedof
Changed in evergreen:
assignee: Mary Llewellyn (mllewell) → nobody
Bill Erickson (berick)
Changed in evergreen:
assignee: nobody → Bill Erickson (berick)
milestone: none → 3.7.2
Revision history for this message
Bill Erickson (berick) wrote :

Merged to 3.6 and up. Thanks, All!

Changed in evergreen:
status: Confirmed → Fix Committed
assignee: Bill Erickson (berick) → nobody
Changed in evergreen:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.