Setting the Value of a QC Flag on an Artifact

The QC flag parameter qc-flag can be set on an input or output analyte (derived sample) or on an individual result file (measurement) with a few lines of Groovy code.

In the following example, the qc-flag value of the analyte artifact is set based on the value of the bp_size variable when compared to the threshold1 and threshold2 variables.

artifact = GLSRestApiUtils.httpGET(artifactURI, username, password)
             
Node foundQCNode = artifact.'qc-flag'[0] as Node
             
if((bp_size >= threshold1) && (bp_size <= threshold2)){qcFlag = "PASSED"}
else{qcFlag = "FAILED"}         

The following code determines whether a qc-flag value is previously set, such that a flag is only set if one does not exist.

foundQCNode ? foundQCNode.setValue(qcFlag) : addChild(new Node(null, 'qc-flag', qcFlag), artifact, "qc-flag")

GLSRestApiUtils.httpPUT(artifact, artifactURI, username, password)

Last updated