From 5d421a4a3ad65e8ff7598d79ae34854b378611b4 Mon Sep 17 00:00:00 2001 From: Marina Gourtovaia Date: Wed, 28 Aug 2024 16:21:07 +0100 Subject: [PATCH] Explained QC outcome change for complex products --- docs/qc_outcomes_change_howto.md | 35 ++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/docs/qc_outcomes_change_howto.md b/docs/qc_outcomes_change_howto.md index b7a8b245..ed142198 100644 --- a/docs/qc_outcomes_change_howto.md +++ b/docs/qc_outcomes_change_howto.md @@ -5,6 +5,41 @@ - Wrap database changes into a transaction, which initially should have a clause to fail it so that it can be tried out (see some examples below). +All listed below procedures were originally written for products containing +one component. Procedures for changing the already existing QC outcomes should +also work for products containing multiple components as long as these +components are from the same run and are for the same tag index. Use any lane +number (position) that went into the merged product. For example, for a product +described by JSON below + +``` +{ + "__CLASS__": "npg_tracking::glossary::composition-101.3.0", + "components": [ + { + "__CLASS__": "npg_tracking::glossary::composition::component::illumina-101.3.0", + "id_run": 49404, + "position": 7, + "tag_index": 1 + }, + { + "__CLASS__": "npg_tracking::glossary::composition::component::illumina-101.3.0", + "id_run": 49404, + "position": 8, + "tag_index": 1 + } + ] +} +``` + +use the following expression for a search when toggling the QC outcome + +``` +my $rs=npg_qc::Schema->connect()->resultset("MqcLibraryOutcomeEnt") + ->search_autoqc({id_run=>49494,position=>7,tag_index=>1}); +``` + + ## Toggle the outcome of a single library QC outcome will change from `pass` to `fail` or `fail` to `pass`.