Opened 7 years ago

Closed 7 years ago

#913 closed task (fixed)

Implement a set of wizards for handling outtakes

Reported by: Nicklas Nordborg Owned by: Nicklas Nordborg
Priority: critical Milestone: Reggie v4.8
Component: net.sf.basedb.reggie Keywords:
Cc:

Description (last modified by Nicklas Nordborg)

Subsets of DNA and/or RNA may be handed out to external researcher and we need a way to handle this with the help of Reggie wizards. An overview of the procedure:

  1. Define the outtake. An item list with RNA or DNA is used as the starting point.
  • A name for the outtake must be specified.
  • A target amount and target volume is specified.
  • A comment field with optional information about the outtake.

The wizard should create child aliquots (suffix .a, .a2, etc) for all items in the list and put them in a new "outtake list". The target amount and target volume is stored as annotations on the list. This allows us to calculate dilution information later on. The wizard should also create new boxes and place the aliquots in a predefined order. Typically the same order as the parent items are located in the freezer. Box names should automatically generated using a common prefix (ScanB-Outtake) and number (3 digits). The comment should be copied to the aliquots, boxes and new list. This wizard require the PrepCurator permission.

2a. Generate lab protocols. The "outtake" list is used to generate a pick list and dilution protocol. This wizard require the SamplePrep permission. The protocol must include:

  • Sample name
  • Freezer location/box/coordinate (sorted in box order)
  • Volume to take
  • Volume H20
  • New label name (replace SCAN-B ID with external ID from specimen tube)
  • New box position (auto-generated in order)
  • Comment column

2b. Generate label file for the label printer

  1. Registration that the outtake has been completed. The default action is that everything was successful. It should be possible to select a full or partial failure. In case of a failure it should be possible to specify (per sample) if the material was actually used or not. This wizard require the SamplePrep permission.

3b. New concentration measurements? This would probably be useful but no decision was made about this.

  1. Generate tab-separated delivery file. This file should contain information about the shipped samples. We need to include at least the label and box positions. Estimated concentration and quantity is probably also useful. Maybe some more columns? This wizard require the PrepCurator permission.

Change History (19)

comment:1 by Nicklas Nordborg, 7 years ago

Milestone: Reggie v4.xReggie v4.8
Summary: Implements a set of wizards for handling outtakesImplement a set of wizards for handling outtakes

comment:2 by Nicklas Nordborg, 7 years ago

Status: newassigned

comment:3 by Nicklas Nordborg, 7 years ago

(In [4137]) References #913: Implement a set of wizards for handling outtakes

Added a section with four wizards to the index page. The first and last wizard require PrepCurator permission and the other two SamplePrep permission.

comment:4 by Nicklas Nordborg, 7 years ago

(In [4138]) References #913: Implement a set of wizards for handling outtakes

Implemented counters for the outtake wizards. The counters will count the number of lists. Two new annotation types have been defined to keep track of the outtake process:

  • OuttakeCompleted: The date the lab part of the outtake has been completed. Set on the aliquot list by the "Register sample outtake" wizard.
  • OuttakeDelivered: The data the outtake was delivered. Set on the aliquot list by the "Export delivery data file" wizard

comment:5 by Nicklas Nordborg, 7 years ago

(In [4146]) References #913: Implement a set of wizards for handling outtakes

Started with the "Define sample outtake" wizard. It is possible to select a source list (which should contain either RNA or DNA). Input fields for name, target amount, target volume and a comment have been added. Actual functionality for creating the outtake is not yet implemented.

comment:6 by Nicklas Nordborg, 7 years ago

(In [4153]) References #913: Implement a set of wizards for handling outtakes

Implemented validation and checking of the items in the souce list. It will check:

  • The subtypes of the items in the list
  • The remaining quantity and NDConc of the items in the list

Warning messages are displayed in case some items are not of the same type or information is missing.

