Opened 7 years ago

Closed 7 years ago

#344 closed defect (fixed)

Exception when trying to register more than one specimen tube for a case

Reported by: nicklas Owned by: nicklas
Priority: major Milestone: Reggie v2.0.2
Component: net.sf.basedb.reggie Keywords:
Cc:

Description (last modified by nicklas)

  1. Start the specimen tube registration wizard and enter a case name.
  2. In the second step set "Number of tubes" to 2 (or higher). The rest of the information can be left empty or filled in. It doesn't seem to matter.
  3. In the third step, boxes should already be filled in. Use the 'Suggest' links to automatically get row and column coordinates or enter them manually.
  4. As soon as coordinates for at least two specimen tubes have been entered (or suggested) the form is disabled and an error message is displayed:
For input string: "null"

Currently there seems to be no workaround and it is not possible to register cases with more than one specimen tube.

It seems to be working if tabbing through all input fields in the order they appear. The critical part seems to be that if each of the "Box" fields have been in focus the wizard works, but if at least one of the "Box" fields is skipped it will generate the above error as soon as a "Column" field loses focus or if the "Create" button is clicked.

Change History (3)

comment:1 Changed 7 years ago by nicklas

  • Milestone set to Reggie v2.0.2
  • Status changed from new to assigned

comment:2 Changed 7 years ago by nicklas

  • Description modified (diff)
  • Priority changed from blocker to major

comment:3 Changed 7 years ago by nicklas

  • Resolution set to fixed
  • Status changed from assigned to closed

(In [1493]) Fixes #344: Exception when trying to register more than one specimen tube for a case

The root of the problem seems to be that box information (eg. the id) is not loaded until the "Box" field in question is losing the input focus. If we never step through that field the wizard will later on (when "Column" field loses focus) try to check well information. This check fails since the box id is not loaded.

This fix consists of three parts:

  • If a recent box has been used and it has free wells, it's id is used for the boxes
  • If the 'suggest' link is used, the id is updated using data from the result of the suggestion
  • Otherwise, we simulate a 'losing focus' event on the "Box" field (eg. we call 'boxOnChange').
Note: See TracTickets for help on using tickets.