Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Using custom configuration, users can set the default value for the child based on the value of the parent/primary specimen.

Note

Add the code in the dictionary after the "fields" section. This code is only works on the Add Specimen page where you are creating the child specimen and on nth step 

Example 1: Set default value for custom field 'Biobank Technician' at child specimens level based on selection of value at primary specimens level

Expand


Code Block
"onValueChange": {
          "specimen.extensionDetail.attrsMap.FC15": [
            "function(opts) {",
            "  angular.forEach(opts.viewCtx.spmnCtx.aliquots, ",
            "    function(aliquot) { ",
            "      var user = opts.fns.get(opts.object, opts.field);",
            "      opts.fns.set(aliquot, 'extensionDetail.attrsMap.FC15', user);",
            "    }",
            "  );",
            "}"
          ],

Screenshot when the user selects the 'Biobank Technician' at Parent/Primary specimen level:

Screenshot when Biobank Technician automatically copied from primary/parent specimen level to aliquot level:

Example 2: Blank out related fields when updating the value for another field

Expand

Added the value for TubeType= 'Serum Separator Vacutainer' and assigned the values below two fields.

1. "Cardiac Troponin I (ng/L)" = 'Test Data To Be Blanked' 
2. "Cardiac Troponin T (ng/L)"= 'Test Data To Be Blanked' 
Now I have to edit the specimen and change the 'TubeType' to ='EDTA Vacutainer', the values added for the above two fields get blanked using the below code.


Code Block
"onValueChange" : {
                 "specimen.collectionEvent.container" : [ 
                  "function(opts) {", 
                    " var container = opts.fns.get(opts.object, opts.field);", 
                    " if (container != 'Serum Separator Vacutainer') {", 
                    " opts.fns.set(opts.object, 'specimen.extensionDetail.attrsMap.ST28', null);", 
                  " opts.fns.set(opts.object, 'specimen.extensionDetail.attrsMap.ST29', null);", 
" }", 
"}" ]
}


...