0% found this document useful (0 votes)
51 views2 pages

HashMap Used Action Codes - 2

This document contains code for processing sample data. It declares variables to store sample IDs, parameters, and results. It splits the sample IDs, removes duplicates, and concatenates them into a unique ID. It queries an existing dataset to get the maximum dataset value for each sample. It then loops through this data, filters the sample data, and updates the dataset value where a match is found. Finally, it builds a property list from the sample data and calls an action to enter the data items.

Uploaded by

rajkumarmodi9832
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
51 views2 pages

HashMap Used Action Codes - 2

This document contains code for processing sample data. It declares variables to store sample IDs, parameters, and results. It splits the sample IDs, removes duplicates, and concatenates them into a unique ID. It queries an existing dataset to get the maximum dataset value for each sample. It then loops through this data, filters the sample data, and updates the dataset value where a match is found. Finally, it builds a property list from the sample data and calls an action to enter the data items.

Uploaded by

rajkumarmodi9832
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

import java.util.

ArrayList;
import sapphire.util.DataSet;
import sapphire.xml.PropertyList;
import java.util.*;

logger.info("inside Qubit action block");


String sampleid = fields.sampleid.toString();
String params = fields.params.toString();
String results = fields.results.toString();
String paramtype = fields.paramtype.toString();
String paramlistid = fields.paramlistid.toString();
String paramlistversionid = fields.paramlistversionid.toString();
String paramlistvariantid = fields.paramlistvariant.toString();
String sourceworkitemid = fields.sourceworkitemid.toString();
String uniqueSampleID = "";
logger.info("inside Qubit action block 2 after variable declaration..");
logger.info("sampleid ==="+sampleid);
logger.info("results == "+results)

String [] arrSampleId = sampleid.split(";");


Set<String> set = new HashSet<String>();
for(String s: arrSampleId){
set.add(s);
}
Iterator it = set.iterator();
while(it.hasNext()) {
uniqueSampleID+=it.next()+";";
}
if(uniqueSampleID.endsWith(";")){
uniqueSampleID = uniqueSampleID.substring(0,uniqueSampleID.length() - 1);
}
logger.info(">>>>>> uniqueSampleID: "+uniqueSampleID);
DataSet dsTemp = new DataSet();
dsTemp.addColumnValues("sampleid",DataSet.STRING,sampleid,";");
dsTemp.addColumnValues("params",DataSet.STRING,params,";");
dsTemp.addColumnValues("enteredtext",DataSet.STRING,results,";");
dsTemp.addColumn("dataset",DataSet.STRING);
dsTemp.addColumn("paramtype",DataSet.STRING);
dsTemp.addColumn("replicate",DataSet.STRING);
dsTemp.setValue(-1,"paramtype",paramtype);
dsTemp.setValue(-1,"replicate","1");

def sqlMaxDataset = "SELECT keyid1, dataset from sdidata WHERE sdcid='Sample' and
keyid1 in ('"+StringUtil.replaceAll(uniqueSampleID, ";", "','") + "') and
sourceworkitemid = '"+sourceworkitemid+"' and paramlistid ='" +paramlistid+"' and
paramlistversionid = '"+paramlistversionid+"' and variantid =
'"+paramlistvariantid+"' and dataset = (select max(dataset) from sdidataitem sdi
where sdi.sdcid = sdidata.sdcid and sdi.keyid1 = sdidata.keyid1 and sdi.paramlistid
= sdidata.paramlistid and sdi.paramlistversionid = sdidata.paramlistversionid and
sdi.variantid = sdidata.variantid)";

DataSet dsMaxDataset = getSQLDataSet( sqlMaxDataset );


logger.info("dsMaxDataset "+dsMaxDataset);
for(int i=0; i<dsMaxDataset.getRowCount(); i++){
HashMap<String, String> hmFilter = new HashMap<String, String>();
hmFilter.put("sampleid", dsMaxDataset.getValue(i, "keyid1"));
DataSet dsFilterTemp = dsTemp.getFilteredDataSet( hmFilter );
if(dsFilterTemp!=null && dsFilterTemp.getRowCount() > 0 ){
dsFilterTemp.setValue(-1, "dataset", dsMaxDataset.getValue(i, "dataset"));
}
}

logger.info(">>>> EnterDataItem dataset: "+dsTemp);

def plEnterDataItem = [
sdcid: "Sample",
keyid1: dsTemp.getColumnValues("sampleid",";"),
paramlistid: paramlistid,
paramlistversionid: paramlistversionid,
variantid: paramlistvariantid,
dataset: dsTemp.getColumnValues("dataset",";"),
paramid: dsTemp.getColumnValues("params",";"),
paramtype: dsTemp.getColumnValues("paramtype",";"),
replicateid: dsTemp.getColumnValues("replicate",";"),
enteredtext: dsTemp.getColumnValues("enteredtext",";"),
propsmatch: "Y"
]

logger.info(">>> plEnterDataItem: "+plEnterDataItem);


logger.info(">>> Calling EnterDataItem Action >>>>>> ");

processAction( "EnterDataItem", plEnterDataItem );

You might also like