Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

generalScripts.java

00001 package webscripts;
00002 // getDBfiles.java
00003 // @Author Dave Robinson
00004 //
00005 // 21052003 Introduce controlFlag - bit 1 set means create upload files but don't upload
00006 //                                  bit 2 set means don't show gui and immediately create upload files
00007 
00008 
00009 import java.io.*;
00010 import java.util.*;
00011 import java.sql.*;
00012 import ProdDatabase.*;
00013 import ProdDatabase.SCTDBInfo;
00014 
00015 public class generalScripts {
00016 
00017 
00018 
00019 public static Vector getPositionMap(int i) throws Exception {
00020 
00021        Vector list = new Vector();
00022        StringBuffer sqlStat = new StringBuffer("SELECT ser_no,posn FROM assm_items WHERE");
00023        sqlStat.append(" assm_ser_no="+DisplayGUI.SCTInfo.SCTSerialNumbers[i]);
00024        sqlStat.append(" ORDER BY ser_no");
00025 
00026 //      System.out.println(sqlStat.toString());
00027        Statement statement = SCTDBInterface.getInstance().connection.createStatement();
00028        ResultSet resultSet = statement.executeQuery(sqlStat.toString());
00029        int recordCount=0;
00030 
00031        for(boolean n = resultSet.next() ; n==true ; n=resultSet.next() ){
00032           String sn = resultSet.getString(1);
00033           String posn = resultSet.getString(2);
00034           DisplayGUI.SCTDBAssemblyInfo a = new DisplayGUI.SCTDBAssemblyInfo(posn);
00035           list.addElement(sn+"="+DisplayGUI.SCTInfo.SCTViewNames[i]+", Row "+a.getRow()+", Position "+a.getPos());
00036           }
00037        statement.close();
00038        return list;
00039        }
00040 
00041        
00042 public static void makeDataReferenceFile(String targetDir, int testIndex, boolean isWarm) throws Exception {
00043 
00044        Set s = new HashSet();
00045        StringBuffer sqlStat = new StringBuffer("SELECT tests.ser_no,tests.TEST_no,tests.locn_name,tests.test_date");
00046        for(int y=0;y<SCTDBInfo.chipDBnames.length;y++) sqlStat.append(","+SCTDBInfo.chipDBnames[y]+"RC_MN_ENC,"+SCTDBInfo.chipDBnames[y]+"RC_MN_GAIN");
00047        sqlStat.append(" FROM "+SCTDBInfo.sctdaqDBTableNames[testIndex]+",tests,sct_tstdcsinfo,SCT_TSTDAQINFO");
00048        sqlStat.append(" WHERE tests.TEST_name = '"+SCTDBInfo.sctdaqDBTestNames[testIndex]+"'");
00049        sqlStat.append(" AND tests.ser_no IN (SELECT ser_no FROM items WHERE locn_name='Oxford')");
00050        sqlStat.append(" AND tests.TEST_no = "+SCTDBInfo.sctdaqDBTableNames[testIndex]+".TEST_no");
00051        sqlStat.append(" AND SCT_TSTDAQINFO.version NOT LIKE 'SctRodDaq%' AND SCT_TSTDAQINFO.test_no=tests.TEST_no");  // SCTDAQ data only
00052        if(isWarm) sqlStat.append(" AND sct_tstdcsinfo.t0>10 AND sct_tstdcsinfo.TEST_no=tests.TEST_no");
00053        else  sqlStat.append(" AND sct_tstdcsinfo.t0<=10 AND sct_tstdcsinfo.TEST_no=tests.TEST_no");
00054        sqlStat.append(" ORDER BY tests.ser_no,tests.TEST_date DESC,tests.TEST_no DESC");
00055        
00056        BufferedWriter out = null;
00057        File oFile = new File(targetDir,SCTDBInfo.sctdaqDBTestNames[testIndex]+"_Reference.txt");
00058 
00059        Statement statement = SCTDBInterface.getInstance().connection.createStatement();
00060        System.out.println(sqlStat.toString());
00061        ResultSet resultSet = statement.executeQuery(sqlStat.toString());
00062        for(boolean n = resultSet.next() ; n==true ; n=resultSet.next() ){
00063             int rc=1;
00064             
00065             String sn = resultSet.getString(rc++);
00066             if(s.contains(sn)) continue;
00067             s.add(sn);
00068 
00069             StringBuffer theLine = new StringBuffer("SN="+sn);
00070             theLine.append("TESTNO="+resultSet.getString(rc++));
00071             System.out.println("sn="+sn+", location="+resultSet.getString(rc++)+" date="+guiUtilities.DaveUtils.extractDate(resultSet.getString(rc++)));
00072             theLine.append("DATA=");
00073             for(int j=0;j<12;j++) {
00074               if(j>0) theLine.append(";");
00075               theLine.append(resultSet.getString(rc++));
00076               theLine.append("*");
00077               theLine.append(resultSet.getString(rc++));
00078               }
00079             if(out==null) out = new BufferedWriter(new FileWriter(oFile));
00080             out.write(theLine.toString());
00081             out.newLine();
00082             }
00083          if(out!=null) out.close();
00084          statement.close();
00085          }
00086 
00087 
00088 
00089 }

Generated on Fri Jan 14 12:49:52 2005 for SCT DAQ/DCS Software - Java by doxygen 1.3.5