Remaining quantity and NDConc values are also checked against the specified target amount and volume for the outtake. Warning messages are displayed if not all items in the list can fulfill the target.

comment:7 by Nicklas Nordborg, 7 years ago

(In [4154]) References #913: Implement a set of wizards for handling outtakes

Started to implement the registration of an outtake definition.

  • A new "outtake aliquot" item list is created. The specified target amount and volume is stored as annotations on the list.
  • Child aliquots are created for each item in the source list.
  • Child aliquots are automatically named with the parent name + '.a' or '.aN' (N is a number)
  • Child aliquots are automatically placed in new storage boxes (ScanB-OuttakeNNN) in the same order as the appear in the current storage boxes.

There are no calculations for the dilution made here since I don't know if this is a good place to do it or if this should wait until the lab protocol is generated.

comment:8 by Nicklas Nordborg, 7 years ago

(In [4156]) References #913: Implement a set of wizards for handling outtakes

Ask for confirmation before leaving the "Define outtake" wizard if the information has been changed.

comment:9 by Nicklas Nordborg, 7 years ago

(In [4157]) References #913: Implement a set of wizards for handling outtakes

Started to implement the "Protocols and labels for sample outtakes" wizard. The wizard will display defined but not completed outtake lists. The "Download labels" feature has been implemented assuming that labels will be printed in the same way as labels for specimen/RNA/DNA, etc.

comment:10 by Nicklas Nordborg, 7 years ago

(In [4164]) References #913: Implement a set of wizards for handling outtakes

Implemented pick list protocol with dilution information. The dilution calculations will prioritize to match the specified target amount before the target concentration before the target volume. If the dilution can't match the target specification a comment will be printed explaining the reason.

comment:11 by Nicklas Nordborg, 7 years ago

(In [4165]) References #913: Implement a set of wizards for handling outtakes

Started with the "Register sample outtake" wizard. At the moment, only the "Success" option is implemented. Moved the dilution calculation from javascript to the servlet so that we are sure to get the result in both the protocol and registration wizard.

comment:12 by Nicklas Nordborg, 7 years ago

Description: modified (diff)

Update ticket description to match the implementation.

comment:13 by Nicklas Nordborg, 7 years ago

(In [4166]) References #913: Implement a set of wizards for handling outtakes

Added option to use external ID from the parent specimen item instead of the SCAN-B id in the lab protocol and label file.

comment:14 by Nicklas Nordborg, 7 years ago

(In [4167]) References #913: Implement a set of wizards for handling outtakes

The form in this wizard is never POSTed and should not include any "action" or other related attributes.

comment:15 by Nicklas Nordborg, 7 years ago

(In [4168]) References #913: Implement a set of wizards for handling outtakes

  • Cleaning up code
  • Store External ID on the aliquots to make sure that the same ID is used in both the protocols, labels and devlivery data file
  • Cleaned up the pick list protocol by avoiding to repeat storage box/location names that are repeated on two or more rows. May need further fine-tuning.

comment:16 by Nicklas Nordborg, 7 years ago

(In [4172]) References #913: Implement a set of wizards for handling outtakes

More optimzations to the lab protocol.

comment:17 by Nicklas Nordborg, 7 years ago

(In [4173]) References #913: Implement a set of wizards for handling outtakes

Implemented export function for creating a tab-separated file with information for the sample outtakes. The exported columns are (column headers):

  • Name: Name or external id
  • Box: Storage box name
  • Position: Storage box coordinate
  • Quantity (µg): Remaining quantity
  • Concentration (ng/µl): Calculated concentration based on dilution formula

comment:18 by Nicklas Nordborg, 7 years ago

(In [4179]) References #913: Implement a set of wizards for handling outtakes

Registering a failed outtake should now work. When this option is selected a second step is required where it is possible to specify if all/some/none samples were consumed or not.

comment:19 by Nicklas Nordborg, 7 years ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.