ArctosDB / arctos

Arctos is a museum collections management system
https://arctos.database.museum
61 stars 13 forks source link

Help needed in Arctos: object tracking question re: re-assigning barcodes #8244

Open happiah-madson opened 3 weeks ago

happiah-madson commented 3 weeks ago

OGL has the opportunity to relabel all our etoh-preserved specimens with new barcodes. We are doing this as we are working on object tracking these materials.

When @Jegelewicz did our object tracking migration, we asked her to use OGLE and OGLA barcodes for materials already in our collection so that we could keep track of things and use Zbarcodes for new objects. We have the following questions:

  1. Does it make sense to reassign these objects Zbarcodes? They currently have OGLA barcodes.
  2. If yes, how do we do that?

The OGLA and OGLE numbers are captured as part identifiers in part attributes, so we aren't worried about loosing data if the barcode changes. Is there something that we aren't thinking about?

@campmlc @dustymc @falco-rk @mkoo

What are relevant pages in Arctos

Provide a link to or a description of the page where you need help. I am not sure that there are relevant links, but let me know if there would be anything helpful to see.

campmlc commented 3 weeks ago

Are you OGLE and OGLA barcodes actual physical barcodes attached to specimens? Are they virtual barcodes or labels? If the latter, then it makes sense to barcode them with physical barcodes. You have to use the Barcode: Swap tool or the scary red box on Find:Container Edit at bottom of page. The new barcode you are assigning needs to be edited to be a label of some sort using Bulk Edit Container if it is already a cryovial or something.

falco-rk commented 3 weeks ago

The OGLE and OGLA barcodes are not scannable barcodes but are both virtual barcodes in Arctos and labels on the tubes. We have the opportunity to replace them with scannable barcodes and if we are already relabeling them think it makes sense to replace OGLE and OGLA barcodes with Zbarcodes so that at a mystical point in the future, all OGL samples with have the same type of barcode. But we want to make sure that is a sensible and doable plan before going insane.

campmlc commented 3 weeks ago

Please don't go insane! Yes, this is totally doable. We are doing it now for several freezers worth of legacy material, with the same complication that a label or barcode already exists (virtually) for these containers, and this barcode will be replacing the existing virtual bc/label without losing the container location/history. In fact, we could put together a documented workflow for this and troubleshoot any problems along the way.

happiah-madson commented 3 weeks ago

Thank you, @campmlc, that is wildly validating. I fully agree that we should put together a documented workflow for this! The person who is doing this work won't be in again for 2 weeks, so maybe I'll get a draft of a protocol by then, and I'll explore the Barcode: Swap tool in the meantime!

campmlc commented 3 weeks ago

Happy to do a zoom to go over more detailed considerations. We've been doing this for some time.

happiah-madson commented 3 weeks ago

Would love to do that. I'll reach out next week.

Jegelewicz commented 3 weeks ago

@campmlc there is a sort of How-To that I think still works in the DGR Conversion Files dropbox. The document title is DGR Locator Donate Barcodes to Cryovial Labels. Not all of it will apply, but some of it will.

happiah-madson commented 3 weeks ago

Brilliant, thank you @Jegelewicz !

Jegelewicz commented 3 weeks ago

Actually, here it is. DGR Locator Donate Barcodes to Cryovial Labels.docx

happiah-madson commented 4 days ago

@campmlc @Jegelewicz @dustymc

I've started working on this and thought I was very clever, but then realized that the field that I had for container_id was in fact part_id. I can't seem to figure out a way to get container_ids out of Arctos. Any advice?

Here is the spreadsheet that my student made: containerBarcodeReplacer.csv Please let me know if there are any other grievous errors.

Thanks!

dustymc commented 4 days ago

@happiah-madson do your donors have barcodes?

@campmlc and Sabrina Sibrava (no GitHub, I'll file an issue...) you account for about 99% of the usage (or all, everyone else might be wandering in lost) - can I rebuild to use donor barcode instead of container_id?

Whatever the answer, the form needs updated to include institution before it can be turned back on, there are time constraints here, I'll assume everyone needs whatever's useful for me if I don't hear back soonish....

happiah-madson commented 4 days ago

@dustymc, yes they do. They are OGLA#####. Can I use barcode instead of container_id?

happiah-madson commented 4 days ago

Wait, I just processed the rest of your message. Clearly I cannot use barcode...yet!

dustymc commented 4 days ago

Assuming @campmlc says what I think will be said: Yes, you'll need to use barcode and institution_acronym. It's probably safe to build a file with those, I should be able to get whatever we actually settle on from them.

happiah-madson commented 4 days ago

Great, we'll get to building that spreadsheet. I'm starting with just 1 box (100 scin vials), but we'll probably be doing ~4,000 here in short order. Should I run all these barcode swaps through you?

happiah-madson commented 4 days ago

Updated barcode replacer.csv

Here's an updated spreadsheet. Does this look like you were expecting?

campmlc commented 4 days ago

Hi all, sorry for the delay. A couple of issues: 1) we use this tool to add barcodes to legacy cryovials that were converted from our previous DGR Locator tool. These cryovials have labels (and container IDs) but no "barcodes" , so our container barcode plus label looks like " [ ]NK 102003 X " for example. This means we can't swap from an existing barcode to a new barcode. We use the Barcode Swap tool to add a barcode to an existing label. It is a bit of a pain to extract the container IDs, but as @dustymc says, we need some other form of confirmation that we are altering the correct container, besides the label, which has no constraints to prevent duplicates. 2) occasionally we also use the tool to swap a barcode from an existing barcode - e.g. to add a new barcode to a freezer box when the old barcode was damaged or fell off. In this case, we generally use the scary red box on the Edit Container page - which can be used for a single instance. Adding "barcode" as an option in the Barcode Swap (bulk) tool is fine with me, as long as we keep label + container ID as an option. For the record, container ID is available from multiple tools: from the Search Results: Tools: View/Download Parts tool, and also from Object Tracking: Find Container: Container Details: Container Contents download. This is what the "CID" field is for each level of the object tracking hierarchy. In this case, you would want the CID for the cryovial, at whatever level that appears for your freezer box (usually the last level before the collection object). For each container, there is "BC = barcode, LBL = label, T = container type, and CID = container ID.

happiah-madson commented 4 days ago

Search Results: Tools: View/Download Parts tool

Aha! I didn't recognize CID or the fact that it was the ID b/c it didn't start with the http://...

Given this, I can totally work with CID and the tool as it currently is, as long as I am understanding that I can use Scary Barcode Swap tool to replace the current barcode that the container has with a new Z barcode. Is that correct?

campmlc commented 4 days ago

Yes, it works for old barcode to new barcode updates. Using this means you don't lose the current container location path or history, which would happen if you just moved the container to a new barcode. We need to have both barcode and container ID as options, along with label. I would worry that I might introduce errors going from an existing barcode to a container ID lookup without being able to visually verify against the barcode to be swapped out in the upload file. Note that you will have to convert all your replacement Z barcodes back to "labels" through a separate edit container bulkload if they already have been converted to cryovials. It would be nice to have the tool automate this step to make the process simpler, e.g. convert all replacements to labels if they are not associated with any collection objects and have no part location path other than maybe institution.